Author: lidong wang
Project: External Project (Sourceforge)(Forum topic)
Supported Platforms: Windows
License: BSD License
Documentation: Class Information (chm)
bug reports: Sourceforge
~~#C00:Project state: outdated (lastest update in ~2007)~~ Maybe it's still usable?
xgEditor is a DCC tool/editor for use with the OGRE engine. xgEditor provide some basic feature currently.
the file format that the xgEditor use is a custom xml based file, the xgEditor have provide a example to load and display the xgEditor's .scene filehttp://downloads.sourceforge.net/xgeditor/xgSceneViewer_src_2007_8_12.rar?modtime=1187703352&big_mirror=0.
Currently Supports / Features:
- add mesh file to scene
- add particle file to scene
- add light to scene
- add help box to scene
- move rotate object
you must edit xgEditorConfig.xml after your download.
the editor use xgEditorConfig.xml plugins.cfg ogre.cfg as the config file,the editor don't use resources.cfg.
the xgSceneViewer.exe use resources.cfg plugins.cfg ogre.cfg as the config file.
<?xml version="1.0" encoding="GB2312" standalone="yes" ?> <xgEditorConfig> <--if you want reconfig the render api(dx or gl) or the editor start failed,set runSuccess to 0,when editor start failed or crashed,editor will set this value to 0 so that you can reselect the render, because some error maybe caused by render config error,so when start failed, maybe it will start success next time--> <runSuccess>1</runSuccess> <-- record the window frame layout,generate by editor ,don't modify it manually --> <frameLayout>layout2|name=property;caption=property;state=2044;dir=2;layer=0;row=0;po s=1;prop=128450;bestw=256;besth=50;minw=-1;minh=-1;maxw=-1;maxh=-1;floatx=225;floaty= 108;floatw=264;floath=78|name=tools;caption=tool;state=2044;dir=2;layer=0;row=0;pos=0;prop =135372;bestw=300;besth=100;minw=300;minh=100;maxw=-1;maxh=-1;floatx=8;floaty=54;floa tw=308;floath=446|name=view;caption=workspace;state=1020;dir=5;layer=0;row=0;pos=0;prop= 100000;bestw=16;besth=16;minw=-1;minh=-1;maxw=-1;maxh=-1;floatx=-1;floaty=-1;floatw=-1; floath=-1|name=log;caption=log;state=2099198;dir=2;layer=0;row=0;pos=3;prop=36178;bestw=1 24;besth=60;minw=-1;minh=-1;maxw=-1;maxh=-1;floatx=218;floaty=712;floatw=132;floath=88| dock_size(2,0,0)=302|dock_size(5,0,0)=18|</frameLayout> <--internal use for record directory visit history --> <resInsertToolDirInitDir>U:\setup\data\mesh\laser\laser.mesh</resInsertToolDirInitDir> <--editor will load all xml file that defined game entity in entityXmlRootDir,you can study data\entity\entity.xml for it's format --> <--the game entity is some tag that you can put into editor's scene and scene file, the game entity always representation by some mesh in editor -> <entityXmlRootDir>U:\xg\bin\data\config\entity</entityXmlRootDir> <--resRootPath must use this format as c:\mesh\ not c:\mesh --> <--editor will save all resourceLoaction which under resRootPath to scene file's resourceLocations element use related path,other's use absolute path--> <resRootPath>U:\setup\</resRootPath> <--the path must in this fomat data\mesh\ not data\mesh --> <--editor will load all the path list in resPathList to ogre's resourceLocation--> <--after load this path,the editor will refresh the editor's particle list,so if you want some particle list in editor's particle list, you'd better put particle's dir in this list. there is another two way to add particle to particle list also,one way,when you click some .mesh file in editor's resource explorer , editor will check that mesh's path in the path list that ogre have loaded, if it is not exist,editor will let ogre load the path of the selected .mesh file, after ogre load this path,the ogre will add all the particle's define template in this path,and also materail and other things that ogre' load method can do,after ogre load this path,editor will refresh the particle list.way two,you can drug one or more .mesh file from windows explorer direct to editor's view window,editor will check and load the .mesh file's path at first,then load those mesh in droped, in the same time, editor will refresh particle list also, because when ogre load some new path, it will load particle defined file,materail etc.--> <resPathList> <path>data\mesh\editor\</path> <path>data\particle\</path> <path>data\materials\programs\</path> <path>data\materials\scripts\</path> <path>data\materials\textures\</path> </resPathList> <--editor will load all the directory of entityMeshRootDir and its subdir to ogre's resourceLocation, not use ogre's recusive method but insert it and it's subdir muanul one by one.--> <--why we need this path,it's mainly used for editor's entity window's entity list,there is only some mesh name in the entity config always, so if we don't load those path that those mesh file in, the editor won't find those location,so we need entityMeshRootDir to be define, let editor load those path and it's sub path.--> <entityMeshRootDir>U:\setup\xgEditorSetup\data\mesh\</entityMeshRootDir> </xgEditorConfig>
first select the opration method
use mouse select the object with left mouse down and don't let it up,move mouse,the object
when mouse move,try use with Ctrl Alt for other function
first select a mesh file
when you click some point of view window,it will drop the mesh at that position
editor will list all the particle that ogre has loaded current,you can add particle path
to resPathList in xgEditorConfig.xml so that editor will load it when starting.
editor will load all game entity file define in xml file,those xml file must put in
<entityXmlRootDir></entityXmlRootDir> directory,you can study data\entity\entity.xml for it's
-->sector and ai navi tool
this is use for my project, you can use it if you need
when error occured,editor will out the error message to the console window with the xgEditor
the editor's .scene.xml file
the editor will save all filesystem path to scene file,when xgEditor.exe or xgSceneViewer.exe load
scene file,all of the resourceLocations will load into resource find path.
the xgSceneViewer can load that .scene.xml that generated by xgEditor.
the src of xgSceneViewer.exe is more useful for those who want know how to load the editor's
the xgEditor's src denpend on follow wonderful library when it's deving.
ogre-win32-v1-4-3 in dll mode
wxWidgets-2.8.0 in dll mode
wxpropgrid-1.2.5 in dll mod
vc_2005_sp1 which is needed by ogre
Questions, comments, feature requests, bug reports, etc are always appreciated. You can comment herehttp://www.ogre3d.org/phpBB2/viewtopic.php?p=244459#244459 or in the http://sourceforge.net/forum/forum.php?forum_id=727365. Please report any bugs you find.