2008-10-15

Busy stuff; Mental Agony; And booze to death

Been a while; Been to busy with my Game Co. to do much else; Lots to do, lots that needs to be done; And there are literally thousands of options available for usage;

I looked hard, very hard at some 'game engines'. Those of you who know me well know I hate them with a passion; There should never be a 'Game engine' there should only be a component based toolkit (define your interface before coding, idiots!) that can tackle the basic repetitive problems in games. It should also be documented, and very clean to work with and read. IGTL is slowly putting itself together more and more; More tools and abilities crop up all the time, and I wonder how to recruit more coders.

It comes to my attention that the complexity of building an engine isn't really so much in doing so; It's actually derived from two specific things, 1 being platform compatibility, the other mathematics. Trying to make things work on windows and mac and linux is magnitudes easier than it used to be, things are more standard. But in the REAL world, you end up still doing #define out the ass in order to make your cute little interface work per compiler per platform. I hate it, but there is no other way to get around it, unless you wrote code to write the code itself like I did. So far as tackling the huge collection of advanced mathematical problems in a 3D environment, most people wimp out and curl up and die when they see something hard. Instead of just thinking it through, they say 'I'll let someone else do it'. This is generally accepted for people on a budget and time constraint; I feel sorry for the people that have to 'just make it work'. On the other side of that, all of this math was ALREADY DONE in the 1930's, and has been forever repeated due to lack of documentation and academic jacking.
For example, when some jackoff starts writing articles about quaternions and rotations, they start talking about affine transformations, linear algebra, matrix blah de blah... and neglect to mention the ACTUAL PRACTICAL APPLICATION which means X forward, Y left, Z up, which is also called 'right hand coordinate system'. They also don't name functions that make sense; overloading operators, lacking any sort of conversion sense...

I really, really hate programmers. And programming. It's a horrible, stupid thing that we all have to re-do so many stupid problems because of industry incompatibility; I understand WHY we have to, but it still seems so wrong. Defeats the purpose of being sentient, almost. That's okay, because the promise of money is soon to fall, and everything will literally go to hell. Regardless of which way you vote (Obama rules!) you're still going to die.


....aaaanyways, enough of me bitching out code. Let's talk bidness. Logically speaking, I would much prefer to use a decent rendering system; OGRE kinda worked, but ended up being clunky, and bloated, and didn't work. G3D and most other engines relied on the MS compiler series; fine for them, shitty for me. OpenGL & GLSL is still the driving force behind all the pretty, and that works everywhere. So long as you write code to read Khronos groups' glext.h and create your own cross-platform glextplus.h so you can load extensions via macros for any platform (yeah yeah yeah, "glew did that already!". Have you TRIED using it? a$$.). Always, always ALWAYS use some sort of premade wrapper per OS. (SDL is good, wxWidgets is great, but not so much for games. Actually, in speed tests, SDL is slightly faster, but wxWidgets does NOT have correct joystick or media support. So use SDL for the game, console for the server, and wxWidgets for the dev tools. Simple as that.) Try using a 3rd party rendering system. If you have to roll your own, DESIGN THE GAME FIRST so you don;t blow your brains out trying to figure out 'oh emm gee, my occlusion culling super material shader proxy instancing node tree up my ass is broken!'.
Work with your team. Find out what they can do, and what data they are comfortable making. Use this information to build or select a uniform media type THAT HAS A FUCKING OPEN SPECIFICATION, dammit. And make absolutely sure it fits within the constraints of your game (for example, if you want IK, don't use a MD2, dipshit)

GAAARRGGHHHH!! I need more coders to help me. One guy can do it, but not without losing his sanity.

Here's a collage of old school demo stuff I played with. Since all the art (minus that green dragon) is mine, it doesn;t look good. Pretend I hired a 5th grader to make it for me.


This week I will be partying with my brothers in blood;
Tomorrow, WE DRINK IN HELLLLL!!!

No comments: