我们现在用的是比较老的版本了，昨天特意到官网上问那个作者，终于得到了明确答复，说是8月中旬就会发布新版本。贴一些作者说的话：Yeah, I'm currently hard at work on the core engine, as the editor is nearly complete. The major feature I need to add for the editor is the ability to add new object definitions without needing to go through text files, but I'm a bit burned out on the editor part so I'm taking a break and working on one of the biggest engine features that needs some work: handling meshes.
Basically I'm reworking the MeshGameObject class completely so it's more viable for large worlds.
As far as features go before I release alpha, the list is still sorta large.
1. Finish the physics system so that it can be used for character movement.
2. An attachment system to be able to specify attachment locations on an object and attach any other object to it.
3. Mesh animation, animation blending, animation sharing between objects.
4. Character class which plays animations based on current state (movement direction, velocity, jumping, strafing, etc.)
5. Redo the mesh system (in progress). This is a biggy and involves a lot crazy stuff that is too complex to explain in bullet point. Basically, will be using all of Ogre's advanced features for mesh lods, material lods, etc. but also tie into background resource loading, load only the lods that are necessary, track which lods are currently loaded, etc.
6. Ability to add, update and delete meta objects from the editor using property dialog functionality. Once a meta object is updated, call a function on all objects that use that meta data so they can update themselves with newest data.
7. Managed material system
8. Create plugins of all dlls and dynamically load.
9. Create a viewer application that is separate from the editor and can load any world file.
10. Update the lighting system, particle system, to use new fading code based on updated mesh code
Those are my major todos, once finished and tested I release alpha. I will likely update CVS after I get the meta objects finished though. I may also fit in the vegetation system before I release alpha. How long will the above list take? Based on my current speed of development, 3 months.
I have a core list of features that I think are necessary for an engine, and they include:
1. Physics simulation, character movement, vehicles, damage, explosions, breakable objects
2. Lighting - ambient occlusion, realtime lighting and shadows. Lighting manager is required to control ambient, shadows when moving from interior to exterior
3. Trees and vegetation
4. Dynamic environment. Sky transitioning, clouds, fog, global ambient, sun position and direction, sun glare, dynamic shadows
5. Networking using ReplicaNet. Run GOOF engine in server mode where it doesn't initialize any rendering systems. Update all objects to know whether they're being created on standalone server or not.
6. Sound management, 2d sounds, 3d sounds, sound line, background music.
7. Doors, triggers, elevators
8. In-game cutscenes
9. Background loading, resource garbage collection, forced loading
10. AI framework
11. Character inventory, equipping with 3 clothing types: shared skeleton, individual skeleton, attached to bone
12. Terrain with splatting
The above will take me years unless I have help
Oh yeah, the editor is very nice now, in my opinion.
Not only did I port to wxWidgets, I fixed and added a lot of general features to the GOOF Engine Editor Tool (the tool for creating scenes for the GOOF engine).
1. Multi select objects from the selection dialog
2. Ctrl drag to box select objects in the viewport, or Alt drag to box unselect, with selection lines to show what you're selecting.
3. Option to orient objects to the normal of the collided object when in drag mode. Means you can basically drag things up walls now if you're in a room and the object, such as a painting, will orient to the wall you drag it along.
4. Redid the movement axis manipulator so it now moves to exactly where you want it to move to instead of sliding along crazily.
5. Added a line that shows what you're linking to when you are in link mode.
6. Tree view for the select dialog, with scene hierarchy
7. Ability to click and edit partition properties from the same select dialog, and shows objects under their partition with the active partition listed at the top.
8. Obviously, all the wxWidgets stuff such as window snapping, toolbar, menu, automatic viewport resizing, view menu which lists windows, redid all the open/save functionality to support a standard file dialog, etc.
Fixed tons of bugs. Undo system works now. Linking and unlinking objects fixed. Deleting multiple objects fixed when there are parent/child relationships between objects. The movement axis manipulator fixed. Fixed dragging over other objects - the object used to jump around crazily.
Probably tons more as well, but this is what I remember off the top of my head.