Azatoth
24-02-2008 17:34:19
I've integrated the plugin into my project. There's some blogging about it here and some screen shots here.. There are some issues with colouring and lightning, but overall it looks good. In the process I patched the code a bit. Here's a diff file of my changes: forest20080223.diff. It's done against the cvs version as of 2008-02-23.
The changes I've made is:
The changes I've made is:
moved it to a PagedGeometry namespace to prevent it from collidiing with application classes
fixed ogre library header include directives
properly cast PixelBox::data when deleting
handle meshes with invalid materials in BatchedGeometry
separate the grass generating functionality to the placement functinality in GrassLayer. This is done by providing a base class, GrassLayerBase, and a default subclass, GrassLayer. The GrassLayerBase only handles grass creation and provides abstract methods for determining grass placement, which are then implemented by GrassLayer, or any other subclass. This allows for developers to easier provide their own placement schemes, while reusing the grass creation functionality in GrassLayerBase. As a result, the GrassLoader class has been extended with a class template parameter, for example GrassLoader<GrassLayer>
added a preprocessor directive to ImpostorPage, IMPOSTOR_FILE_SAVE, which if set to 1 will not use images saved to the disc for the impostor texture
make ImpostorPage better handle entities by disabling max render distance, detaching from existing scene nodes and making sure it is visible
[/list:u]
All functionality is intact, but there are two API changes. One is that the namespace has changed, and the other is that you must specify the GrassLayer class when creating a GrassLoader (GrassLoader<GrassLayer>)
Overall I'm very pleased with the whole plugin, and how easy it is to extend it.