示例#1
0
    public void DrawTriangles(int offset, int count)
    {
        APIVertexBuffer vertexBuffer = APIContext.dataBuffer.vertexBuffer;

        for (int i = offset; i < count;)
        {
            AppData appData = new AppData();

            appData.pos    = vertexBuffer.positions[i];
            appData.pos.w  = 1f;
            appData.color  = vertexBuffer.colors[i];
            appData.uv     = vertexBuffer.uvs[i];
            appData.normal = vertexBuffer.normals[i];
            _VertData0     = _Shader.Vertex(appData);
            i++;

            appData.pos    = vertexBuffer.positions[i];
            appData.pos.w  = 1f;
            appData.color  = vertexBuffer.colors[i];
            appData.uv     = vertexBuffer.uvs[i];
            appData.normal = vertexBuffer.normals[i];
            _VertData1     = _Shader.Vertex(appData);
            i++;

            appData.pos    = vertexBuffer.positions[i];
            appData.pos.w  = 1f;
            appData.color  = vertexBuffer.colors[i];
            appData.uv     = vertexBuffer.uvs[i];
            appData.normal = vertexBuffer.normals[i];
            _VertData2     = _Shader.Vertex(appData);
            i++;

            DrawTriangle();
        }
    }
示例#2
0
 public APIDataBuffer()
 {
     _VertexBuffer = new APIVertexBuffer();
 }