Game Development Community

dev|Pro Game Development Curriculum

iTGB 1.0 in the Wild

by Brett Seyler · 09/30/2008 (6:24 pm) · 26 comments

Well guys, I'm aiming to come in under the wire here with just hours to spare. It's September 30th, and that means it's iTGB day! If you visit the iTGB Indie page, you'll see that it's now available for purchase with an attached download. Those of you that went the pre-order route have got an extra title license with the iTGB SDK which should be available visiting your My Account page now.

Here's the latest status on iTGB and iTorque in general...

The Good

It looks like we've got all the primary TGB features ported and nearly all the known issues resolved. If you build the Behavior Shooter demo that ships with iTGB, you'll see it runs at a pretty solid clip with multiple enemy ships and particle effects on screen.



The Bad

You still have to wait for iTGE =)

Wait, there's more. In order to get your TGB game to run on the iPhone, you're going to have to do some squeezing. You're working with a very small footprint of memory and an incredibly small CPU cache. We're talking like pre-Pentium CPU cache. This means that calculations done on the CPU, especially those done via Torquescript, come at a large cost.

To get your game performing optimally, we're recommending that you prototype the game using Torquescript, but optimize by converting your scripts (like Behaviors) into code components. In many cases, this is pretty easy to do. Very few games will require more than a few days to get this done.

For Behavior Shooter, the art assets were resized in a quick and dirty fashion, and about 60% of the existing scripts were converted to code. This roughly doubled the framerate, but there are many optimizations left to be done. We're aiming to automate this process in the future, or get Torquescript performing well enough that it's no longer an issue. More on that below...

Decision Time

I seriously considered pushing back the launch date here, but I know there are a bunch of you excited to get working on your games. Some of you will be frustrated. This is not a big red button operation yet, but we're making good progress. In fact, it's pretty borderline whether we're really "Indie ready" or not with this version, but I see only two options...

  1. We can delay making iTGB available to Indies until it's much easier to work with.
  2. We can make it available now and get a wider range of feedback trusting that people will heed my warnings here that the code is still very RAW.
So what do we have? The docs are unfinished, though there's ample documentation for both TGB and the iPhone SDK out there. The code is clean, but sample apps are not really fast. This is an issue with all games on the iPhone that I've tried and there are a number of reasons why this is a tricky problem to solve, but it's not insurmountable. We're going to make this a smoother operation before we're done. If you're going to work with iTGB at this stage, you should be:
  • *Very familiar with TGB or willing to get familiar before you make the move to the iPhone
  • *Very familiar with C++, or objective C
  • *Reasonable about the amount of texture memory they can abuse with a device at these specs
Within those parameters, I think sticking with the original date is the right thing to do. So we're off to the races and I'm ready to see some Apps!

As mentioned, we're going to keep working on the outstanding issues, so post anything you come across in the forums. Remember that purchasing iTGB now (or if you pre-ordered) entitles you to any updates or bug fixes through version 1.x. While we're going to be working hard to optimize Torquescript so that the script-to-code conversion won't be necessary in the future, we're also working on optimizing other parts of the engine that can be trimmed given the limitation of the hardware.

And now...a crap-ton of screens:

68.233.5.139/~transfer/Pics/1222818551_92.jpg

68.233.5.139/~transfer/Pics/1222818644_102.jpg

68.233.5.139/~transfer/Pics/1222818632_100.jpg

68.233.5.139/~transfer/Pics/1222818620_98.jpg

68.233.5.139/~transfer/Pics/1222818608_96.jpg

68.233.5.139/~transfer/Pics/1222818596_94.jpg

About the author

Since 2007, I've done my best to steer Torque's development and brand toward the best opportunities in games middleware.

Page«First 1 2 Next»
#21
10/01/2008 (8:44 pm)
@Alex - Ha! Yeah, I'm thinking next Thursday or Friday for the release of my first 5 games with iTGB. ;)
#22
10/01/2008 (8:57 pm)
@Brett: Thanks for addressing concerns. I look forward to future releases.

@Bryan: I understand what you're saying, but I think I should clarify that it isn't a matter of learning Obj-C or not, it's a matter of WHICH language to learn and where to spend my "code learning" time.

I'll use Unity 3D as an example. In Unity you can code your entire game in JavaScript (or C#), then hit export for Mac, Windows, embedded html web player or Mac Dashboard Widget. All from that same Javascript.
http://unity3d.com/unity/features/scripting

I assume TGB works in a similar way for Mac and Windows exports, though I have to admit I came over to Torque FOR iPhone developing so I'm not as familiar with the Mac and Windows export options.

Back to the Unity example, in all of those cases the only required codebase to learn is the one INSIDE the game builder. I assume those Unity Mac and Dashboard widgets are compiled in Obj-C, but that work is done by the game building program. The program translates its own native programming language to your platform of choice.

When I discovered iTGB I realized that I could create better games sooner by focusing my learning time on TGB and TorqueScript. I have nothing against learning Obj-C, but given my experience with Unity exports, I expected iTGB to work in a similar way by translating that TorqueScript into the iPhone's Obj-C.

