Hello.
I'm currently looking for a C++ library for 2D games. I currently use Cocos2D on the iPhone, so something similar to that would be great. I've been reccomended SMFL and SDL by various sources. How advanced are these, and how easy are they to use?
Are there any others you can reccomend?
Thanks!
SFML = Simple fast multimedia library and it really is what it says it is SIMPLE.
I really recommend it if you want to do 2d graphics ;)
You can try SDL or SFML (both better for different things)
Or if you wanna go on the wild side you can use OpenGL
If you want complete freedom I suggest OpenGL. I have used it for a bit and it really is very good and you can pretty much do anything.
Also there are a load of sites dedicated to OpenGL as well.
I highly suggest SFML after years of game development. I moved from SDL after it became old and not updated anymore.
[QUOTE=AtomiC0l;26709556]I highly suggest SFML after years of game development. I moved from SDL after it became old and not updated anymore.[/QUOTE]
SDL is updated fairly regularly?
Id vote SDL, because i dislike the OOPness of SFML frankly.
You can do just about anything with SFML, and is a lot more modern and intuitive than SDL while still giving the user a great amount of control as well as providing an extremely easy-to-make OpenGL context to work with. SDL does have a very large community around it, but if I'm not mistaken a lot of the features you'd get from SFML you have to download as separate libraries.
In other words, SFML++; SDL--;
But what does the postincrement/decrement mean
I tried both SDL and SFML, but I prefer SFML.
[QUOTE=NorthernGate;26713015]You can do just about anything with SFML, and is a lot more modern and intuitive than [b]SFML[/b].[/QUOTE]
Well that's a relief.
[QUOTE=Icedshot;26710016]SDL is updated fairly regularly?
Id vote SDL, because i dislike the OOPness of SFML frankly.[/QUOTE]
ahahahahahaha
[QUOTE=efeX;26714149]ahahahahahaha[/QUOTE]
I came from C, so free functions make more sense for me. Feel free to disagree, but not entirely sure why im dumb'd for having a different opinion than other people
Oh and i dislike having to use a set of objects supplied by whoever made them, constrained by whatever limits they put in or could be bothered to put in. Im not against OOP just much prefer having the freedom to do it all myself
Allegro, if you're up for a challenge.
[QUOTE=Icedshot;26714305]I came from C, so free functions make more sense for me. Feel free to disagree, but not entirely sure why im dumb'd for having a different opinion than other people
Oh and i dislike having to use a set of objects supplied by whoever made them, constrained by whatever limits they put in or could be bothered to put in. Im not against OOP just much prefer having the freedom to do it all myself[/QUOTE]
I don't know why you're questioning dumbs when you start complaining about OOP in a C++ thread.
[QUOTE=Jallen;26714544]I don't know why you're questioning dumbs when you start complaining about OOP in a C++ thread.[/QUOTE]
Im not complaining about OOP in general
Im saying that in certain specific uses, such as when someone provides you with a library, I personally find it more useful when its in the form of free functions instead of being object orientated. Which is why i personally prefer SDL over SFML. At what point am i saying "OOP sucks, lets do something else"?
I've used Allegro, SDL, and SFML.
I currently stick with SFML because it's simple yet powerful (to me at least, never had a situation where SFML couldn't fufill the task)
Their site and tutorials are made easy to learn, and very helpful.
SFML Site: [url]http://www.sfml-dev.org/[/url]
SFML Tutorials: [url]http://www.sfml-dev.org/tutorials/1.6/[/url]
They even have tutorials on getting started and linking the libraries. ;D
[QUOTE=Icedshot;26714752]Im not complaining about OOP in general
Im saying that in certain specific uses, such as when someone provides you with a library, I personally find it more useful when its in the form of free functions instead of being object orientated. Which is why i personally prefer SDL over SFML. At what point am i saying "OOP sucks, lets do something else"?[/QUOTE]
OOP libraries are the way forward. Sticking with C APIs for a language which is capable of so much more is a very silly thing to do.
It only makes sense to have OOP libraries for an OOP language. People holding on to C style libraries will be left behind. Why should libraries stand still for people who are stuck in their ways of using a programming language from 1972? I personally love SFML's interface. It's intuitive and I actually dislike C APIs. I don't want to have to passing pointers and multidimensional array shit all over the place, passing by reference to functions which could easily be held with the data itself, leading to a much more modular and easy to use interface.
Of course there are things which should be kept as simple C style APIs for C programmers, specifically lower level stuff, high level libraries for games and multimedia applications don't really fall into that category.
[QUOTE=Nextil;26713797]Well that's a relief.[/QUOTE]
Woops, fixed.
[QUOTE=Icedshot;26714305]I came from C, so free functions make more sense for me. Feel free to disagree, but not entirely sure why im dumb'd for having a different opinion than other people
Oh and i dislike having to use a set of objects supplied by whoever made them, constrained by whatever limits they put in or could be bothered to put in. Im not against OOP just much prefer having the freedom to do it all myself[/QUOTE]
you do know there's CSFML right?
it's okay to admit if OOP is too complicated for you, just call OOP shit!
[QUOTE=efeX;26717500]you do know there's CSFML right?
it's okay to admit if OOP is too complicated for you, just call OOP shit![/QUOTE]
OOP caused me to make 48 file pong... :/
[QUOTE=xAustechx;26717692]OOP caused me to make 48 file pong... :/[/QUOTE]
You caused you to make 48 file pong.
[QUOTE=xAustechx;26717692]OOP caused me to make 48 file pong... :/[/QUOTE]
I honestly can't see how you managed that without realising you were doing something wrong half-way.
[QUOTE=BlkDucky;26717974]I honestly can't see how you managed that without realising you were doing something wrong half-way.[/QUOTE]
It seemed like a good idea at the time.
[QUOTE=xAustechx;26718056]It seemed like a good idea at the time.[/QUOTE]
Ahhh, we've all been there
[QUOTE=Icedshot;26710016]SDL is updated fairly regularly?
Id vote SDL, because i dislike the OOPness of SFML frankly.[/QUOTE]
Hmm, everyone prefers SFML, and I prefer OOP so it's not a problem.
I do intend to eventually go to OpenGL (<3), but I don't need it for what I'm doing now, and it's far more complex than anything I've used.
Thanks, guys!
I use SDL and am perfectly happy with it. I tried SFML and didn't like it.
That's my [b]opinion.[/b]
However I think you should use SFML, as it seems to be a superior library. The only reason I use SDL is because I'm OCD about standards.
Use ORX. It's a fully functional 2d game engine with plugins from SFML and Box2D and the like. It has physics libraries, display libraries, hit detection etc.
[url]http://orx-project.org/[/url]
[QUOTE=xAustechx;26717692]OOP caused me to make 48 file pong... :/[/QUOTE]
You can have more than one class per file you know :v:
SFML is easily the best as it uses modern drawing techniques so you can have fast transformation/alpha/etc. SDL is good for some types of games and also for context creation (which is what I'm using it for).
Once again, SDL, SFML or OpenGL.
SDL if you want raw speed with raw C APIs.
SFML if you want a nice object-oriented graphics and multimedia library.
OpenGL if you like to live dangerously or have too much time on your hands and NEED speed.
[QUOTE=q3k;26727790]Once again, SDL, SFML or OpenGL.
SDL if you want raw speed with raw C APIs.
SFML if you want a nice object-oriented graphics and multimedia library.
OpenGL if you like to live dangerously or have too much time on your hands and NEED speed.[/QUOTE]
OpenGL really isn't hard to use once you've got your images loaded and so forth. I'd advise using SDL or SFML to get the OpenGL context in the first place. You can also piggyback their image loading functions to make your life a lot easier.
Sorry, you need to Log In to post a reply to this thread.