// Constructor
 public WorldVertex(FlatVertex v, float z)
 {
     this.x = v.x;
     this.y = v.y;
     this.z = z;
     this.c = v.c;
     this.u = v.u;
     this.v = v.v;
 }
示例#2
0
        // This sets up vertices for a specific character
        // also advances vertsoffset and textx
        public void SetupVertices(DataStream stream, byte c, float scale, int color,
                                  ref float textx, float texty, float textheight, float offsetv)
        {
            FlatVertex    vert = new FlatVertex();
            FontCharacter cinfo;
            float         cwidth;

            // Get the character information
            cinfo  = characters[c];
            cwidth = cinfo.width * scale;

            // Create lefttop vertex
            vert.c = color;
            vert.u = cinfo.u1;
            vert.v = cinfo.v1 * 0.5f + offsetv;
            vert.x = textx;
            vert.y = texty;
            stream.Write <FlatVertex>(vert);

            // Create leftbottom vertex
            vert.c = color;
            vert.u = cinfo.u1;
            vert.v = cinfo.v2 * 0.5f + offsetv;
            vert.x = textx;
            vert.y = texty + textheight;
            stream.Write <FlatVertex>(vert);

            // Create righttop vertex
            vert.c = color;
            vert.u = cinfo.u2;
            vert.v = cinfo.v1 * 0.5f + offsetv;
            vert.x = textx + cwidth;
            vert.y = texty;
            stream.Write <FlatVertex>(vert);

            // Create leftbottom vertex
            vert.c = color;
            vert.u = cinfo.u1;
            vert.v = cinfo.v2 * 0.5f + offsetv;
            vert.x = textx;
            vert.y = texty + textheight;
            stream.Write <FlatVertex>(vert);

            // Create righttop vertex
            vert.c = color;
            vert.u = cinfo.u2;
            vert.v = cinfo.v1 * 0.5f + offsetv;
            vert.x = textx + cwidth;
            vert.y = texty;
            stream.Write <FlatVertex>(vert);

            // Create rightbottom vertex
            vert.c = color;
            vert.u = cinfo.u2;
            vert.v = cinfo.v2 * 0.5f + offsetv;
            vert.x = textx + cwidth;
            vert.y = texty + textheight;
            stream.Write <FlatVertex>(vert);

            textx += (cwidth + (ADJUST_SPACING * scale));
        }