1
General discussions / Re: SFML 3 - What is your vision?
« on: April 26, 2014, 04:33:54 pm »
Simple and Fast Multimedia Library
By downloading and using such named thing, I would expect simple and fast coding. SFML is one of few good libraries known to me that support full OOP (and by fully I mean it's really simple to use, for example Qt is unintuitive, especially with main function design), which is insanely helpful. However your library should be scalable. It should be as good for newbies as for pros. That's why you should add simple demos and free stuff for first-time-use. Some free music, textures etc. Also default font would be nice improvement. I never understood why original author didn't include it.
As it goes for pros, I think that adding 3D support is obligatory. I don't know any fully OOP libraries (with such good API as SFML) supporting 3D and it isn't so hard I think, it just need good packing OpenGL functions into classes and a bit of optimization.
Native supports for widgets. I know I can import another library or create my own GUI, but neither is simple nor fast.
As it comes for C++11 and C++14 I don't see any reason to not make them obligatory. Compilers that won't support these features when SFML 3 would be released will be greatly outdated and there is no reason to outdate SFML itself because of it.
Advanced functions, like mentioned above mathematical operations on vectors in etc. should be also included. "Fast" means for me not only that program itself will be fast, but also that I won't have to waste my time looking for additional dependencies, while "Simple" means that everything what is needed to create game or application (from programming side ofc, not resources) will be provided to me in an easy, simple way. It won't affect library efficiency as everything is modular and I include only these files I want to include.
Worst you can do is to expect people to install hundreds of additional libraries to make their games and apps work, just because "they can do it". We are not talking about SFML 2.x, but SFML 3 and it's long-time project, so there is no reason to reject any idea just because it's "time wasting" and "it is already done in XYZ library".
By downloading and using such named thing, I would expect simple and fast coding. SFML is one of few good libraries known to me that support full OOP (and by fully I mean it's really simple to use, for example Qt is unintuitive, especially with main function design), which is insanely helpful. However your library should be scalable. It should be as good for newbies as for pros. That's why you should add simple demos and free stuff for first-time-use. Some free music, textures etc. Also default font would be nice improvement. I never understood why original author didn't include it.
As it goes for pros, I think that adding 3D support is obligatory. I don't know any fully OOP libraries (with such good API as SFML) supporting 3D and it isn't so hard I think, it just need good packing OpenGL functions into classes and a bit of optimization.
Native supports for widgets. I know I can import another library or create my own GUI, but neither is simple nor fast.
As it comes for C++11 and C++14 I don't see any reason to not make them obligatory. Compilers that won't support these features when SFML 3 would be released will be greatly outdated and there is no reason to outdate SFML itself because of it.
Advanced functions, like mentioned above mathematical operations on vectors in etc. should be also included. "Fast" means for me not only that program itself will be fast, but also that I won't have to waste my time looking for additional dependencies, while "Simple" means that everything what is needed to create game or application (from programming side ofc, not resources) will be provided to me in an easy, simple way. It won't affect library efficiency as everything is modular and I include only these files I want to include.
Worst you can do is to expect people to install hundreds of additional libraries to make their games and apps work, just because "they can do it". We are not talking about SFML 2.x, but SFML 3 and it's long-time project, so there is no reason to reject any idea just because it's "time wasting" and "it is already done in XYZ library".