Game Development Community

TX 3D Builder open beta bug: Assert: object database locked

by Thorsten Schmidt · in Torque X 2D · 08/18/2008 (11:16 pm) · 3 replies

After I created a new scene in the 3D Builder I have tried to load this scene into
a simple 3D starter game. After starting it i got an assert error:

TorqueObjectDatabase.GetObjectType - Attempted to create new object type 'Terrain', but object database is locked. Check type name or unlock database.
---- Lange Assertionsmeldung ----


at Assert.Fatal(Boolean condition, String message)
at TorqueObjectDatabase.GetObjectType(String name)
at XTerrain.OnRegister()
at TorqueObjectDatabase.Register(TorqueObject obj)
at TorqueSceneData._LoadObjects(List'1 list)
at TorqueSceneData.Load(String filename, List'1 extraAssemblies)
at TorqueSceneData.Load(String filename)
at SceneLoader.Load(String sceneFileName)
at Game.BeginRun() D:\Privat\XNA\Projects\FirstStartz\FirstStartz\Game\Game.cs(62)
at Game.Run()
at Game.Main() D:\Privat\XNA\Projects\FirstStartz\FirstStartz\Game\Game.cs(44)

After pressing the repeat button the game started

#2
09/06/2008 (11:38 am)
I have the same problem. Is there any workaroun for this? Cant see how anyone can do anything if the object type declaration isnt generated properly.

I have tried to add Terrain as an object type in


Terrain


and the game will start up without the assert.

*BUT* if I in the 3d builder press "update scene" the object types are overridden again with the default empty object type list . If if add the Terrain object type and restart the 3d builder it throws the following exception:


See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.InvalidCastException: Specified cast is not valid.
at TorqueXBuilder3D.SceneDataSerializer.Serialze(String OutputPath)
at TorqueXBuilder3D.FormMain.menuFileSaveScene_Click(Object sender, EventArgs e)
at DevComponents.DotNetBar.BaseItem.RaiseClick(eEventSource source)
at DevComponents.DotNetBar.BaseItem.InternalMouseUp(MouseEventArgs objArg)
at DevComponents.DotNetBar.PopupItem.InternalMouseUp(MouseEventArgs objArg)
at DevComponents.DotNetBar.ButtonItem.InternalMouseUp(MouseEventArgs objArg)
at DevComponents.DotNetBar.BaseItem.InternalMouseUp(MouseEventArgs objArg)
at DevComponents.DotNetBar.GenericItemContainer.InternalMouseUp(MouseEventArgs objArg)
at DevComponents.DotNetBar.Bar.OnMouseUp(MouseEventArgs e)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at DevComponents.DotNetBar.Bar.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
#3
09/07/2008 (3:19 am)
Just noticed the "Project/Set object types" menu where object types can be defined. If you add Terrain as an object type it should be added to the list and the level should load ok.