148 lines
6.1 KiB
Plaintext
148 lines
6.1 KiB
Plaintext
OSG TODO List
|
|
=============
|
|
|
|
Main categories
|
|
===============
|
|
|
|
o Core OSG Library
|
|
- the core OSG library itself (include/OSG and src/)
|
|
o Reader/writer plug-ins
|
|
- the reader/writers plug-ins for third party file formats.
|
|
o Viewers & Application plug-ins
|
|
- osg viewers and plug-ins to third party applications such as Netscape.
|
|
o Under development
|
|
- listing of TODO items which are currently under developement.
|
|
o Work completed
|
|
- listing of TODO items which have been done and hence removed
|
|
from the above TODO catagories.
|
|
--
|
|
|
|
o Core OSG Library
|
|
================
|
|
- General
|
|
. Header & code documentation/reference guide.
|
|
. Programming guide.
|
|
. Naming conventions.
|
|
. mutli-threading/shared memory support.
|
|
|
|
- Maths
|
|
. full maths support in osg::Matrix class.
|
|
. double matrix class.
|
|
. osg::Plane class.
|
|
|
|
- Nodes
|
|
. add osg::Sequence for basic animation.
|
|
. add osg::Morph for interpolating between geometries.
|
|
. add osg::Engine.
|
|
. add support for Multi-texturing into osg::GeoSet/osg::GeoState.
|
|
. add support for pixel/vertex shaders into osg::GeoSet/osg::GeoState.
|
|
. utilise stl vectors for osg::GeoSets?
|
|
. add handling of memory of osg::GeoSet's attributes.
|
|
. add osg::Terrain node.
|
|
. add osg::EarthSky class for rendering earth and sky backgrounds.
|
|
. add proxy node for lazy loading of nodes, when needed.
|
|
. implement visual proximity to assist loading of proxied data
|
|
when the view frustum nears an unloaded proxy node, and deleting
|
|
of unused proxied data.
|
|
. implement support for modified status/lazy evaluation of node data
|
|
and observer style pattern.
|
|
. manipulator decoration nodes?
|
|
. spacial subdivision decoration nodes?
|
|
|
|
- Visitors
|
|
. improve state sorting of opaque bins in osg::RenderBin.
|
|
. add statistics visitor for logging the stats of the scene graph.
|
|
. add OpenGL picking visitor.
|
|
|
|
- IO/Plug-in support
|
|
. improve the ascii parsing class osg::Field, osg::FieldReader etc.
|
|
. change the osg::Registry to timestamp registrations of objects/RW's.
|
|
. add support for file path logging into osg::Input.
|
|
. add binary data reading and writing into osg::Input/osg::Output to
|
|
support part binary .osg files.
|
|
. return error messages of on failed loading/saving.
|
|
|
|
|
|
o Reader/writer plug-ins
|
|
=======================
|
|
- .iv/.wrl Inventor/VRML ascii.
|
|
- .dxf Autocads ascii format.
|
|
- .dem digital elevation map.
|
|
- .d3d? MS's Direct 3D file formats if they have one..
|
|
- .bmp Windows Bitmap files.
|
|
- .Z Automatic unzipping of Unix Compress files.
|
|
- .tar Automatic unpacking of directories and loading of contents.
|
|
|
|
|
|
o Viewers & Application plug-ins
|
|
===============================
|
|
- OSG scene graph viewer - sgv.
|
|
. add command line reading for specifying data search paths and data,
|
|
-D for data search path, -d for data.
|
|
. add command line reading for specifying library search paths and
|
|
libraries/plug-ins, -D for library search path, -l for libraries.
|
|
- Internet Explorer plug-in.
|
|
- .osg to Inventor file plug-in.
|
|
- Tutorials example programs.
|
|
|
|
|
|
o Under development
|
|
=================
|
|
Sign up here if would like to take on a task :-)
|
|
|
|
- add osg::Billboard for trees etc.
|
|
- full maths support in osg::Matrix class.
|
|
- Netscape plug-in.
|
|
- add osg::Channel/sgCamera class.
|
|
- .pfb loader for Performer binary files (functioning already.)
|
|
- .flt Open Flight format (functioning already.)
|
|
- .3ds 3D Studio format (functioning already.)
|
|
- autoconf/configure support to aid portabilty to other unix's.
|
|
- CVS support for when source is made fully public.
|
|
- Mac port.
|
|
- tri stripping visitor.
|
|
- .obj Alias wavefront's format.(functioning already.)
|
|
- .lwo Light Waves's format.(functioning already.)
|
|
|
|
o Work completed
|
|
==============
|
|
- osg namespace implemented.
|
|
- reduce the STL platform specific #ifdef's.
|
|
- remove using namespace from all header files, so not to pollute user space.
|
|
- remove the sg prefix from sgNode etc, now that the osg namespaces exits.
|
|
- FAQ for distribution and web site.
|
|
- full maths support in osg::Vec2, osg::Vec3 and osg::Vec4.
|
|
- change the osg::Registry to use plug-in RW's on loading a plug-in
|
|
instead of the plug-in functions found in sg.cxx.
|
|
- add support for removal of plug-ins from osg::Registry,
|
|
- add .osg support into DCS node.
|
|
- clean up inheritance relationship between osg::Node, osg::Object etc.
|
|
- add osg::Switch for handling optional rendering of children.
|
|
- add osg::LOD (level of detail) group node for load management.
|
|
- add view frustrum culling into osg::RenderVisitor.
|
|
- add support for mutliply referenced nodes into osg::Input.
|
|
- add a quaternion class.
|
|
- improve osg::BoundingBox and osg::BoundingSphere.
|
|
- add hit and intersect classes for collision detection.
|
|
- add intersect visitor.
|
|
- add camera manipualotors for trackball, drive and flight mouse control.
|
|
- add compile OpenGL display lists visitor (currently in sgv).
|
|
- library version and description functions.
|
|
- add support for OpenGL Vertex Array into osg::GeoSet.
|
|
- .gif GIF Images!
|
|
- .jpg JPEG Images.
|
|
- .tiff TIFF Images.
|
|
- .png PNG Images.
|
|
- .tga TGA Images.
|
|
- .pic PIC Images.
|
|
- add timing/timestamp class.
|
|
- document how to get the OSG compiled and running under all
|
|
platforms, Win32 being priority as it's the least obvious.
|
|
- .gz (as osgtgz and .tgz) Automatic unzipping of GNU zipped files.
|
|
- .zip Automatic unzipping of windows zipped files.
|
|
- add osg::State for mainting image of the OpenGL state.
|
|
- improve osg::GeoState -> improved version call osg::StateSet.
|
|
- create a base class to provide interface to objects which can render,
|
|
derive osg::GeoSet from this.
|
|
- add support for multi-pass rendering.
|