Esempio n. 1
0
        static public TopCellInfo GenerateInfoNoTriangles(float cornerDistance, float rightDistance, float topRightDistance, float topDistance, ref int nextVertex, ref int nextTriIndex)
        {
            byte        config = CalcConfiguration(cornerDistance, rightDistance, topRightDistance, topDistance);
            TopCellInfo info   = new TopCellInfo
            {
                info = new CellInfo {
                    config = config, cornerDist = cornerDistance, rightDist = rightDistance, topDist = topDistance
                },
                verts = CreateCellVertices(config, ref nextVertex),
                tris  = new IndexSpan(nextTriIndex, 0)
            };

            return(info);
        }
Esempio n. 2
0
            public void Execute(int index)
            {
                int cellColNum = cornerColNum - 1;
                int x          = index % cellColNum;
                int y          = index / cellColNum;

                index = y * cornerColNum + x;

                TopCellInfo bl = infoArray[index];
                TopCellInfo br = infoArray[index + 1];
                TopCellInfo tr = infoArray[index + 1 + cornerColNum];
                TopCellInfo tl = infoArray[index + cornerColNum];

                CalculateIndices(orderer, bl.info.config, bl.tris.start, bl.tris, bl.verts, br.verts, tr.verts, tl.verts, triangles);
            }
Esempio n. 3
0
            public void Execute(int index)
            {
                TopCellInfo info = infoArray[index];

                vertexCalculator.CalculateVertices(index, info.info, info.verts, vertices);
            }