Subversion Repositories AndroidProjects

Rev

Rev 185 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package com.gebauz.Bauzoid.graphics.model;

/** Implementation of the SUX Model format (subset). */
public class Model
{
        private String mName;
        private Mesh[] mMeshes = null;
       
        /** Constructor. */
        public Model(String name)
        {
                mName = name;
        }
       
        /** Update internals. */
        public void update(float deltaTime)
        {
               
        }
       
        /** Render the model. */
        public void render()
        {
                for (int i = 0; i < mMeshes.length; i++)
                {
                        mMeshes[i].render();
                }
        }
       
        /** Upload the internal geometry to hardware. */
        public void upload()
        {
                for (int i = 0; i < mMeshes.length; i++)
                {
                        mMeshes[i].getGeometry().upload();
                }
        }
       
        /** Unload internal geometry from hardware. */
        public void unload()
        {
                for (int i = 0; i < mMeshes.length; i++)
                {
                        mMeshes[i].getGeometry().unload();
                }
        }
       
        /** Get number of meshes. */
        public final int getMeshCount()
        {
                return mMeshes.length;
        }
       
        /** Get a single mesh. */
        public final Mesh getMesh(int i)
        {
                return mMeshes[i];
        }
       
        /** Get a mesh by name. */
        public final Mesh getMesh(String name)
        {
                for (int i = 0; i < mMeshes.length; i++)
                {
                        if (mMeshes[i].getName().equalsIgnoreCase(name))
                                return mMeshes[i];
                }
                return null;
        }
       
        /** Set the meshes. */
        public final void setMeshes(Mesh[] meshes)
        {
                mMeshes = meshes;
        }
       
        /** Get the mesh name. */
        public final String getName()
        {
                return mName;
        }
       
}