Game Development Community

Announcing TGB 1.7.3 Open Beta!

by Stephen Zepp · 04/29/2008 (12:07 am) · 30 comments

GarageGames is excited to announce the TGB 1.7.3 Open Beta!

Remember all that talk about community participation and transparent development? We're doing it again. We've done a lot of work (probably way more than the point update would indicate) on TGB 1.7.3 and we want your help to make sure it's really solid before it goes out the door with the official GG stamp of quality on it. If you currently own TGB (Binary or Source), you're invited to participate in the next stage of TGB development!

www.garagegames.com/images/site/blogs/IceWolf-5.jpg
Ice Wolf -- a TGB game used to help test the new physics changes

If you want to jump right in before reading the rest of this update and already own a license to TGB, you can head on over to your My Account page and get started downloading the TGB 1.7.3 beta installer.

Note: Our Mac installer is going to be slightly delayed, so unfortunately this beta is only for PC users. The Mac build is in the works, so rest assured that we'll have a Mac compliant version of 1.7.3 very soon!

What's in Store for TGB 1.7.3

This update is pretty impressive--from bug fixes to the physics system to quite a few performance optimizations to enhanced documentation and new features, we've got a lot to talk about, so settle down and get ready!

Physics System Updates

Melv May, coding monster that he is, has been hard at work for the last month on optimizing the physics system for TGB, working with many of you to resolve issues by utilizing your real world projects to discover and correct many of the problems the community has discovered while using TGB. He's made a number of optimizations of the underlying code to provide a leaner, meaner, faster than before physics system. Here's a non-exhaustive list of things that have been addressed for this update:


  • *Added tick-physics smooth object rotation.
  • *Added tick-physics smooth particle interpolation.
  • *Added per-tick scene callback.
  • *Added "t2dSceneObject::getRenderPosition".
  • *Fixed tick-physics mounting issues.
  • *Fixed physics interpenetration issues.
  • *Fixed physics collision response issues.
  • *Fixed collision callback reporting issues.
  • *Fixed position-target system issue.
  • *Fixed mounting bug in t2dTextObject.
  • *Improved circle/poly circle/circle collision detection code.
  • *Improved t2dTrigger performance
  • *Improved contact-history renderer.


  • Some of this stuff is tough to "get" just reading the bullets, so Melv did a few video captures to show some of the bigger differences between the ways 1.7.2 handles collisions and physics in general to the new, much more accurate and efficient TGB 1.7.3. Check 'em out below:


    www.garagegames.com/images/site/blogs/1.jpg www.garagegames.com/images/site/blogs/2.jpg













    www.garagegames.com/images/site/blogs/3.jpg www.garagegames.com/images/site/blogs/4.jpg














    Click any image to watch the movies

    Physics System Theory Documentation
    One of the things Melv discovered during his interaction with the community was that in some cases, the theory and best practices for optimizing the performance of a game wasn't clear enough to allow developers to properly use the systems the way they were intended. To help inform TGB developers of the best practices and underlying concepts of the TGB physics system, he's provided another of his amazingly detailed discussions to help illuminate the sometimes confusing details of TGB collision and physics. Here is just a sample:

    Quote:
    To explain collision contact and collision normal further let's bring back our objects "A" and "B". Imagine that
    object "B" is stationary and cannot be moved no matter what; it's immovable. Now imagine that object "A" is moving right and hits object "B". When it hits it hits at the collision point (the collision contact) and that
    collision has a collision normal as shown here:


    www.garagegames.com/images/site/blogs/CollisionContactAndNormal.jpg

    New Game Demos and Documentation

    The community has asked for new examples of how TGB can be used to make a variety of game types, and we've responded! Thanks to the hard work of Tom Eastman , Matt Langley and a member of our intern team, Robert Potter, we bring you some new game examples:

    Reactor


    www.garagegames.com/images/site/blogs/Reactor001.jpg

    Solitaire
    www.garagegames.com/images/site/blogs/Solitaire001.jpg

    As well as a Behavior based version of the Shooter Demo, Blackjack, and an enhanced Checkers Demo!

    All of the new Game Demos come with full TorqueScript, images, and can serve as starting points for an even larger variety of game types for the new user.

    In addition to the four new Demos, we've also greatly increased the reference level documentation of TGB's user API, providing even more detailed information on hundreds of TGB classes and their methods. Here's an example:

    [b]castCollision(float [i]elapsedTime[/i])[/b]
    [b]Description:[/b] Returns collision details for object over elapsed-time.
    [b]Params:[/b]
      [b][i]elapsedTime:[/i][/b] The number of seconds into the future to check for collisions. If this number is
     0.0, the collision will be done based on the current position of all objects. If it is greater
     than 0.0, the engine will perform the collision detection across a simulated time period of 
     length time and return the first collision detected.
    [b]Return:[/b]
      [b][i]space separated list:[/i][/b] If no collision occurs, the return value is an empty string. 
      Otherwise,  the list is in the form 'object time contactX contactY normalX normalY'. 'object' 
      is the object collided with, 'time' is the number of seconds in the future the collision took 
      place as a float (this number will always be less than the time parameter), 'contact' is 
      the position the objects collided at as a  vector, and 'normal' is the normal of the 
      collision as a vector.
    
    [b]Example(s):[/b]
    
    // time - time to check for collision using current object setup.
    // This function allows you to check to see if the object, usings its current setup, will 
    // collide over a specified period of time. 
    
    %obj.castCollision( 1.0 );

    New Functionality: Built in A-Star Pathfinding

    We always love to see users enhancing Torque to accomplish cool things, and it's even better when they decide to give back to the community the results of their hard work as a resource or asset for the community to use. Sometimes, the contribution is so nice to have that we decide it should become a core feature of future products.

    One perfect example is the amazing work done by Phil Shenk on his resource A-Star Pathfinding Extension for T2D -- a C++ implementation of a very popular and powerful path finding algorithm used in hundreds if not thousands of 2D and 3D games.

    Based extensively on Phil's resource, we're proud to announce that Torque Game Builder 1.7.3 now provides integrated A-Star Pathfinding for any TGB object. We've taken Phil's resource and provided a TorqueScript interface that allows even binary only TGB owners to use real time path finding within their game, including dynamic modifications of the world affecting current and future paths.

    We've also written a new tutorial to teach the basics of the TGB aStar API, Attack of the Mutant Butterflies!

    www.garagegames.com/images/site/blogs/AMB001-00000.jpg


    You have Become Better at Transparent Development (100)!

    As I mentioned above, we've been very impressed with the community participation we've received so far during our Transparent Development strategy, and we're ready to take it to the next step: interactive development.

    For the TGB 1.7.3 update, this will take place in two different ways:

    Enhancement of the aStar Pathfinding feature for future releases

    The aStar implementation provided with this update has some interesting features, but there's always room for improvement! Over the course of both the 1.7.3 open beta period, and in the following months we will be looking for active feedback and contributions to make the feature even more powerful for you, the community. We hope to see both developers brand new to TGB and power developers that have been with us since the beginning work together to further enhance the aStar capabilities built in to TGB.

    A soon to be announced interactive project between GarageGames and the Community

    I'll save the details for a .plan in the very near future, but we will be sponsoring an interactive development project for the community based on the aStar functionality. Stay tuned for further announcements, but I'll leave you with this teaser:


    www.garagegames.com/images/site/blogs/TD.jpg

    TGB 1.7.3 Beta Discussion/Reporting

    Here are a couple of posts that should be used when discussing this beta, as well as directions for how to submit bugs:

    TGB aStar General Discussion
    How to submit bugs for TGB 1.7.3 beta
    TGB 1.7.3 Installation/general questions

    Full change list

    Known Issues with TGB 1.7.3 beta 1
    Page«First 1 2 Next»
    #21
    04/30/2008 (3:09 pm)
    Just curious. Is this from the integrated Juggernaut source or from its independent source code?
    #22
    04/30/2008 (3:11 pm)
    This is just a small point release, and is still from the baseline TGB code, not Jugg. We did nab a utility class (tDictionary) from Jugg at Melv's suggestion to increase the optimization of triggers, but that is the only major Jugg submission to this particular release.
    #23
    04/30/2008 (7:37 pm)
    EXCELLENT!!! Well done guys! I'm particularly excited by the physics fixes, as this is something that's been bugging me for some time. I'm soooo excited to try this out. Thanks a ton! :) :) :) Looking forward to the announcement that the Mac download is available.
    #24
    05/01/2008 (8:53 pm)
    I've really looked forward to this release. Unfortunately, I'm not really in a position to aggressively beta test it -- but hopefully you'll hear a little something from me.

    From the change log it looks like this release is even better than I had hoped!

    KUDOS!
    #25
    05/02/2008 (7:25 pm)
    Are you anticipating a Mac release of the beta, or will you wait until the final 1.7.3 release?
    #26
    05/02/2008 (10:32 pm)
    We're hoping to get a Mac demo out as quickly as possible. The port is complete, it just needs to go through some internal QA and the build process.

    No estimation quite yet on how long that will take, but it probably will be treated separately from the PC build so they don't hold each other back.
    #27
    05/02/2008 (10:38 pm)
    Okay, great. I'm sortof hoping to use the newly revamped platformer physics to update an old present for my wife's birthday in a week, so I was just curious. :) Either way, I'll be patient -- thanks for letting me know!
    #28
    05/06/2008 (7:42 am)
    This is incredible news! Good job to everyone involved!

    But I'm always left wondering why this kind of information isn't ever pushed to the built-in TGB RSS News feed. Or announced on the main site. I always have to dig through blogs or rely on word of mouth to find out about updates. :-(

    Thanks for the massive updates, I'm downloading it now. :-)
    #29
    05/07/2008 (4:54 pm)
    Great stuff! Any chance of posting sample TGB projects for the four physics movies shown above?
    #30
    05/25/2008 (5:32 pm)
    is this even legal? Pixels have rights too.
    Page«First 1 2 Next»