Export back face culling flag, textures, and transparency flag.

git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4052 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Andrzej Kapolka
2006-04-24 22:07:47 +00:00
parent a4c7ecb5e3
commit 2f1a10c911
3 changed files with 30 additions and 6 deletions
@@ -76,15 +76,21 @@ public class ModelMesh extends TriMesh
}
/**
* Configures this mesh based on the given (sub-)properties.
* Configures this mesh based on the given parameters and (sub-)properties.
*
* @param texture the texture specified in the model export, if any (can be
* overridden by a texture specified in the properties)
* @param solid whether or not the mesh allows back face culling
* @param transparent whether or not the mesh is (partially) transparent
*/
public void configure (Properties props)
public void configure (
boolean solid, String texture, boolean transparent, Properties props)
{
_boundingType = "sphere".equals(props.getProperty("bound")) ?
SPHERE_BOUND : BOX_BOUND;
_texture = props.getProperty("texture");
_solid = !"false".equals(props.getProperty("solid"));
_transparent = "true".equals(props.getProperty("transparent"));
_texture = props.getProperty("texture", texture);
_solid = solid;
_transparent = transparent;
}
/**
@@ -108,6 +108,15 @@ public class ModelDef
/** A rigid triangle mesh. */
public static class TriMeshDef extends SpatialDef
{
/** Whether or not the mesh allows back face culling. */
public boolean solid;
/** The texture of the mesh, if any. */
public String texture;
/** Whether or not the mesh is (partially) transparent. */
public boolean transparent;
/** The vertices of the mesh. */
public ArrayList<Vertex> vertices = new ArrayList<Vertex>();
@@ -139,7 +148,7 @@ public class ModelDef
protected ModelMesh configure (ModelMesh mmesh, Properties props)
{
// configure using properties
mmesh.configure(props);
mmesh.configure(solid, texture, transparent, props);
// set the various buffers
int vsize = vertices.size();