SFML community forums
General => SFML projects => Topic started by: slotdev on March 12, 2013, 11:42:36 am
-
Hi All
Some of you might know that we use SFML to develop casino style games for touch-screen terminals.
We're having a problem with one terminal we use, where it doesn't support OpenGL correctly for various reasons, the main one being they use a "hook" to overlay their own graphics. The people who own the terminals can update them, but it will take them a very long time.
So, the only solution we have is to use DirectX. Given that our entire game engine is built around SFML, this is not good news :(
Do people think it's reasonable to "just" replace the window management/draw calls in SFML to use DirectX but keep all non-window/graphics code the same?
Is this actually possible? We are actually prepared to pay someone to do this project - and then we will release the modified source code to the SFML community. We need to resolve this problem, and if it costs money, then OK. Are there any people interested? ;)
Ed
-
I think that the best solution is to use ANGLE, an OpenGL implementation that converts OpenGL calls to DirectX calls. It is not directly usable though, because it's an OpenGL ES 2.0 implementation.
However it's still much better than providing a DirectX backend to SFML, because:
- porting SFML from OpenGL to OpenGL ES 2 is much simpler
- it has to be done anyway in a near future, to support iOS and Android
I didn't plan to work on it before a few months (not before SFML 2.2 at least), but if it's really important for your business we can maybe find a compromise. What's your deadline?
By the way, could you tell us more about your company and the games that you do? :)
-
Another solution other than modifying SFML would be to redesign your code so you can easily swap out the back end between SFML/DirectX. Define a interface that would be similar to SFML and then implement that interface in two forms, one form for SFML and one for DirectX. And then in the future if you want to swap out the back end all you need to do is change which back end implementation you use in your code.
-
I think that the best solution is to use ANGLE
Just read a bit up on ANGLE and WOW. Do it.
I think one of the main things why people don't choose SFML for their games is due to it not supporting directX
(mostly because it is said that directX has better driver support and runs better on windows).
And having SFML for Android would be just plain awesome! :D
On the side-note: would it be possible to use latest directX stuff with Angle?
Maybe DirectX.hpp for SFML (just like OpenGL.hpp)?
-
I think one of the main things why people don't choose SFML for their games is due to it not supporting directX
(mostly because it is said that directX has better driver support and runs better on windows).
This is wrong, or at least exaggerated. It's true only if you don't install drivers for your graphics card, and run with the software OpenGL implementation of the OS. I don't know anybody who does that -- and even if I find one, I would tell him to upgrade his driver, not to switch to DirectX.
As long as you install the graphics drivers provided by your graphics card manufacturer, everything is fine and you don't need DirectX.
would it be possible to use latest directX stuff with Angle?
What does "latest DirectX stuff" means? DirectX is just the implementation detail, what you can use with ANGLE is the OpenGL ES 2.0 API, nothing more.
Maybe DirectX.hpp for SFML (just like OpenGL.hpp)?
??
-
Hi Guys
To answer the questions:
1. We are a small team of 7 guys currently - our website should give you a better idea of what we do (http://betdigital.net/ (http://betdigital.net/)). Basically, we make casino slot-machine games and systems which are on around 25,000 terminals (of many different types) in the UK and some other countries, e.g. Mexico & Columbia.
2. For the DirectX project, we have a deadline of June - but obviously the sooner the better as it will a lot of testing.
Laurent maybe we can talk off-forum about this? We really want to support SFML as it is very important to what we do :)
Ed
-
Although, isn't OpenGL ES shader based? If so, some platforms we use don't support shaders at all :(
-
Nice games. I'm glad they are based on SFML ;)
Laurent maybe we can talk off-forum about this?
Sure. E-mail or PM are both fine for me.
Although, isn't OpenGL ES shader based? If so, some platforms we use don't support shaders at all
OpenGL ES 2.0 is shader-based, yes.
What kind of platform do you use that don't support them? Do they support DirectX 9 shaders?
-
I too would like to lobby for the importance of openGL ES support in sfml. :)
I've been waiting for this for a long time since I'd be eager to make sfml work on the open pandora platform which is quite game oriented so such a library would fit very well on it. And i'm sure there are other mobile platforms and things like NaCl for chrome that would really make this library cover new ground!
Cheers!