From the very beginning our plan has always been to transition to where the community makes up the majority of the Torque 2D Steering Committee. We sent out a call looking for members of the community to step up and take part. We received a number of great submissions and of those, we’ve chosen two, longtime members to make up the first community-based Committee. Please welcome the new Torque 2D Steering Committee:
I normally provide an introduction for folks, but this time around I would like Simon and Charlie to post their own introduction in the comments. I will copy and paste their words back into this blog. I think their enthusiasm and reasons for joining the committee will speak far better than my own introduction could.
For this first community version of the Steering Committee we decided to start small. It was a very touch decision and I want to personally thank all those who showed interest. I still hope we can collaborate on Torque 2D improvements in the future. We will remain at this size for about six months and see how everything works out.
Over time our community will grow and we will grow the Committee with it. If any of you are interested in joining the Steering Committee please send me an email and I will add you to the list along with those that have already put in their names.
As I mentioned in my last blog, Melv and I ramped up the documentation effort for Torque 2D. You will be hard pressed to find bigger advocates for engine documentation than the two of us. Our first submissions were handwritten guides and introduction docs. We are already getting great feedback and will continue to contribute.
Still, it's very tough to beat the actual engine documentation. We set up an automated process on our build server that will generate reference pages for all classes, member fields, class methods, and global functions exposed to TorqueScript. Every time there is a commit to the master branch on our GitHub repository, the reference pages will automatically regenerate and push to this location: Torque 2D References Pages.
There is still a lot of work to be done on filling out the actual content, but that's where you all come in. To help us with developing the documentation, you can create pull requests against the development branch. Just like code improvements, we can evaluate the documentation and push it into the master branch. This will kick off the process, making our documentation effort fully open source as well.
More details on the documentation process will be coming soon...
So you have to be wondering what was shown in the video at the top of this blog and how you can use it. The video shows off one of our new Scene-controllers. Scene-controllers are a work-in-progress which allow you to add fast behaviors to the scene. You can add as many controllers as you wish and easily develop your own. Unlike scene behaviors which are written using TorqueScript, Scene-controllers are written in C++ and offer very high performance. Some controllers will affect scene objects within a specific region, some will affect those that are added to them directly etc.
For instance, a few controllers that are being worked on now are:
- Constant-Force controller - Applies a constant force to any objects added to the controller. Can make this variable to act like wind!
- Buoyancy controller - Applies physical buoyancy behavior to objects within a region.
- Point Force controller - Applies a force to any object within a certain radius of its position, can even apply a repulsive force as well
Using controllers is really easy:
// Create and configure my controller.
%controller = new ConstantForceController()
Force = "10 0";
// Add to the scene controllers.
Some controllers just want you to add objects to them to be affected like so:
These new features are currently only available in the development branch in our GitHub repository. They are still being worked on and are considered unstable by default. Once they have been finished, reviewed, and QA'd, they can be pushed into the master branch. For now, you can clone the development branch and play around with a few of the new toys that show it off.
So what else is possible? Have a look at these two controllers and imagine the game play mechanics that will now be available to you:
I'll keep this part short and sweet. When we released the final updates for Torque 2D 1.8 and iTorque 2D 1.6, some critical bugs slipped by us. Since these bugs existed in the Torque 2D MIT codebase as well, I went ahead and resolved them in the open source repository. Because the fixes were isolated to specific platforms, the code was easily ported back into the legacy updates. Anyone with a previous license will have access to this fix soon. It just needs to pass the final QA tests. As soon as they are ready, I will update this blog. This is definitively the last update the legacy engines will receive.
That's it for this week folks. The Torque 2D steering committee will be meeting to discuss processes for the engine, then bringing that discussion to the community. The future is still in everyone's hands, not just GarageGames. We are all driving the technology, so please continue to post your feedback, submit your code, and help us make Torque 2D the best engine it can be.
As usual, please spread the word. We need more exposure and wish to grow our amazing community. Post on Reddit, Facebook, Twitter, Imgur, and any other sites you may lurk on. This engine belongs to all of us and the world needs to know. Take care.