Torque 2D: 3.0 and Editors (soon)
by Michael Perry · 01/23/2014 (3:14 pm) · 75 comments

Torque 2D : 3.0 and Editors

In the last episode of Torque 2D, we had some major progress on the topic of 3.0 and the steering committee. As posted in the On The Road blog, Android support was on its way and we added Mike Lilligreen to the steering committee. After that, T2D progress went dark. The committee has dropped to just myself and Mike, with little progress until a couple of weeks ago. After the holiday break, Mike sent out some e-mails to kickoff the final run of a 3.0 release. All T2D users should take a minute to applaud Mike for keeping things going. So here's where we are at.
Android Available
The Android port is ready for testing. If you pull latest development branch, you can start using it. Developing and testing a new platform is no trivial task. What's most needed is testing, testing, testing. Seriously, if you have an Android device then you need to help out with this. Android support was the #1 feature for a 3.0 release, so any problems with it essentially block 3.0 from happening. At a very minimum, we simply need you to pull development, compile, and run on an Android device. Whether you are successful or you run into problems, please post results in this official thread.New Input Controllers
I've managed to merge the Leap Motion code along with Simon Love's Xbox 360 controller support. Rather than pushing directly into development, I submitted a pull request. You can review the pull request via this link. Once again, what is most needed are testers. We need people to test the Leap Motion, the Xbox 360 controller for Windows, and making sure the platforms are compiling and stable. Even if you do not have the input devices, it would be a huge help if you could apply the pull request and let us know if everything else is working as expected.Linux/Steam OS
An unexpected, yet HUGE pull request cropped up recently. If you take a look at this pull request, you will see Frogger has provided a base implementation for Linux and Steam OS support. Once again, we need help testing the pull request. Apply the patch, then check to see if all the other platforms are still functioning properly. Check Windows, OS X, and/or iOS for stability or compiling errors.If you are feeling especially generous, add on to the code and help Frogger finish the implementation to bring Torque 2D to two new platforms.
Spine
The addition of Spine is a huge step forward for Torque 2D. Supporting Spine is not isolated to a single feature. The implementation adds support for "named cells", vets the SpriteBatch system, and further addresses asset pipeline shortcomings. Mike is currently debugging a few key problems with the Spine implementation:* Sporadic crashes on OS X
* Particles occasionally use the wrong named cell or show a completely square particle
* More features from Simon's branch need to be added
If you can, we need help debugging Mike's development branch. We need to isolate the crash and figure out why some particle emissions are "bad." Once again, this is a blocker for 3.0. The sooner we can solve these problems, the sooner 3.0 can launch...which brings us to the next big point...
Editors
Not everyone can agree on features, platforms, and fixes. Priorities and requests will always vary between users. However, there is one feature request that EVERYONE has agreed to be the most important. I'm talking about editors. To survive, let alone become a highly competitive game engine, Torque 2D needs editors. We've written a few blogs about the topic, yet there hasn't been much movement. After a few months away from Torque 2D, I've decided to reevaluate the editors situation.After receiving permission, I now have the green light to develop editors. In fact, I have already started. Actually, I have a working core editor, plugin system, ImageAsset editor, AnimationAsset editor, AudioEditor, AssetSelector, ParticleAsset viewer, and a few other nice spots.
Now, I'm sure everyone would love to have that. There's one problem. All of the editors rely on a 3.0 release. To be blunt, if 3.0 does not happen, then my editor work can't be released. Once 3.0 is available, I can push my editors to my own fork and we can all push T2D to the next level of user-friendliness. Kind of makes all of my above help requests for coders/testers seem a bit more important, huh? Not only will the engine improve immensely, but it paves the way for an editor suite.
--------------
That's all I got for today folks. Torque 2D is a community project. To have stellar features and editors, the engine needs a driving community. So sound off in this blog and the links I've posted. 3.0 needs your help, otherwise it will be stalled and a great technology could decay. I'm excited to start adding my own features, but 3.0 is the first hurdle. Post your thoughts, testing results, and pull requests so we can move on to the next chapter of Torque 2D.
Regards,
Mich
About the author
Programmer.
#62
Do you have a repository branch with your current changes in?
02/13/2014 (7:34 am)
@Mike If you want I can check to see whats up with the crash. Its possible something has been changed during the year, etc.Do you have a repository branch with your current changes in?
#63
github.com/lilligreen/Torque2D/tree/sixtyfour
02/13/2014 (9:18 am)
Thanks James. My branch is here:github.com/lilligreen/Torque2D/tree/sixtyfour
#67
02/16/2014 (1:51 am)
GG needs to keep rising
#68
Regarding the 64bit branch.
I didn't bother with the integer precision issues since unless you are processing things more than 2gb in size most of the time its not a problem. In any case I'll see what I can do about dStrlen which accounts for most of the warnings.
Unless I can reproduce the crash we're out of luck on that front.
02/16/2014 (4:47 am)
@mikeRegarding the 64bit branch.
I didn't bother with the integer precision issues since unless you are processing things more than 2gb in size most of the time its not a problem. In any case I'll see what I can do about dStrlen which accounts for most of the warnings.
Unless I can reproduce the crash we're out of luck on that front.
#70
02/17/2014 (8:03 am)
I am happy to see this moving along, an editor would be an excellent addition.
#71
As a general rule, Mich recommends we treat compiler warnings as errors. They can be tolerated for a while in the development branch but before we push to master they need to be taken care of. All platforms need to build cleanly. This was a focus for the last couple pull requests in dev.
02/17/2014 (9:39 am)
Thanks to James, the 64-bit + latest development branch on my fork now works correctly (only tested OSX though). Most of the warnings have been taken care of as well - only 12 left.As a general rule, Mich recommends we treat compiler warnings as errors. They can be tolerated for a while in the development branch but before we push to master they need to be taken care of. All platforms need to build cleanly. This was a focus for the last couple pull requests in dev.
#72
02/18/2014 (11:01 pm)
good~~I hope more and more people have desire to learn T3D~~
#73
I've also cleaned up the old feature branches since almost everything is now in development. For those that wanted a copy of the callbacks branch, since those changes never made it in, there's around 500 forks of T2D where you can still download a zip copy of that branch.
03/02/2014 (9:30 pm)
The 64-bit changes are in development now. T2D has been running smoothly as a 64-bit OSX app for the past few weeks for me, but I would appreciate others testing the dev branch on their platform of choice (might require updating/changing project file settings to build as a 64-bit exe/app).I've also cleaned up the old feature branches since almost everything is now in development. For those that wanted a copy of the callbacks branch, since those changes never made it in, there's around 500 forks of T2D where you can still download a zip copy of that branch.
#74
1. Windows compiles and runs
2. OS X compiles and runs
3. iOS compiles and runs
4. Android compiles and runs
5. Emscriptem compiles and runs
6. SpineToy is working on any and all of the platforms.
03/21/2014 (2:10 pm)
Repo got busted up pretty good. Windows and iOS were not compiling, OS X was working on a lucky gift from the gods due to how LLVM handles stuff. I just submitted a pull request here. I really, really need someone to hop on and test that pull request against vanilla development branch. I need confirmation for any and all of the following:1. Windows compiles and runs
2. OS X compiles and runs
3. iOS compiles and runs
4. Android compiles and runs
5. Emscriptem compiles and runs
6. SpineToy is working on any and all of the platforms.
#75
05/15/2014 (7:23 am)
My work on editors for T2D MIT 3.0 has begun. This is a personal project, not affiliated with Garagegames or the Steering Committee. 
Associate Mike Lilligreen
Retired T2Der
I got Xcode to build a 64 bit app on OSX. There were a few architecture changes needed in the project file (i386 to x86_64) plus there was one error in ActionMap.cc where I fixed it by changing a S32 to S64, in line 1656.
if (pNode->object) Con::executef(pNode->object, S64(argv[0]), argv[1]);I also got 345 warnings when compiling, a lot relating to "Implicit conversion loses integer precision" for stuff like dsize_t (unsigned long long) to U32 (unsigned int) and similar types.
When running the app, it crashes on startup about 50% of the time currently. The last line printout from the error report is this:
I encountered no issues so far compiling the code in 32-bit mode.
In order to realistically merge this into development at some point, we need to fix the crash issue plus get rid of all the warnings. Any help from the community on this is appreciated as I have enough on my plate trying to get 3.0 out the door right now.