Like many others here I pre-ordered and have been looking forward to Sept 30th to see how my 1.7.4 prototypes will transfer over to the iPhone. To find out TODAY that I also need to polish up on Obj-C to use iTGB, it honestly hit me as kind of a shock. If I had known that I would need to be "very comfortable" with it I would have put some more time towards it, but given my above examples you can see how it's not unreasonable to expect iTGB to make that Obj-C translation automatically (and in fact I expected that to be one of the basic functions of the program).

So my questions are many - I need to know Obj-C. Fine. But where do I need to use it? Where does it fit into the process of going from iTGB to iPhone? I'll learn what I need to learn to do the job. I just don't know where to start and there aren't any docs to suggest a direction to move in. As you know, the iPhone SDK contains a HUGE amount of documents, and I've read through a fair amount of them. But working that into an iTGB workflow? No idea where to begin.

All of this goes hand in hand with documentation, which the product also lacks (which I know is currently being worked on diligently). For an indie branded product - plain and simple - it should make doing the job intuitive, or it should provide documentation on the quirks.

For those with more coding experience, yes, I agree it's nice to have an early build. For the rest of us, it's frustrating. But just because I'm not an Obj-C expert doesn't mean I'm not willing to learn it. I just didn't know I would need it.
#23
10/01/2008 (9:34 pm)
@Alex
His game was Air Hockey, which is top 9 on the last time I checked. So six weeks is more than enough time to finish an app like it. Congrats on the success of that App btw Bryan.

@Brett
*Crosses fingers for docs and usability to improve within a month*
#24
10/02/2008 (2:30 am)
@ Patrick: I think you've made your points well, and we (garagegames) understand where you are coming from.

The reason we got into business was to help make making games more accessible. When the studio opened our philosophy was to trust that, in capable hands, talented people would raise to the top levels of proficiency with Torque quickly, and the people who 'got it' would love it. We built a game, released the engine, iterated on the engine, added features, fixed some bugs, built another game... wash and repeat. We back filled our getting stated resources and documentation at the same time we were iterating on the design and adding new features. However, as we became more concerned about our "big" launches, and our 'Out-of Box' experience, our feature wish lists got longer and longer and the wait period between releases grew. While we intended for this to lead to higher quality initial launches, it did not help us and it did not help us meet our goals because it ended up cutting us off from one of our most important resources: our user community. -- Who are remarkably adept and keeping us honest about the frustrating parts of working with our software, and recommending specific usability improvements --.

I'm particularly impressed with Bryan's approach: He shipped a game with the tools he had, and now he's looking forward to leveraging the tools we built for his next title( Due next Friday. Bryan don't be late. : )) . I expect he'll have a high degree of success with iTorque, because he knows what it's good at and he knows where rolling his own will be a better choice for his game. IMO a game developer should always have that mind set.

This is a fast industry, and the technology has to move very fast as welI. In saying this, I don't mean to justify being reckless with our product releases, and I don't think we have in this case. But, we are eager to share what we've created to help achieve our goal of making making games for the iPhone easier.

--d
#25
10/02/2008 (3:30 am)
I read all of the coments here and must say that i am a little bit frustrated.
You, the garagegames people are working hard to get things done. I understand that und respekt that. Also i understand Bryan Duke points.

But know i read some comments in this thread that i read before in the "The iPhone Announcement" and "iTorque Update" thread.
To be true i bought iTGB before the 30. september not only becouse of a second license but mainly to start converting my game, test it, work on the file size and on and on. As i read the first anouncement that the indie verson will come on the 30. september, i start to make a 2d game just becouse of this with TGB 1.7.4.
In the threads before i read that i can buy the commercial version know but have no dokumentation, just an unready produkt but have the chance to start working with.

You wrote this:
Q. I'm an Indie. Why can't I license iTorque at the Indie price now?
A. We're concerned that the product will be too difficult to work with for most amateur hobbyist developers at this stage, so only after we're satisfied that the documentation is solid and learning curve is not so steep will we roll this out under the Indie License.

So i thought, ok i am waiting till the end of september and than i get something indie/hobbyist friendly but now i get about the same as the commercial version earlier only a bit cheaper. But that is not what i want and not what you make me awaiting with your information before this thread.
But know you pretend that everything is as it should be just we have to learn objective-c and so..
That is not the right way, i think.

I am a good customer, bought many things in your shop, also have more than one license of most of you engines so you see i trust in you. But now i feel handled the wrong way.

So you actual say that i can start working with the 1.0 version and you have made a game ......
If i only take the problem with the mouse, i ask how can i work with this, how can you.

Yes i am an indie more like an amateur user but that is the reason i bought the indie version with the hope in the promised indie features and not bought the commercial version.

I tell you something. I am also using other engines also one with a future release to the iPhone but trusted in you, garagegames and the iTGB version that i throw my money on you and not them and know you imply that i am on the wrong site becouse the version 1.0 is there and i can use it.

If i know that 1.0 will be like this i would have saved my money and spend it on the other engine. Do not misunderstand me. I then have my eye on iTGB and buy it when it is a true indie version becouse i see the capability of it. It is just a matter of time and recource management.

I hope that i have offended nobody and that you see my point that is also a little the point of some others.
#26
10/02/2008 (7:10 am)
@Alex Thanks!

@Davey Friday, I know. Stupid deadlines! I wonder if I can skip that family reunion this weekend. Hmmmm.
Page«First 1 2 Next»