Torque 3D Development - Josh Engebretson and Web Publishing
by Brett Seyler · 01/07/2009 (10:57 pm) · 20 comments

Josh Engebretson is a guy who's been around the Torque community a long time. Known for doing some of the most interesting code mashups imaginable, Josh has experimented with GRE inside Torque, Ogre inside TGE, Python scripting in Torque, TGEA inside TGB, and lots more. Josh did all this cool stuff all while creating and running a profitable Indie MMO called Minions of Mirth with his wife Lara. Now that Josh is at GG, he's doing equally cool stuff.
With InstantAction.com proving what's possible with web gaming across all kinds of game engines, operating systems, and browsers, we thought that it was definitely time to bring this functionality to Torque.
Games being accessible from the web is exactly the kind of innovation that really empowers the little guy to reach customers directly and pick up the kind of momentum and audience that are needed to gain huge success.
Last year World of Goo took off. Andy Schatz's Venture series have sold very well with a bootstrapped operation and no huge publisher support. I'm eagerly awaiting the new Venture Dinosauria! Then there's Stickmen Studios' Buccaneer, Fro Games' Penguins Arena and Tilted Mill's Hinterland reaching a large audience on Steam. These are the kind of games and developers that will really benefit from being able to embed their game in their own web destination and build their own audience for future titles.
I'm really excited about being being able to offer this with Torque 3D and I'll definitely be talking more about licensing and the publishing workflow down the road.

Yep...still rocking it from North Dakota! What follows is probably the best profile pic I've ever seen...Josh tells us about his life and work.

Josh's Bio
"I was spawned in the year 1973. In the 90's, I co-founded Canopy Games and built several engines which shipped numerous retail games. In 2004, I co-founded Prairie Games which developed "Minions of Mirth" a successful indie MMORPG and the Torque MMO Kit. In 2008, I joined GarageGames and am currently working on Torque 3D technology. I live in the very friendly state of North Dakota and refuse to consume any meat or dairy products from factory farms.""I'm working on a general web deployment system for Torque 3D games. It will support browser-based games on Windows/OSX running Internet Explorer, Firefox, and Safari."
Below you'll see shots of the Forge demo running on Windos in IE7, FF3, and Chrome. OS X is still WIP, but I expect we'll be able to show some shots of that in February. Notice the framerate. There is zero overhead using our implementation.
Josh's Torque 3D Work



We'll be showing the workflow from Torque to the web in much more detail in the future. Until next time then! This is post #4.
Torque 3D development blogs:
- Post #1 - Kickoff
- Post #2 - Apparatus and Warrior Camp
- Post #3 - Luma's racing kit
- Post #4 - Josh Engebretson and Web Publishing
- Post #5 - Pricing and Licensing
- Post #6 - Pricing and Licensing CONTINUED
- Post #7 - Wetness & Precipitation
- Post #8 - Screeen Space Ambient Occlusion (SSAO)
- Post #9 - Matt Langley and the Torque Launcher
- Post #10 - Chris Robertson and Collada
- Post #11 - Depth of Field
- Post #12 - Advanced Lighting
- Post #13 - Soft Particles
- Post #14 - World Editor
- Post #15 - Pricing and Licensing ANNOUNCED!
- Post #16 - GDC Live Edition
- Post #17 - River & Road Editors
- Post #18 - Beta is UP!
- Post #19 - Light Rays, Undercity, Material Editor
- Post #20 - Mass Market Hardware
- Post #21 - Beta: Part Deux
- Post #22 - Marching Towards Beta 3
- Post #23 - pureLIGHT
- Post #24 - Lighting, Terrain, and Cloth
- Post #25 - Beta 3!
- Post #26 - Coming Soon!
About the author
Since 2007, I've done my best to steer Torque's development and brand toward the best opportunities in games middleware.
#2
01/07/2009 (11:14 pm)
I love these blog posts and seeing Torque 3D taking shape!
#3
Great blog. I'm glad to see this much needed addition to torque getting some love. :-)
01/07/2009 (11:58 pm)
Chrome is that much faster than IE or FF? I may have to give it a go. Great blog. I'm glad to see this much needed addition to torque getting some love. :-)
#4
Great stuff... really looking forward to Torque3D! :)
01/08/2009 (1:51 am)
LOL, I love that mug shot! :)Great stuff... really looking forward to Torque3D! :)
#5
01/08/2009 (3:24 am)
@Mike: The framerate actually doesn't really change per browser at all, it just fluctuates depending on what's in the viewport for the engine at any one time...all 3 browser implementations are running at native (desktop) speed.
#6
01/08/2009 (4:17 am)
Josh in the man! Sweet looking demo :D
#7
I can say that the project has given me just oodles of respect for the InstantAction.com tech team. Great work and if you want a preview of the kind of stuff that is possible... go play on InstantAction.com right now... and email 3-10 friends about it while you're at it!
Torque 3D is shaping up to be downright scary... There will be panic in the streets. The best way to prepare is to pick up TGEA 1.8 (the cross platform and improved version of the 2008 Best Engine Frontline Award winning TGEA 1.7) and start digging in! YUM!!!!
01/08/2009 (5:52 am)
Thanks Brett, you almost nailed how awesome I am... I'm looking forward to your next attempt when we cover the cross platform/cross browser web publishing in more detail ;)I can say that the project has given me just oodles of respect for the InstantAction.com tech team. Great work and if you want a preview of the kind of stuff that is possible... go play on InstantAction.com right now... and email 3-10 friends about it while you're at it!
Torque 3D is shaping up to be downright scary... There will be panic in the streets. The best way to prepare is to pick up TGEA 1.8 (the cross platform and improved version of the 2008 Best Engine Frontline Award winning TGEA 1.7) and start digging in! YUM!!!!
#8
01/08/2009 (6:17 am)
@Josh: So is this being aimed at "bigger" games than what IA has published on it so far? Or, in other words, can it run MoM on it as well as from the client? I mean that question within reason, I'm sure there's a performance difference between client and browser games, but I'd be happy if you said I was wrong about that :)
#9
01/08/2009 (6:34 am)
@Ted: There's no performance difference between the standalone client and the browser version. You can do an MMO or any other kind of game without extra complication. Of course, you still needs to pull down data to the client's machine, but for most games, with common bandwidth, this can be done in chunks and very quickly. This tech isn't aimed at any kind of game in particular. Anything you'd build with Torque might be appropriate. If you wanted to host a site with a bunch of casual games, that would work. If you wanted to build an MMO / Virtual World, sure. FPS? Of course. MoM could run on this system in a matter of days and probably hours if it were on the Torque 3D code.
#10
Is his hair and wardrobe really like this or you photoshopped his face into a Christopher Lloyd's pic?
EDIT: By the way, that Stallone shot is from 1981's "Nighthawks"? It's a really cool movie.
01/08/2009 (6:52 am)
@Brett, Is his hair and wardrobe really like this or you photoshopped his face into a Christopher Lloyd's pic?
EDIT: By the way, that Stallone shot is from 1981's "Nighthawks"? It's a really cool movie.
#11
Nick Nolte...

