Main Page | Modules | Namespace List | Class Hierarchy | Class List | Namespace Members | Class Members | Related Pages

Todo List

Member openvrml::vrml97_node::abstract_geometry_node::viewerObject
Move this to node?

Class openvrml::vrml97_node::audio_clip_node
Implement sound support.

Member openvrml::vrml97_node::audio_clip_node::update (double time)
Implement me!

Class openvrml::axis_aligned_bounding_box
This class is currently just a placeholder.

Member openvrml::axis_aligned_bounding_box::enclose (const std::vector< vec3f > &points)
Implement me!

Member openvrml::axis_aligned_bounding_box::extend (const bounding_sphere &b)
Implement me!

Member openvrml::axis_aligned_bounding_box::extend (const axis_aligned_bounding_box &b)
Implement me!

Member openvrml::axis_aligned_bounding_box::extend (const vec3f &p)
Implement me!

Member openvrml::axis_aligned_bounding_box::intersect_frustum (const openvrml::frustum &frustum) const
Implement me!

Member openvrml::bounding_sphere::extend (const axis_aligned_bounding_box &b)
Implement me!

Member openvrml::browser::create_vrml_from_url (const std::vector< std::string > &url, const node_ptr &node, const std::string &event)
Implement me!

Member openvrml::browser::load_url (const std::vector< std::string > &url, const std::vector< std::string > &parameter)
Make this asynchronous.

Member openvrml::browser::replace_world (const std::vector< node_ptr > &nodes)
Implement me!

Member openvrml::browser::event_mem [max_events]
The event queue ought to be sorted by timestamp.

Member openvrml::geometry_node::color () const
Reevaluate the way the renderer visits geometry nodes; potentially eliminate this method.

Member openvrml::vrml97_node::indexed_face_set_node::insert_geometry (openvrml::viewer &viewer, rendering_context context)
stripify, crease angle, generate normals ...

Member openvrml::vrml97_node::indexed_line_set_node::insert_geometry (openvrml::viewer &viewer, rendering_context context)
colors

Member openvrml::vrml97_node::inline_node::process_set_url (const field_value &value, double timestamp)
Currently this only changes the field value; it does not load a new Scene.

Member openvrml::node::bounding_volume (const openvrml::bounding_volume &v)
Implement me!

Member openvrml::vrml97_node::pixel_texture_node::render (openvrml::viewer &viewer, rendering_context context)
Currently we modify the image when rescaling it to have 2n sides. This is wrong. We should maintain a cache of rescaled images in the renderer.

Member openvrml::vrml97_node::plane_sensor_node::activate (double timeStamp, bool isActive, double *p)
The local coords are computed for one instance; do we need to convert p to local coords for each instance (USE) of the sensor?

Member openvrml::scene::load_url (const std::vector< std::string > &url, const std::vector< std::string > &parameter)
This method currently fails silently if any of the URIs in url is invalid. Should this throw invalid_url?

Member openvrml::vrml97_node::spot_light_node::renderScoped (openvrml::viewer &viewer)
This should be called before rendering any geometry in the scene. Since this is called from Scene::render before traversing the scene graph, the proper transformation matrix hasn't been set up. Somehow it needs to figure out the accumulated xforms of its parents and apply them before rendering. This is not easy with DEF/USEd nodes...

Class openvrml::texture_node
Clean this up. It would be better just to have an accessor for an SFImage along with the repeatS and repeatT accessors.

Member openvrml::texture_node::frames () const=0
This needs to go away. Time-dependent textures might not be frame-based. For instance, consider an SVG animation.

Member openvrml::vrml97_node::touch_sensor_node::activate (double timeStamp, bool isOver, bool isActive, double *p)
Doesn't compute the xxx_changed eventOuts yet...

Member openvrml::gl::viewer::insert_point_light (float ambientIntensity, const vec3f &attenuation, const color &color, float intensity, const vec3f &location, float radius)
Only objects within radius should be lit by each PointLight. Test each object drawn against each point light and enable the lights accordingly? Get light and geometry into consistent coordinates first.

Member openvrml::gl::viewer::insert_spot_light (float ambientIntensity, const vec3f &attenuation, float beamWidth, const color &color, float cutOffAngle, const vec3f &direction, float intensity, const vec3f &location, float radius)
Same comments as for PointLight apply here.

Member openvrml::viewer::frustum () const
We're forcing everybody to carry around a frustum whether they want it or not. It shouldn't be used except for debugging and stuff since it might not be valid in some implementations