Rev 1720 |
Blame |
Compare with Previous |
Last modification |
View Log
| RSS feed
package com.gebauz.bauzoid2.graphics.model;
import com.gebauz.bauzoid2.graphics.geometry.Geometry;
import com.gebauz.bauzoid2.graphics.geometry.IndexStream;
import com.gebauz.bauzoid2.graphics.geometry.VertexStream;
/**
* Created by chris on 12.12.2014.
*/
public class Mesh
{
// Constants========================================================================================
// Embedded Types===================================================================================
// Fields===========================================================================================
private Geometry mGeometry = null;
private MeshGroup[] mMeshGroups = null;
/*private VertexStream mVertexStream = null;
private IndexStream mIndexStream = null;*/
// Methods==========================================================================================
public Mesh()
{
mGeometry = new Geometry(Geometry.PrimitiveType.TRIANGLES);
}
public void dispose()
{
destroyGroups();
if (mGeometry != null)
{
mGeometry.dispose();
mGeometry = null;
}
}
public void destroyGroups()
{
if (mMeshGroups != null)
{
//for (int i = 0; i < mGroups.length; i++)
for (MeshGroup group : mMeshGroups)
group.dispose();
mMeshGroups = null;
}
}
public void render(int firstIndex, int lastIndex)
{
mGeometry.renderIndices(firstIndex, lastIndex);
}
// Getters/Setters==================================================================================
public final void setGeometry(Geometry geometry) { mGeometry = geometry; }
public final Geometry getGeometry() { return mGeometry; }
/*public final void setVertexStream(VertexStream vs) { mVertexStream = vs; }
public final VertexStream getVertexStream() { return mVertexStream; }
public final void setIndexStream(IndexStream is) { mIndexStream = is; }
public final IndexStream getIndexStream() { return mIndexStream; }*/
public final void setMeshGroups(MeshGroup[] groups)
{
mMeshGroups = groups;
}
public final MeshGroup[] getMeshGroups()
{
return mMeshGroups;
}
}