Game Development Community

Torque X 3.1.5 Pro Beta Changelog

by Matt Fairfax · in Torque X 3D · 06/23/2010 (6:53 pm) · 2 replies

Features:

  • New general purpose scene serializer supporting 3rd party components
  • Support for Torque 3D terrain loading (it is limited to supporting only 4 layers using only diffuse textures.... no per-layer detail maps or normal maps)
  • Added LightList Editor
  • C and E keys now move camera straight up and down in the Torque X 3D Builder (similar to T3D World Editor)
  • Implemented Shift+Drag-Copy and added shortcut keys for UndoMove/RedoMove operations
  • Added SoundManager.StopAllCues()
  • Torque X can now load DTS version 26 (Torque 3D's version of DTS)
  • You can now deselect by clicking on nothing in the scene in the Torque X 3D Builder
  • The Scene Explorer in the Torque X 3D Builder will now scroll the selected object into view
  • The Scene Explorer in the Torque X 3D Builder now properly updates when objects are added and removed (no longer needs a 'Refresh' button)

Improvements:

  • Recreated PropertyEditor for ObjectTypes
  • Updated formatting, software references, template names, and some code for all Torque X 2D tutorials
  • Added T2DAnimatedSprite.AnimationPauseTime property and time parameter to T2DAnimatedSprite.PauseAnimation()
  • Added T2DSceneObject.MountOffset() to alter the positional offset of a mounted object without dismounting and remounting it
  • Added TorqueComponentContainer.FindComponentAs()
  • Disabled ProcessObjects are no longer ticked (objects can now be selectively paused)
  • Added TorqueObjectDatabase.FindObjectsOfObjectType()
  • Added a more helpful message when Torque X encounters an XML property parsing error when loading a .txscene file
  • We now allow a GUIBitmap to be scaled and mirrored
  • Improved performance of PostProcess system on Xbox 360
  • Changed default point light color to red for easier viewing, and more appropriately set the attenuation values
  • Added an Xbox 360 Deployment guide to the Documentation
  • Torque X 3D Builder no longer crashes when it fails to load part of a scene
  • Added an improved error message to the Torque X 3D Builder for when fails to load a scene

Fixes:

  • Can now operate WASD camera controls in the Torque X 3D Builder without the cursor needing to be over the application
  • Removed an Assert from XTerrain - _CreateVBIB can be called if either buffer is null, they do not both have to be
  • Removed an Assert from Sky - _CreateVBIB can be called if either buffer is null, they do not both have to be
  • AxisGizmo now explicitly sets up the RenderState for AlphaBlend and turns off the depth buffer (this fixes manipulator rendering issues in situations where the scene had no Sky or Sun object)
  • AxisGizmo no longer lags a frame behind in position/scale as the camera moves
  • Can no longer highlight AxisGizmo handles with your invisible mouse cursor while the right mouse button is down (eg, rotating the camera)
  • Title safe area is now being calculated on Canvas registration. The frames per second control in the FPS Demo has been changed to start within that area.
  • We no longer crash if InventoryItemSlots are not found during deserialization
  • ParticleEmitter's rotation direction remains the same in both the editor and the game
  • Cursor is now hidden while the right mouse button is held. Camera also rotates much smoother with the mouse.
  • Reverted DirectionalLight transform copy, avoiding crash in Effects demo
  • AxisGizmo's hotkeys no longer activate when the 3D scene is not in focus
  • The LightList Editor window is now resizable
  • Fixed sorting issue in Torque X 2D
  • T2DScroller now initializes its properties to default values, in particular, setting TextureRepeatX/Y to default value of 1.0f fixed an issue in the SplitScreen demo
  • Changed line in btnAddComponent_Click which was referencing a nonexistent .dll
  • Redirected AllTorqueProjects.sln to new location of FPS demo
  • Made the AxisGizmo easier to select
  • Rotation gizmo now renders using cylinders, so that it is not flat and unselectable at certain angles
  • Scale gizmo now renders axis 'lines' as cylinders of equivalent size to the translation manipulator
  • AxisGizmo now renders with transparency, blocking the object under it much less
  • TorqueUtil.ChopFileExtension no longer mangles paths which contain a folder with a period in its name (eg, torque.net/bla/)
  • Sky no longer attempts to render every frame if missing
  • Sky now groups the side attributes together
  • Torque X no longer crashes when trying to load a missing texture
  • Fixed several bugs in the sorting algorithm used by the SceneGraph when UseLayerSorting is true, the result being that objects within the same layer render in a consistent order of creation rather than 'fighting' with each other
  • UseLayerSorting no longer causes objects to vanish when a large number are onscreen. The calculation for a (sorted) object's LayerDepth now allocates a fraction of the FarDistance to each object rather than a fixed offset which could overstep it.
  • RenderQuad does significantly less work and makes fewer allocations by skipping unnecessary generation of the vertex buffer and skipping calculation of normal/tangent/point(s) which were all unchanging. Properties for offset/repeat/flipx&y have been removed and are instead passed in by the class using RenderQuad.
  • SceneContainer::UseFreeList is now true by default (this results in much less garbage generation)
  • Removing the line in TorqueObject.cs which was disabling ticking on newly cloned object (this was causing crashes)
  • Added BrowsableAttribute to components that did not need to be viewed in the editor
  • Removed many assert warnings on object CopyTo
  • Disabled ticks on scene load
  • Added tick disabling when using Shift+Drag-Copy
  • Objects now disable ticking when added through any means. Removed much unnecessary comment code.
  • Terrain no longer shows debug colors in the repeat area
  • Terrain repeat area has correct detail mapping
  • Switched T3DBlobShadowCasterComponent to use volatile VBs to fix discard on XBox 360
  • Fixed SetData() calls to use Discard on PC only
  • T2DTileLayer now uses 16bit indicies for better performance and compatibility
  • Made sure VertexBuffers were properly using the BufferUsage.WriteOnly flag on creation
  • The ClipMapBlender FX was using the COLOR semantic when none was present in the geometry
  • DrawUtil.Rect() now correctly sets its VB so that the console to draw correctly
  • Fixed issues where fast machines with high framerates got what appeared to be very low performance caused by frame elapsed time being zero
  • Fixed missing overrides in StarterGame3D.MovementComponent3D
  • Fixed some audio cue assertions in DrillActorComponent.cs
  • Made T2DSceneObject.FlipX and FlipY virtual to fix hiding warning in T2DTileType
  • We use override in T2DTileObject.Clone() to resolve hiding warning
  • Fixed DTS animation cloning
  • Fixed SetAnimationFrame() to select the right frame when using a large frame per second value
  • Fixed case where cloning a pooled T2DSceneObject would sometimes result in the object not mounting correctly
  • Prevent Torque X from crashing when XNA fails to play a sound because an instance limit was specified for a sound category in XACT
  • Fixed GUIVideo to be used correctly on the XBox 360
  • Fixed issue where setting the ControlObject of a Player in the PlayerManager twice would result in a null Move being sent to the object's ProcessTick methods
  • Merged number of community fixes contributed and organized by Giuseppe De Francesco. Huge thanks, Pino!
  • Refactored "Open Project" to give better error messages to the user
  • Removed unused vertex color blending from Sky
  • Removed unnecessary StringBuilder garbage in FontRenderer.DrawString
  • Optimized ShapeInstance.SelectCurrentDetail() for single detail level case
  • Fixed a crash when trying to display an empty multi-line text box
  • Added a more helpful error message when you fail to call the Profiler EndBlock() function
  • Fixed a rounding bug T2DAnimationController SetAnimationFrame()
  • Camera controls now enable/disable as expected when focus changes to other controls (eg, an object's name property)
  • Camera controls now turns on in response to mouse down on the viewportPanel instead of on mouse up
  • Sun objects now create T3DLightComponents properly
  • Manipulator now renders with a FarDist of 100,000.0f so it does not get clipped even if the selected object is very far from the camera
  • Sun now uses transform for both LightDirection and rendering
  • Tabs in the main and side window panes in the Torque X 3D Builder now return when toggled from the View menu

Notes:

  • Removed the XML Scene Editor from the Torque X 3D Builder

Known Issues:

  • Cannot open another project when one is already loaded
  • There is an Unhandled Exception in the Preferences menu when you select "Reset Panel Layout"
  • [li]Potential crashes when using multiple monitors

About the author

I am a Game Designer at PopCap who has worked on PvZ Adventures, PvZ2, Peggle Blast, and Bejeweled Skies. I am an ex-GarageGames employee who helped ship TGE, TGEA, Torque 3D, and Constructor.


#1
06/24/2010 (10:59 am)
How did this sneak in here and I didn't see it last night?