Monday, September 01, 2008
Torque Makes Me Feel Stupid
I've been a professional programmer for nearly 15 years. I've worked with several game engines, programmed in lots of different languages, and done everything from GUI development to AI to assembly-language pipeline optimization for the dual Hitachi SH-4 CPUs in the Sega Dreamcast.
Yet the Torque Game Engine still makes me feel stupid. I've been working with the thing - on and off - for years, and I still don't fully understand its architecture. I'm not sure anybody does, anymore. Maybe Melv May.
Not that it's a bad code base. Anything but. I've worked with a lot of game and graphics engines, and they all have their warts. Every single one.
But I just did a merge of the existing "FrankenEngine" for Frayed Knights, and tried to merge it with the new, updated code and the "AFX" advanced lighting / particle effects code. It seemed to merge pretty easily.
One might say... too easily.
Now I'm trying to play Sherlock with code that ALMOST works, but is completely unplayable. Catching something like a crash bug is easy. Catching where something somewhere is silently failing and just not working is a lot trickier. So I'm feeling awfully stupid right now, because if you aren't totally sure of why stuff works, it's a lot harder to figure out why it is not working.
Labels: programming
Comments:
Links to this post:
<< Home
I hate this sort of thing. The last upgrade problem I had with torque was some of my scripts in the common folder go changed. I don't remember how long it took me to track that down.
You have my sympathies. I spent 2 days recently trying to figure out who my console window editbox disappeared and refused to come back.
Try debugging ActionScript in the Flash IDE... that's a real nightmare.
trace('Why isn\'t this working?');
:)
trace('Why isn\'t this working?');
:)
Been there, done that, so I definitely feel your pain!
But I don't think you can entirely blame Torque; vanilla Torque is fairly straight forward. But start to merge other resources/code/add-ons like AFX, TGB, etc. -- things that don't know about each other 'cause they were all coded independently -- yeah, you're guaranteed to have some craziness.
Best of luck, though! 1.5.2 brings some things to the table that are well worth having, IMO.
But I don't think you can entirely blame Torque; vanilla Torque is fairly straight forward. But start to merge other resources/code/add-ons like AFX, TGB, etc. -- things that don't know about each other 'cause they were all coded independently -- yeah, you're guaranteed to have some craziness.
Best of luck, though! 1.5.2 brings some things to the table that are well worth having, IMO.
Code Ugly - which upgrade was that? 1.4x to 1.5x, or an earlier one?
I haven't programmed in Flash yet, so I haven't experienced that particular horror. Now I don't feel so bad...
Xenovore - thanks. My engine is definitely pretty bashed-together right now, with AFK, TGB, TGE, and a whole lot of custom changes mucking it up. That makes life fun.
I haven't programmed in Flash yet, so I haven't experienced that particular horror. Now I don't feel so bad...
Xenovore - thanks. My engine is definitely pretty bashed-together right now, with AFK, TGB, TGE, and a whole lot of custom changes mucking it up. That makes life fun.
I believe it was either 1.6 to 1.7 or 1.72 to 1.73 in TGB. But I think 1.6 is where I really started tweaking the common folder so I wouldn't know if earlier versions did it or not. Also, if TGE updated the project, it is usually moving things around and replacing things within the "common" folder.
Also, there was one version that quit accepting Vectors as setPostion arguments and required multiple variables instead. However, scripts already compiled to .dso would still work, so every time I edited another script I would have to go replace these. I think they resolved this though but I haven't tried it?
Also, there was one version that quit accepting Vectors as setPostion arguments and required multiple variables instead. However, scripts already compiled to .dso would still work, so every time I edited another script I would have to go replace these. I think they resolved this though but I haven't tried it?
Please please please try out the Unity3D engine. It's simply amazing - you get Wii, iPhone, web-plugin, PC, Mac, and linux support, and you can use javascript to wire it all together.
I bought torque a while back and regret it now. I will be buying a copy of Unity as soon as my budget allows it.
Post a Comment
I bought torque a while back and regret it now. I will be buying a copy of Unity as soon as my budget allows it.
Links to this post:
<< Home

