The big news coming out of GarageGames today is that Torque 3D will be going open source under the MIT license. This is huge, and something that we’ve discussed internally for a while. Eric has just posted a blog talking about why Torque 3D is heading in this direction and a little of the history behind the decision. If you haven’t yet read Eric’s blog please head over there and read it first.
The other piece of news that I’m excited to share is that I will be leading the charge on future Torque 3D development with the help of, well, you, of course!
While the veterans out there know who I am, many of our newer community members may not. I’ve been a part of the GarageGames community since January 2002, and most of that time I’ve been an Associate. My first commercial game dev product was Torque ShowTool Pro in 2004, which was one of the first 3rd party products sold through the GarageGames online store. Those were exciting times when the whole Indie game development scene was trying to define itself and building momentum.
After the launch of TST Pro I began working closely with GarageGames. I’ve had my hand in nearly every game engine we have launched (plus a few internal ones), and along the way I came on board full-time (and have been for a number of years now). Last year I was the Technical Lead on Torque 3D 1.2, the last retail version of the engine.
In 2010 I launched my own gaming portal Zworldo that focused on Torque 3D based web games. A lot of what I learned there made its way back into T3D 1.2, which shows that it really helps to use the products you make.
How will the open source version work?
We’ve chosen GitHub to host the Torque 3D repositories. GitHub has taken on the role of the location for Open Source projects on the Internet. It allows for great community interaction, encourages the forking of code bases, and easy merging of changes. And if you’re not yet into git (GitHub for Windows and Mac are tools that really help), GitHub supports both Subversion access and automatic Zip archives of all repositories.
Anyone may have Read Access to the public Torque 3D repositories. You create your own fork and do your development work there. You can merge updates from the master branch into your own as they become available. And if you have changes you wish to share with the community to be integrated back into the master, you create a pull request and someone with Write Access can review the changes and merge them in.
Who will maintain the repositories?
To maintain the master Torque 3D branch a committee will be set up that has Write Access and may respond to pull requests. This committee is dedicated to making the best core version of Torque 3D so that others can build upon a reliable foundation. Performance, reliability, maintainability and scalability (should turn that into a crest :) are the goals of this committee.
The launch committee will consist of the following GarageGames members:
Quote:Our mission is to build a foundation for a sustainable environment that fosters collaboration and community development of the greatest open source game development platform.
However, we don’t believe that committee members should only come from GarageGames. One of our primary tasks is to seek out and retain qualified core team members that are dedicated to our goals. Over time everyone but myself will be replaced by members of the community and the committee will be allowed to grow as required.
What will be included in the open source version?
The complete Torque 3D 1.2 source code, along with the four starting templates, will be included in the GitHub repository. A separate repository for reference documentation will be set up. Other items, such as the FPS Tutorial template, will be part of a separate download to help keep the main repository to a manageable size.
There are other, closed source components of Torque 3D that I would like to open up following our launch.
Following the launch of Torque 3D on GitHub, another job of the committee will be to come up with a roadmap. We’ve decided to wait until after launch to do this because we want community feedback to help chart our course. My personal list of things I’d like all of us to tackle are:
Performance and bugs
Further separation of core from other layers
Additional platforms (OSX and Linux)
Everything is up for discussion at this point. This really is the most transparent development process we’ve ever had.