コード例 #1
0
        public int AddFace(Face.Facing facing, float x, float y, float z, Vector3 size, ref Color color)
        {
            if (color == Color.Black)
            {
                Console.WriteLine("Black detected.");
            }
            for (int i = 0; i < buffers.Count; i++)
            {
                if (!buffers[i].Full)
                {
                    //int k = buffers[i].AddFace(Face.getFace(facing, new Vector3(x, y, z), size, color.ToVector3()));
                    int k = buffers[i].AddFace(Face.getInstancedFace(facing, new Vector3(x, y, z), size, color.ToVector3()));

                    if (k > -1)
                    {
                        return((i * Size) + k);
                    }

                    return(-1);
                }
            }

            buffers.Add(new BatchBuffer(Size));

            int j = buffers[buffers.Count - 1].AddFace(Face.getInstancedFace(facing, new Vector3(x, y, z), size, color.ToVector3()));

            if (j > -1)
            {
                return(((buffers.Count - 1) * Size) + j);
            }

            return(-1);
        }