Welcome, Guest. Please login or register. Did you miss your activation email?

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - zsbzsb

Pages: [1]
SFML game jam / 4th SFML Game Jam Announced
« on: April 22, 2015, 02:07:55 pm »
[May 15th] The theme has been chosen - 'From the end to the beginning'
[May 12th] Theme voting is now open!
[May 5th] Theme suggestions are now open.

The 4th Jam is now scheduled for May 15th, 2015. So everybody write this date on your calenders and buy lots of coffee. As before it will be a 72 hour jam and everybody is invited to participate and make a cool game with SFML. Also, as before the jam will start as 15:00 UTC with the theme announced at 14:00 UTC. Theme suggestions and voting will open in the week previous (there will be another announcement to let you guys know about that).

SFML game jam / 4th SFML Game Jam
« on: September 29, 2014, 03:24:46 am »
Greetings SFMLers,

As some of you may have noticed the 4th jam hasn't happened yet - even though it was supposed to have happened about a month ago. But do not worry, for this is not dead.  :D  Jebbs just got a little busy (and so did I) so the jam never happened. Jebbs has asked me to help him by taking over the lead on this so I want would like to start by stating where we are and what is planned.

Our current state is that we are in the process of moving to a new web host for the website. As soon as the transfer is complete I will be putting up the brand-new redesigned site that will feel better, and function better than the previous site. When that is complete I plan on setting up a test environment and simulating a few parts of the jam so you guys can ensure the site works smoothly when it comes time for the real jam. More will come on the website status in later posts.

I am planning on scheduling the4th jam for after the next ludum dare so that should put us about 3 months out around the begining of February 2015 (yes, 2015 :o). Of course the jam will run for 72 hours as before over a weekend (we can discuss later possibly having a 1 week long jam). I really want you guys to participate this time (unlike last time :P) so if you have any preference to which weekend that you can participate please post here.

Get ready for more posts coming soon about some more changes that are planned, for now I want to hear what dates work best for you.


P.S. Check us out and follow us on Twitter.

What is it?

Motion and MotionNET is a rewrite of my earlier project VideoStreamer. In essence, it is nice wrapper around FFMPEG that allows you to playback any video or just audio files with FFMPEG as the decoder. As FFMPEG supports a huge variety of formats, these can all be used - just please be aware that all these codecs are not free.

This has been complete for a while now, its just now that I feel like releasing it more into the wild. For a while now I have also had some other guys using it (and stress testing it) and there doesn't appear to be any issues that prevent anyone else from using it.

Motion is a C++ object oriented library and can easily be used with native SFML. Motion also includes a C interface built in that can allow it to be used in SFML bindings. MotionNET is a binding of Motion that supports the SFML.NET binding making it easy to use in managed languages also. Please note that MotionNET is entirely optionally making Motion a great option for use in cross platform C++ applications.

Who uses it?

I use it in one of my personal projects.
[more to come soon once I get links]


