>>21
We know perfectly well that SDL uses DirectX on a Windows platform. That wasn't the issue at hand. Maybe I should have clarified the post better. The issue was the actual interface we were going to be coding, and basically the ease-of-programming this engine.
How many lines does it take to get a minimal DirectX app up-and-running versus how many lines does it take an SDL app that does the same thing? Could the same codebase be ported directly from Windows to Linux with DirectX? No, but it can with SDL. We know what it uses internally, we were referring to the interface.
I have no idea how much of a bottleneck the SDL interfaces introduce into an app off the top of my head, but I imagine that there'd be at least some tradeoff; it's supposed to be easier to code using SDL interfaces than DirectX ones.
I wanted to use raw DirectX - for us to write all the data structures, to use DirectX functions to do graphics things. To be honest, originally it was going to be for the PSX and we were going to use open-source compilers and shit to generate out executables, which would be put on CD images with our data files, so that the end user would either a) whack it in a modded PSX and play it or b) run it in an emulator. We played with the interfaces for the PSX libraries, it being pure C, and it looked okay - until we started actually running into problems with address spaces and overlays and actually hold all the data structures we needed in memory.
So then we said "Okay, our fallback is to use DirectX, which we absolutely can do - we have books on it, there's more resources on the net for DirectX coding than there is for PSX C, etc." So we took the existing code we had and started to convert it to DirectX.
Then this kid came in and started talking about the SDL interface, and that it was portable, and easier to use than just DirectX, and that it was a system of interfaces that sits on top of DirectX (on windows at least) and is designed to write games with (lol more layers of abstraction lol). He told us he was a coder, we saw what he could do, and we brought him in - then he started making flippant remarks, acting high-and-mighty, and tried to change things around for the project. Saying that we ABSOLUTELY MUST do things a certain way, that we have to open source all our code, that we have to give it a fitting name for the engine, that we have to use XML to store map data (we were originally going to use a flat binary format), that we have to use JavaScript for the scripting engine (we were going to write a simple scripting engine ourselves), etc.
The team (minus him) and I had talks about him and figured out that he was going kinda far with this. so I removed his hop status and gave him voice. He kept coming in for about a week and a half, and hasn't been back since.
Basically regardless of whether we use DX8 or SDL's interfaces, we're going to be making our own data structures and function libraries anyway. The advantage of DirectX is that we could potentially come out with a better-featured engine that can do nifty things like particle effects and mixing 2D with 3D; (hint: the game is a top-down, rectangular 2D coordinate RPG, so there would be very little of that stuff anyway) and the advantage of SDL is that it's portable to other systems and also writing a bunch of the background code would require less time.
What this all really means, though, is that you,
>>21, should just stick with today's special.