$#include "CustomGeometry.h" struct CustomGeometryVertex { Vector3 position_ @ position; Vector3 normal_ @ normal; unsigned color_ @ color; Vector2 texCoord_ @ texCoord; Vector4 tangent_ @ tangent; }; class CustomGeometry : public Drawable { void Clear(); void SetNumGeometries(unsigned num); void SetDynamic(bool enable); void BeginGeometry(unsigned index, PrimitiveType type); void DefineVertex(const Vector3& position); void DefineNormal(const Vector3& normal); void DefineTangent(const Vector4& tangent); void DefineColor(const Color& color); void DefineTexCoord(const Vector2& texCoord); void DefineGeometry(unsigned index, PrimitiveType type, unsigned numVertices, bool hasNormals, bool hasColors, bool hasTexCoords, bool hasTangents); void Commit(); void SetMaterial(Material* material); bool SetMaterial(unsigned index, Material* material); unsigned GetNumGeometries() const; unsigned GetNumVertices(unsigned index) const; bool IsDynamic() const; Material* GetMaterial(unsigned index = 0); CustomGeometryVertex* GetVertex(unsigned geometryIndex, unsigned vertexNum); tolua_property__get_set Material* material; tolua_property__get_set unsigned numGeometries; tolua_property__is_set bool dynamic; };