Torque 3D 3.0 Roadmap, Development and You
by Dave Wyand · 01/10/2013 (1:46 pm) · 47 comments

Torque 3D 3.0 Roadmap, Development and You
Back on September 20, 2012, we launched the MIT licensed version of Torque 3D on GitHub. This was based on the T3D 1.2 commercial version with some changes to accommodate the MIT license. Then on December 19, 2012, we launched the first new release under open source, version 2.0. With those two milestones now behind us, the Torque 3D Steering Committee has been looking to the future.One of the Steering Committee’s duties is creating and revising Torque 3D’s roadmap. We have a meeting at least once a week to discuss Torque 3D in general, and the near term roadmap has been a formal and informal topic for the last six weeks. This past Monday January 7 was our first meeting of 2013 where we spent four hours going through each submitted Pull Request and deciding what topics should be included in our first roadmap. In this blog, we present to you, the community, our thoughts and ideas on the first roadmap of 2013 for your interest and to comment on.
Community Submitted Additions
The Torque 3D Steering Committee is made up of Ron Kapaun, Michael Hall and myself. Out of the three of us, I am the only one that is working on Steering Committee items full-time, although both Ron and Michael put in much more than the required time. Occasionally we’ll have a guest employee from GarageGames help us with T3D (and T2D) when they are between service contracts. That is the extent of the official team working on Torque 3D today. As with all open source projects we rely on you, the community, to step up and help make Torque 3D the best open source game engine.
A prime example of a community submitted change that we would like to include in T3D 3.0 is the TorqueScript optimizations by James Urquhart. These optimizations include hundreds of changes and touch nearly all C++ code that deals with TorqueScript. Because of these sweeping changes I’ve asked for all of your help in testing them before merging the changes into our development branch.
Not all submissions from the community need to be as large. In fact, it is easier to integrate and test smaller, more focused changes. If you have any work that you feel could benefit the community as a whole please put together a Pull Request on GitHub so that we may review it. This could even include changes from a resource you have previously submitted to the GarageGames site. If you’re ever unsure about what and how to submit changes, feel free to contact any one of us.
The Steering Committee’s vision as outlined in our Charter is to make the best core version of Torque 3D that others may build upon. To this end we may not be able to accept all submissions into our development branch, but we will consider and review all submissions.
Bug Fixing
Fixing bugs in the code base is something that will always be on-going. And as discussed above, the Steering Committee relies on the community to both submit and fix found bugs. Submitting a fix for a bug you found is great. Submitting a fix for a bug another community member found is even better. As with all open source projects, the Torque 3D community is now our team of programmers that can go through lists of issues, test and then submit fixes as Pull Requests.
General Editor Improvements
There are a few resources on the GarageGames site that help to improve Torque 3D’s editors that the Steering Committee would like to integrate for T3D 3.0. These include the improved terrain smoothing tool, Konrad’s rule-based layer painting for terrains, and ScatterSky colorization.
If there are any editor improvements from the GarageGames site, or any that you’re making use of in your own project that you would like to share, please generate a Pull Request or talk with one of us. Together we can continue to improve Torque 3D’s editor experience.
Remove Interior (DIF) Support
Support for the DIF file format, and “interior” objects in general has been announced as depreciated for some time. They are not fully supported by the engine and the tools to produce them have not been updated for some time. With T3D 3.0 all interior object support will be removed from the engine and all associated bit masks will be recovered.
Support for 3rd Party Input Devices
Supporting input devices beyond the mouse and keyboard, such as joysticks and gamepads, is hard coded in Torque 3D and is extremely difficult to extend. Recently, there have been some new input devices for the PC that have been released, or will be released soon, and have the potential for wide distribution. There is also the potential to work with these device vendors and have Torque 3D share in the publicity of their launch.
To this end we will be looking to revamp some of the Windows input event code to make it easier to add new input device support for T3D 3.0. The specific devices that will be covered in this release include:
Razer Hydra
If you're not familiar with it, the Razer Hydra has two controllers (one for each hand) that can determine their absolute position and rotation in space. It uses a magnetic field generated by a base station to obtain these results. It also has enough buttons, triggers and thumbsticks to be used in any gaming situation. This device and its SDK are available today.
Leap Motion
This small device can detect your hands and fingers over it and report on their absolute positions and rotations. It is a new way of interacting with applications and has a lot of potential. The Leap Motion is not yet available (they are taking preorders on their web site) but they have been sending out hardware and the SDK to developers. I’ve had an early developer version of their hardware sitting on my desk for the last couple of months and it is pretty cool to use and program against.
To support these new (and future) devices a new InputEventManager will be put in place and Torque 3D’s input messages will be expanded to support absolute position and rotation data. A new ExtendedMove class will also be made available (and optional) to pass this information from the client to the server, much like other input devices.
Template Reorganization
The current project template structure has been around for a long time in Torque 3D. An overhaul in how the TorqueScript files and game assets are organized has been discussed for some time and occasional tweaks have been made over the years. For T3D 3.0 we are looking to merge the template core and game files to make it easier to understand their flow and relationship.
We are also looking to simplify the project templates that are available to only two: First Person Shooter, and Basic. The PhysX versions of the templates will be removed in favor of the new module selection system that will be implemented in the Project Manager (see below).
Removal of Hard Coded File Pathways
There are a number of hard coded file pathways and assumptions within Torque 3D’s C++ code. These source code paths assume a particular directory structure for a project and will hinder the template reorganization we would like to have happen for T3D 3.0. All hard coded file paths will be converted to TorqueScript preferences or handled by other means where possible.
Project Manager Update
The next release of the Project Manager will include a new module selection system as part of the project generation stage. This will allow us to pick and choose which source code modules to include at any time and automatically update a project’s configuration files. The initial set of optional modules will include:
- Bullet
- PhysX
- Fmod
- New input devices such as Razer Hydra and Leap Motion
- Move class types (standard, hifi, new input device extended version)
- Web deployment
- Minidump
Shader Library Expansion
Some new postFx shaders will be included in T3D 3.0. The ones we know about right now are:
- Underwater caustics and turbulence
- Camera based motion blur
PostFX Editor
The first steps to revamping the current postFx setup window and making it a first class citizen (available as an actual editor) will be made for T3D 3.0. This will include moving away from the hard coded GUI and making it easier to add new postFX to the editor at any time.
Documentation Update
This is an on-going effort that can really use the help of the community. If you are interested in helping to expand Torque 3D’s online and offline documentation please get in touch with one of the Steering Committee members.
Torque 3D 3.0 Timeline
The Steering Committee is aiming to have three or four releases a year, where a release is defined as merging all development branch changes into the master branch. To that end we are looking to a March 2013 release for T3D 3.0.Working backwards from the last week of March, we need to account for a couple of weeks of Quality Assurance testing and any work that comes out of that testing. That leaves approximately 1.5 to 2 months from now to get everything into the Torque 3D development branch that we wish to include in the 3.0 release. That really is not a lot of time and we could really use your and the community’s help to make this another great release.
Linux Client IndieGoGo Campaign
As part of the T3D 4.0 release we have planned for the summer of 2013 it would be great to include Linux client support. As many of you are aware, we currently have an IndieGoGo campaign running to pay a developer to upgrade Torque 3D to support a full Linux client.What you may not be aware of is we have recently updated the campaign rewards. Anyone that contributes $25 or more to the campaign will receive their own copy of the award winning game Frozen Synapse. This game was made with the Torque Game Engine and the developer, mode7, is using Torque 3D for their next game. You can read their blog here about why you should support Torque 3D’s Linux campaign.
Two additional rewards have been added. With a contribution of $100 you will receive a 1 hour training session with David Montgomery-Blake or another GarageGames employee to help you solve your game development issues. And for a $250 contribution you will have a 1 hour session with our very own CEO, Eric Preisz.
Please share the Linux client campaign with your friends and fellow game developers and encourage them to participate. Having full Linux client support will help with all platforms that use OpenGL for their graphics pipeline.
- Dave
About the author
Producer at GarageGames LLC
#2
And what happens if the cause never reaches the goal, will the money be paid back to the source, or will they be kept as credits I can use on IndieGoGo? Their FAQ doesn't say.
01/10/2013 (3:11 pm)
I was going to contribute $50 for the Linux Port but saw that the perk for $75 was pretty cool. It says all first-party packs are included, but what are those? Are they the ones made by the GarageGames team? All of them?And what happens if the cause never reaches the goal, will the money be paid back to the source, or will they be kept as credits I can use on IndieGoGo? Their FAQ doesn't say.
#3
We'd love them to donate packs to the cause, though. :)
If the campaign doesn't reach its goal, the money is refunded back to you.
01/10/2013 (3:18 pm)
Yeah, it's all of the GarageGames packs. We can't include third-party packs without the developer's permission. We'd love them to donate packs to the cause, though. :)
If the campaign doesn't reach its goal, the money is refunded back to you.
#4
Huzzar!
HUZZAR!
HUZZAR!
and give an extra cheer for all the rest...
HUZZAR!
01/10/2013 (3:19 pm)
I second the 3 cheers...Huzzar!
HUZZAR!
HUZZAR!
and give an extra cheer for all the rest...
HUZZAR!
#5
Here's a link to what happens if we don't reach the goal:
http://www.indiegogo.com/how-pricing-works-on-indiegogo
01/10/2013 (3:19 pm)
Yep, all art packs that say "By GarageGames Studios". Sorry, the store doesn't sort by studio yet.Here's a link to what happens if we don't reach the goal:
http://www.indiegogo.com/how-pricing-works-on-indiegogo
#6
01/10/2013 (3:25 pm)
Looks like a good line up.. on the TorqueScript changes ... 100s of them, would this have an impact on 3rd party products such as AFX ?
#7
01/10/2013 (3:35 pm)
Personally I would hate to see .dif interior support go completely. Simply because I have a ton of purchased .dif models that I would like to still use. Maybe just a tool to convert to .dae or .dts format. Or does such tool exist already and I have just overlooked it?
#8
01/10/2013 (3:44 pm)
While you are improving the editors, perhaps you can add prefab road pieces so that one can drop in curves.
#9
@SeanT: inside the world editor, under the File menu you will find an option to Export Interiors to COLLADA. Simply select an InteriorObject in your scene, hit the menu option and let it do it's thing. I *think* that you will then find the newly exported .dae file in the root directory of your application... if not it may be found in the same location as the .dif file. Once DIF support is finally removed I think it's a safe assumption to say that this option will be removed as well.
01/10/2013 (3:51 pm)
@Jules: that is entirely possible, which is why we're asking the community to help test those particular changes before officially integrating them. @SeanT: inside the world editor, under the File menu you will find an option to Export Interiors to COLLADA. Simply select an InteriorObject in your scene, hit the menu option and let it do it's thing. I *think* that you will then find the newly exported .dae file in the root directory of your application... if not it may be found in the same location as the .dif file. Once DIF support is finally removed I think it's a safe assumption to say that this option will be removed as well.
#10
01/10/2013 (3:52 pm)
Looking forward to the future!
#11
Little error there. [/GrammarNazi]
01/10/2013 (4:00 pm)
"What you may not be aware of is we have recently updated the campaign rewards. Anyone that contributes $25 or more to the campaign will receive their own copy of the award winning game Fozen Synapse."Little error there. [/GrammarNazi]
#13
01/10/2013 (4:09 pm)
"Thumbs up" to 3.0!
#15
01/10/2013 (4:22 pm)
Yup! It certainly does!
#16
01/10/2013 (4:41 pm)
@Michael - hope to help out where I can :) Although I don't use the MIT version (at least not yet) - I like the direction of Torque releases and where future developments are heading, especially full Linux, and a possible mac port. Happy to setup a dev environment for AFX / Torque 3D MIT and see how things go, hopefully 3rd party products that use TorqueScript will follow the updating path, but I guess it all comes down to demand/time = money and a return on their investment to make it worthwhile.
#17
01/10/2013 (7:36 pm)
Definitely like what I'm seeing so far out of this.
#18
May I make a request for another addition (maybe it won't make version 3.0)
At the end of March, the initial 9000 or so backers will be receiving their development kits for the Occulus Rift VR HMD (me included).
www.oculusvr.com/
They will be supplying an SDK, and I hope to incorporate it to work with T3D.
However, my programming skills are maybe not as good as other members here, and I may need help !!
I think it would be great for T3D to have Rift support (Unity and UDK are already ahead of us in this respect)
Hewster
01/11/2013 (3:18 am)
Loving the roadmap :)May I make a request for another addition (maybe it won't make version 3.0)
At the end of March, the initial 9000 or so backers will be receiving their development kits for the Occulus Rift VR HMD (me included).
www.oculusvr.com/
They will be supplying an SDK, and I hope to incorporate it to work with T3D.
However, my programming skills are maybe not as good as other members here, and I may need help !!
I think it would be great for T3D to have Rift support (Unity and UDK are already ahead of us in this respect)
Hewster
#19
I didn't want to include it in the T3D 3.0 roadmap as the developer kits won't be distributed in time, but you will see Oculus Rift support added to the 4.0 roadmap.
I've also backed the Oculus Rift Kickstarter and can't wait until my HMD arrives. In fact, the initial 3rd party input device support for 3.0 is coming out of my own personal game's code base. I wanted to use the Razer Hydra along with the Oculus Rift in anticipation of the Rift's December shipment.
Very exciting times with all of these new input and output devices coming along. And I fully expect Torque 3D to be right there along side them, growing our community along the way.
- Dave
01/11/2013 (7:47 am)
@Hewster:I didn't want to include it in the T3D 3.0 roadmap as the developer kits won't be distributed in time, but you will see Oculus Rift support added to the 4.0 roadmap.
I've also backed the Oculus Rift Kickstarter and can't wait until my HMD arrives. In fact, the initial 3rd party input device support for 3.0 is coming out of my own personal game's code base. I wanted to use the Razer Hydra along with the Oculus Rift in anticipation of the Rift's December shipment.
Very exciting times with all of these new input and output devices coming along. And I fully expect Torque 3D to be right there along side them, growing our community along the way.
- Dave
#20
it might end up @ a leading spot in game creation!
i just wanna say keep up the great work and thank you guys for doin this/ great job
If i may ask what are the news about the T3D-CommunityEdition and its integration into Torque3D MIT? is it gonna be in the 3.0 (i damn wish/ hope)
01/11/2013 (11:12 am)
All in all the 3.0 Roadmap is just awesome and the news about the possible 4.0 with Occulus Rift Support is a feature that just might push T3d into another dimension and possibly with all those new featuresit might end up @ a leading spot in game creation!
i just wanna say keep up the great work and thank you guys for doin this/ great job
If i may ask what are the news about the T3D-CommunityEdition and its integration into Torque3D MIT? is it gonna be in the 3.0 (i damn wish/ hope)

Associate Steve Acaster
[YorkshireRifles.com]
Huzzar!
HUZZAR!
HUZZAR!