Game Development Community

I want to switch from unity3d to T3d (help me take a side...)

by CHRISTIAN ROY · in Torque 3D Beginner · 10/25/2009 (9:17 pm) · 5 replies

Ok,

I followed the GG T3d adventure since last june, since it was not publicly available, i tried Unity3d and like it alot, it allowed rapid prototyping but it fell short a bit on some concepts : speed and debugging support.

Here are my needs for the game we are planning out :

-Isometric Camera (was implemented in 15 min. in Unity)
-Capacity to expand the editor (to edit path finding nodes, this was a problem in unity, the editor seems to let me down when displaying all my nodes in a terrain of only 640 or so nodes 50x50 unit grid terrain, there is a good API for editing content, but seems to lag quickly with large data sets in inspector...and not all types get serialized properly in javascript like the Array type)
-Capacity to expand data save custom data that the editor or sdk will help me save in something else than textfile (I have yet to understand how we do binary data files that unity will load in a multiplatform uniform way)
-Scripting that is as powerfull as C++ and can be debugged and step into (js and C# are not debuggable in unity...only compile time errors)
-Use multiple 3d models for a gameobject(ex: helmet, head, arms, chest and legs, boots each separated, but animated from a single external skeleton...we want to let the player have custom visuals when he changes his armor for example)
-Have a good dialog system to implement RPG dialogs and GUI's.

I also want to know the support for :
-Automatic Normal maps creation (unity does it from black/white pic)
-Shader language of Torque3d (.cg ?, .hlsl?, other?)
-Documentation level (is old torquescript documentation or book can help me get into T3d quickly ?)

I am sorry if there is some Unity lovers around but my adventure trying to get fully optimised Astar into Unity3d has left me a sour taste. I did it in Ogre in C++, but i had total freedom over the engine. I want to know if i can code my pathfinding algo efficiently in torque script so it stays multiplatform.

Thanks for your suggestion and help.

About the author

I work as a professionnal game programmer


#1
10/25/2009 (9:30 pm)
If you can code up a solution for Ogre, you shouldn't have trouble making a different camera in T3D. One of the examples in the documentation is a basic stub for an RTS with external camera and character selection. That should give you something to work from.

You also don't have to write TorqueScript to implement a cross-platform A* (or variant) algorithm, as there are several layers of abstraction to enable the engine to be cross-platform in the first place. Lots of C++ code can be quite generic, using GFX, SFX and other subsystems in the engine.

Shaders: HLSL (Windows engine is DX only) and GLSL (Mac engine).

Documentation is being written all the time, and I know there will be another documentation update Monday - graphics documentation, I think.
#2
10/25/2009 (9:52 pm)
Just to quickly add on the rendering nodes for path finding if you look at my latest blog with the path finding editor we've built on Torque you'll see huge maps with 160k points generated and then rendered no problem at all.

The video there was capture on my laptop which has an average (mid to low range) graphics card.
#3
10/25/2009 (11:10 pm)
Andy: that is a really nice implementation you got there. My needs are alot simpler. As a technical question, like Ronny seems to say "You also don't have to write TorqueScript to implement a cross-platform A* (or variant) algorithm, as there are several layers of abstraction to enable the engine to be cross-platform in the first place." does your code will support export for the web and such or did you target a single platform only like windows. When you say : "Integrating with Recast was really easy, took about 200 lines of code for the basic integration, we've used our own Pathfinding and Mesh structures so it ties in with the rest of the editor but you could just use Detour as that has the Mesh structures and pathfinding built in already and should drop straight into torque." Do you use torque script at all or you just implemented everything in C++ and is the API for getting terrain data and static geometry well exposed ? I know Unity does not expose terrain data as editable in a matter of sense, you must hack your way a lot to make procedural terrain for example.

Also did your Astar tool with menus and such that you show in your video was coded inside the torque editor ?

Thanks again Andy, that recast lib looks like a time savior !
#4
10/26/2009 (12:41 am)
exist resources for almost any feature that you need, and good kits...

Quote:Scripting that is as powerfull as C++ and can be debugged and step into (js and C# are not debuggable in unity...only compile time errors)

good point, so... for debug you need the standard script language like in T3D torquescript...
#5
10/26/2009 (4:58 am)
@Christian - We've tested the code on Windows and Mac, haven't tried deploying to web but I see no reason why it wouldn't work given we've got it running cross platform already.

The terrain data isn't exposed to torquescript and requires some C++ code to generate the polys although that's not much more difficult than a call to a terrain->buildPolyList() function.

There is a mixture of torquescript and C++ although mostly C++ because it's a lot faster.

Yes we've bolted onto the editors in Torque all the extra functionality - theres more of the editor functionality we've added in my previous blog. Ignore the horrible graphics, we're using Tgea at the moment and therefore it doesn't look anywhere near as nice as it does in Torque 3D