Josh bears some resemblance, but I didn't give him the Nolte treatment, it's his own creation :)
And that Stallone shot if from First Blood, the greatest of the John Rambo series.
01/08/2009 (7:30 am)
@Adib:Nick Nolte...

Josh bears some resemblance, but I didn't give him the Nolte treatment, it's his own creation :)
And that Stallone shot if from First Blood, the greatest of the John Rambo series.
#12
Edit: Brett says, "Josh bears some resemblance." - OMG! Dude, my look and vibe is way different. Nolte is all like, "UGH! Meth'd up caveman". I am all like, "Happy, happy, joy, joy found a warm spot in the pool"
We're setting up the Torque 3D web deployment so you can easily brand it with your own company/personal info... and it'll come with full source so it can be completely customized. We're also working on making it easy to deploy your game (more on this later). Basically, we're doing the hard/tedious/platform/browser bits so you can concentrate on being creative. :)
01/08/2009 (7:50 am)
Lara worked her magic on the pic... that's all GIMP baby :) The story is that I had really bad hair which hadn't been cut since the last time I ventured out in public (Eugene, Oregon all company meetings + fun)... and this was a solution to not running out and getting it cut. Though, hm, my hair wasn't quite THIS bad... so the results are questionable.Edit: Brett says, "Josh bears some resemblance." - OMG! Dude, my look and vibe is way different. Nolte is all like, "UGH! Meth'd up caveman". I am all like, "Happy, happy, joy, joy found a warm spot in the pool"
We're setting up the Torque 3D web deployment so you can easily brand it with your own company/personal info... and it'll come with full source so it can be completely customized. We're also working on making it easy to deploy your game (more on this later). Basically, we're doing the hard/tedious/platform/browser bits so you can concentrate on being creative. :)
#13
01/08/2009 (1:29 pm)
Only one thing left to ask: When?
#14
01/08/2009 (3:03 pm)
Wow, the resemblance between Josh and Nick is ... uncanny. Nice Photo-shopping!
#15
Torque 3D, with native support to deploy a web-based version of ou 3d game?
Man, I love you!
Now, being able to create 3d web games that we can put on any website? That it is like my dream come true.
Cheers.
01/17/2009 (6:43 pm)
Man... am I glad to hear that!Torque 3D, with native support to deploy a web-based version of ou 3d game?
Man, I love you!
Now, being able to create 3d web games that we can put on any website? That it is like my dream come true.
Cheers.
#16
Thanks.
03/27/2009 (7:59 pm)
Does it mean if I bought Torque 3D, I can make my game played in browsers just like Instant Action? Will the game resource files be encripted?Thanks.
#17
1) common game web launcher/bootstrapper (like IA or Unity3D) and games are loaded like a binary stream, then executed in a sandbox (the perfect case)
2) each game has own installer and user will be required to run it per game going thru all the security dialogs every time he starts a new game (not-so-good case)
Which one of the scenarious above will apply to T3D web deployment?
03/28/2009 (2:54 am)
So, how does the T3D web deployment works:1) common game web launcher/bootstrapper (like IA or Unity3D) and games are loaded like a binary stream, then executed in a sandbox (the perfect case)
2) each game has own installer and user will be required to run it per game going thru all the security dialogs every time he starts a new game (not-so-good case)
Which one of the scenarious above will apply to T3D web deployment?
#18
03/28/2009 (5:23 am)
@Alex: Like 1)
#19
Got few more questions (they all related to each other):
1) I assume the web game may be based off the Torque script or compiled as a C++ code - both will be supported?
2) will it allow my own binary libraries (DLL, o) to be downloaded, e. g. so I can use my own scripting like MONO runtime or ODE/BULLET physics?
3) Is there a path for multi-platform deployment - the bootstrapper knows which binary to pull down depending on the OS (Windows or Mac OS)?
4) Can multiple websites re-use the same installed launcher, so a) the T3DWeb gets wider acceptance, b) saves time (and my bandwidth) for the end user coming from another game portal
5) When a game downloaded - will it be cached in the browser cache or launcher cache? This will definitely save a lot of bandwidth for a returning user. If it cached - how can it be updated on the client side - ETag, versioning or content expiration flag?
Thank you!
03/30/2009 (12:59 am)
@Brett: thanks! Got few more questions (they all related to each other):
1) I assume the web game may be based off the Torque script or compiled as a C++ code - both will be supported?
2) will it allow my own binary libraries (DLL, o) to be downloaded, e. g. so I can use my own scripting like MONO runtime or ODE/BULLET physics?
3) Is there a path for multi-platform deployment - the bootstrapper knows which binary to pull down depending on the OS (Windows or Mac OS)?
4) Can multiple websites re-use the same installed launcher, so a) the T3DWeb gets wider acceptance, b) saves time (and my bandwidth) for the end user coming from another game portal
5) When a game downloaded - will it be cached in the browser cache or launcher cache? This will definitely save a lot of bandwidth for a returning user. If it cached - how can it be updated on the client side - ETag, versioning or content expiration flag?
Thank you!
#20
The Unity web binary build contains several game scenes that can be streamed individually so that your game opens quickly.
Unity assets like materials, models, textures, lights, particle systems, etc, can be bundled into asset bundles that can be downloaded and altered at runtime.
Does T3D use a similar concept of scene streaming so that parts of the game can load instantly?
Does T3D package assets that are made available over http that can be instantiated at runtime?
Can packaged assets be built at runtime if T3D were used to make a game editor that mods your game?
What capabilities does T3D have to work with content that wasn't built at build time? Can T3D work with uncompressed/compressed textures and what formats at runtime? Can T3D compile shaders at runtime and what shader models are supported? What model formats can be imported/exported at runtime?
Can end users submit content for your game (materials, lights, models, textures) without needing the source code to your game? (In Unity's case, you need to give the user your asset library and scenes to maintain the object hierarchy and the end-user content developer would need to send you the same to add their content to the game).
Where can I find the T3D API object documentation for materials, models, textures, lights, particle systems, etc?
Unity3d is based on Mono and doesn't have a debugger yet. Does T3D have a debugger for the web player?
04/12/2009 (2:47 pm)
Quote:So, how does the T3D web deployment works:
1) common game web launcher/bootstrapper (like IA or Unity3D) and games are loaded like a binary stream, then executed in a sandbox (the perfect case)
[quote]@Alex: Like 1)[quote]
The Unity web binary build contains several game scenes that can be streamed individually so that your game opens quickly.
Unity assets like materials, models, textures, lights, particle systems, etc, can be bundled into asset bundles that can be downloaded and altered at runtime.
Does T3D use a similar concept of scene streaming so that parts of the game can load instantly?
Does T3D package assets that are made available over http that can be instantiated at runtime?
Can packaged assets be built at runtime if T3D were used to make a game editor that mods your game?
What capabilities does T3D have to work with content that wasn't built at build time? Can T3D work with uncompressed/compressed textures and what formats at runtime? Can T3D compile shaders at runtime and what shader models are supported? What model formats can be imported/exported at runtime?
Can end users submit content for your game (materials, lights, models, textures) without needing the source code to your game? (In Unity's case, you need to give the user your asset library and scenes to maintain the object hierarchy and the end-user content developer would need to send you the same to add their content to the game).
Where can I find the T3D API object documentation for materials, models, textures, lights, particle systems, etc?
Unity3d is based on Mono and doesn't have a debugger yet. Does T3D have a debugger for the web player?
Torque Owner Keith MJK