Motion / MotionNET are both licensed with the ZLIP/PNG, the license same as SFML. That way you can do whatever you want with it (just don't claim you wrote it). Feel free to write patches and make pull requests, I will gladly accept anyone that feels like contributing.


  • Greatly improved performance compared to VideoStreamer
  • Fully featured video or audio playback
  • Full playback control with play/pause/stop
  • Supports any codec/format FFMPEG supports
  • Supports seeking to any position during video/audio playback
  • Synchronizes video and audio playback to elapsed time (audio will keep in sync with video)
  • Audio resampling in case the input format is not signed 16 bit integers
  • Cross platform - successfully tested on Windows/Linux (requires C++11 compiler)
  • Playback video and audio independent of the other, or playback both at the same time

How do I use it?

Here is a snippet from the included example program.

(click to show/hide)


There is no documentation currently available, that said however - Motion is fairly straight forward and I plan on finishing the documentation of the public API very shortly. If you have any questions on usage feel free to contact me.

Where do I get it?

There is a a few precompiled binaries available from here and here. If a version matching your compiler isn't available feel free to compile it yourself. Just remember SFML 2.2+ and FFMPEG are required.

Source code is available on Bitbucket and Github if you wish to compile it yourself.


I welcome any and all feedback, whether it be a bug report or criticism - feel free to post in this thread or contact me directly.

C / CMake Issue - Unable to link statically
« on: April 29, 2014, 12:52:18 am »
Alright, so in my attempt to compile CSFML with SFML linked dynamically/shared I noticed an issue. The CSFML configuration on windows for some reason will not accept a shared build of SFML. However manually pointing each *.lib file to the shared version worked fine. I even took a look through the CMakeLists.txt file, but me not really knowing CMake I didn't see anything wrong. For the record I defined SFML_STATIC_LIBRARIES and it had no affect.

To be clear, the CSFML CMakeLists.txt will not accept a shared build of SFML, even with SFML_STATIC_LIBRARIES set to false.

DotNet / SFML.NET Proposed Changes
« on: April 22, 2014, 03:21:17 am »
I talked to Laurent about updating SFML.NET and making some changes. He suggested I post a list of proposed changes so we can discuss them before I start making pull requests. If anyone has any suggestions or ideas please post them here.

Project Files
  • Add project files that match VS 2010, VS 2012, and VS 2013 - instead look at a possible meta-build system

  • Explicit vector casting (PR #28) - fixed
  • Define Equals() overrides for vectors - fixed

  • Color == and != comparision (PR #29) - fixed
  • Window.IsOpen() should be a property (Issue #23) - fixed
  • Shape.GetPointCount() and Shape.SetPointCount() should be a property [including classes derived from Shape] - needs to be discussed
  • Add indexed property for Shape points - and then possibly remove Shape.GetPoint() and Shape.SetPoint() [including classes derived from Shape] - decided against
  • Add indexed property for Image pixels - and possibly remove Image.GetPixel() and Image.SetPixel() - decided against
  • RenderTarget.GetView() and RenderTarget.SetView() should be a property [including derived classes] - should be discussed
  • RenderWindow.InternalSetMousePosition() and RenderWindow.InternalGetMousePosition() should be removed - fixed
  • VertexArray.GetBounds() should be a property - fixed
  • Transform.ToString() produces wrong results (Issue #34) - fixed
  • Investigate Issue #5
  • Investigate Issue #25
  • Investigate PR #23 - fixed
  • CSFML and SFML.NET updates to match C++ version of SFML - see the end of this post for full list
  • OpenTK Support

  • Add Time and Clock classes - yes the .NET/Mono framework provides System.Diagnostics.Stopwatch but it can not provide high resolution without conversion from the Ticks property and this can be cumbersome to use - done
  • Move Vector2 struct to SFML.System (from SFML.Window) - done
  • Move Vector3 struct to SFML.System (from SFML.Audio) - done
  • Move ObjectBase to this module - done
  • Add support for redirecting error output

SFML game jam / Website Status
« on: January 30, 2014, 06:38:50 pm »
To avoid keep replying in the other thread I have decided to make my own thread for announcing website/jam status changes.  I will edit this post with updated information so watch this thread  :D

  • The jam is now complete!
  • You can view all the games for this jam here
  • If you happen to loose (AKA forget) your password send me a PM here or on IRC and I will reset your password
  • A countdown timer has been added to the site  Due to issues this has been removed until I can find a suitable replacement

SFML projects / Roung [Version 0.1]
« on: November 01, 2013, 08:53:20 pm »
Introducing..... [drum roll].... Roung!

Well OK, it is not that big of a deal. Roung is your standard Pong game, except the paddles move in a circular direction instead of straight up and down. I started this just yesterday when it came to me how simple it would be to implement collision for this type of movement. As you can see in this thread Jycerian wanted to implement a circular Pong game, but was having issues with collision.

The way my collision works is simple, To determine if the ball has collided I follow these steps
  • Determine if ball is lined up with a paddle - Ball angle from the center field +- the angle of the paddle
  • Check if the ball is close enough to collide with the paddle - Distance from center field to ball
  • If it is, bounce the ball

Since I wrote it more as an example than anything, you can get the full source code from here.

Roung was written using SFML.NET (for graphics/window/input) and NetEXT (for input handling/vectors/time/math). The controls are the 'Left' and 'Right' arrow keys for player 1, 'A' and 'D' keys for player 2. If you want to toggle AI on and off use the 'Asterisk' and 'Num+' / 'Num-' for changing the AI difficulty.

You can get some precompiled binaries from here if you just want to try it out.

If you have any questions or comments please let me know.  :)

SFML projects / NetEXT - SFML.NET Extension Library based on Thor
« on: August 30, 2013, 08:46:03 pm »
What is it?

NetEXT is a SFML.NET extension library that is designed to provide extension modules to SFML for CLI/CLR languages. It currently covers areas in graphics, particles and more (see the feature list below), but more is planned. The API is very close if not exactly the same as Thor so most examples can be ported directly from Thor to NetEXT.

Special Thanks

I want to thank Nexus for his Thor Library. NetEXT is a native C# port of Thor. And of course thanks to Laurent for SFML.


NetEXT is licensed with the ZLIP/PNG, the license same as SFML and Thor. Go to town on it and write patches and other features and then make pull requests.

Current Features
  • Large Texture/Sprite/RenderTexture classes
  • Particle System complete with the ability to build custom Emitters/Affectors
  • Animation Module that supports custom Animation classes
  • Vector Math Module
  • Time module providing different wrappers around the Clock class such as a Stopwatch
  • Complete Input Module with customizable actions and callbacks
  • Resource Manager Module
  • Networking module [WIP] [BETA]

Planned Features
  • Shape Module
  • More math functions

Where do I get it?

You can get the full source code over on Bitbucket. There is also a precompiled version available here and here.


Documentation has now been written for NetEXT, at the moment there is no online version of it [coming soon], but for now just drop NetEXT into your object browser to read the documentation.

SFML projects / VideoStreamer - .NET Video Player
« on: July 20, 2013, 06:05:25 am »
What is it?

VideoStreamer is a simple video player I wrote in C++ with a C binding to .NET to provide a way for me to render video in C# with SFML 2.x. Internally it uses FFMPEG for reading/decoding the video clips.

Where is it used?

I use VideoStreamer in my own project that I hope to be releasing soontm. (I use videos as backgrounds)  :)

Special Thanks

I also want to give thanks for inspiration from Ceylo's sfeMovie Project that helped me write VideoStreamer. And of course big thanks to Laurent for SFML.


VideoStreamer is licensed with the ZLIP/PNG, the license same as SFML. That way you can do whatever you want with it. Feel free to write patches and make pull requests on bitbucket. If you look at the code you will see that it is a bit ugly and that I am not a C++ developer. Personally I am happy with the performance, but if anyone wants to post improvements I am wide open to suggestions.


  • Complete video/audio playback
  • Basic control with play/pause/stop
  • Supports any codec/format FFMPEG supports
  • Seek anywhere during video/audio playback
  • Supports video/audio syncing to elapsed time
  • Supports audio resampling in case the input format is not signed 16 bit integers
  • Should be cross platform with the current design (see "Modules" below)


  • VideoStreamer (static compile) - Written in C++ and wraps the FFMPEG functionality
  • CVideoStreamer (dynamic/shared compile) - Written in C++ with a C interface to expose ViceoStreamer to .NET
  • VideoStreamerNET - Written in C#/.NET that controls the decoding and playback of video/audio frames

Where do I get it?

Get if from here and remember you will have to provide the paths to FFMPEG libs in order to compile it. There is also a sample project that shows how to use VideoStreamer and this following example is a snippet of the sample project.

How do I use VideoStreamer?

Here is a snippet from the sample program (see "Screenshots" below) on how to use VideoStreamer in your .NET application.

            RenderWindow window = new RenderWindow(new VideoMode(640, 480), "VideoStreamer Example");
            //Create our video stream
            stream = new VideoStreamerNET.VideoStream(@"VIDEO FILE PATH");
            //Create a clock to track elapsed time
            Clock frameclock = new Clock();
            //Create a specialized sprite renderer to draw our video frame
            VideoStreamerNET.VideoDrawer framesprite = new VideoStreamerNET.VideoDrawer(stream);
            //Start playing
            //Keep looping while our window is open
            while (window.IsOpen())
                //Handle current events
                //Clear current window
                //Get our current frame time and restart the frame clock
                Time frametime = frameclock.Restart();
                //Update the current frame inside our video streamer
                //Draw the current video frame
                //Now display everything on the screen


Here is the sample application playing back a test video.

Also here is the breakdown of what is called when and where and as you can see SFML uses most of the processing time for drawing. Meaning vertical sync is working hard to slow down the application.  :)
Toshiba Satellite - Intel i7 2.40ghz 8gb Intel HD Graphics 4000

General discussions / Forum Search Broken
« on: April 22, 2012, 02:36:03 am »
I am trying to use the forum search and it keeps returning a database error. Could you look into this Laurent?

DotNet / RenderTexture.Draw(Text) not Working
« on: April 06, 2012, 04:02:18 pm »
So i downloaded the latest version and for once decided to take a look at the examples. Anyways I decided to try to render text onto a rendertexture. Anyways the code kept throwing the exception "Unable to read memory, this is often a sign other memory is corrupt...." on the line to draw text on the rendertexture.
RenderTexture targ = new RenderTexture(1000, 1000);
targ.Draw(myText); //Here is the error
So am I doing something wrong, or is this a bug?

DotNet / Small Bug with new Text(Text copy)
« on: February 27, 2012, 10:31:05 pm »
When creating a new Text object the new object does not have the position of the object that it was copied from. Here is a small and complete example that reproduces the problem.
Code: [Select]
using SFML.Graphics;
using SFML.Window;
namespace WindowsFormsApplication1
    public partial class Form1 : Form
        public Form1()
        RenderWindow _window;
        Text _text1;
        Text _text1COPY;
        private void Form1_Load(object sender, EventArgs e)
            _window = new RenderWindow(this.Handle);
            _text1 = new Text("Testing Text Copy", SFML.Graphics.Font.DefaultFont, 24);
            _text1.Position = new Vector2f(100,100);
            _text1COPY = new Text(_text1);
        protected override void OnPaint(PaintEventArgs e)

Basically when ran all you should see is one line of text being rendered. Instead you see 2 lines. The one line is at the set coordinates(100, 100) while the second line is at 0,0 because the original coordinates did not copy over.

Edit: Here is a screenshot of what the code renders.

DotNet / Quick Question - Text.GetRect
« on: February 27, 2012, 02:09:55 am »
Just started updating my code to the newly released .Net bindings and I ran into a small issue. Before in my code I would use Text.GetRect() to center the text. Now I am looking around and I don't see anything to replace it. So my question is, is there anyway to get the Rect of a Text? Maybe possibly using the Text.Origin?

Graphics / A few Questions regarding Text
« on: January 17, 2012, 12:20:39 am »
So far my project is coming along well. I am currently using .NET SFML 2. I only have a few questions around drawing text. My first question is that sometimes when drawing text at a low font size around 10-20 the text appears blurry. I was reading in some other threads to disable smoothing but I was unable to find that (so maybe an example?). The second question regards drawing text with an outline. I was also reading another (old) thread where the solution was to use a bitmap font or some form of shaders. I really do not want to use bitmap fonts because I load a font that is specified by the user. So that leaves me with only shaders. If using shaders is possible then could someone post an example on using them? (I'm new to the graphics stuff 8) )  Thanks in advance for replies.

Window / Duel Monitors
« on: January 12, 2012, 03:23:14 pm »
Ok so I just found SFML and I really love the simplicity of your library. So I am developing an app using .NET and SFML that will be ran on a computer with duel monitors. My questions are...
1. Is there any way to get a list of monitors and then open SFML window on the specified monitor?
2. This isn't as important as #1, but is there a way to draw on a user control in a form instead of just to the render window?

Thank you for answering these questions.

Pages: [1]