Ejemplo n.º 1
0
        internal static NormalPointerType OpenGLNormalPointerType(RVertexElementFormat elementFormat)
        {
            switch (elementFormat)
            {
            case RVertexElementFormat.Single:
                return(NormalPointerType.Float);

            case RVertexElementFormat.Vector2:
                return(NormalPointerType.Float);

            case RVertexElementFormat.Vector3:
                return(NormalPointerType.Float);

            case RVertexElementFormat.Vector4:
                return(NormalPointerType.Float);

            case RVertexElementFormat.Color:
                return(NormalPointerType.Byte);

            case RVertexElementFormat.Byte4:
                return(NormalPointerType.Byte);

            case RVertexElementFormat.Short2:
                return(NormalPointerType.Short);

            case RVertexElementFormat.Short4:
                return(NormalPointerType.Short);

            case RVertexElementFormat.NormalizedShort2:
                return(NormalPointerType.Short);

            case RVertexElementFormat.NormalizedShort4:
                return(NormalPointerType.Short);

            case RVertexElementFormat.HalfVector2:
                return(NormalPointerType.HalfFloat);

            case RVertexElementFormat.HalfVector4:
                return(NormalPointerType.HalfFloat);
            }

            throw new ArgumentException();
        }
Ejemplo n.º 2
0
        internal static int OpenGLNumberOfElements(RVertexElementFormat elementFormat)
        {
            switch (elementFormat)
            {
            case RVertexElementFormat.Single:
                return(1);

            case RVertexElementFormat.Vector2:
                return(2);

            case RVertexElementFormat.Vector3:
                return(3);

            case RVertexElementFormat.Vector4:
                return(4);

            case RVertexElementFormat.Color:
                return(4);

            case RVertexElementFormat.Byte4:
                return(4);

            case RVertexElementFormat.Short2:
                return(2);

            case RVertexElementFormat.Short4:
                return(2);

            case RVertexElementFormat.NormalizedShort2:
                return(2);

            case RVertexElementFormat.NormalizedShort4:
                return(4);

            case RVertexElementFormat.HalfVector2:
                return(2);

            case RVertexElementFormat.HalfVector4:
                return(4);
            }

            throw new ArgumentException();
        }
Ejemplo n.º 3
0
        internal static int GetSize(RVertexElementFormat elementFormat)
        {
            switch (elementFormat)
            {
            case RVertexElementFormat.Single:
                return(4);

            case RVertexElementFormat.Vector2:
                return(8);

            case RVertexElementFormat.Vector3:
                return(12);

            case RVertexElementFormat.Vector4:
                return(16);

            case RVertexElementFormat.Color:
                return(4);

            case RVertexElementFormat.Byte4:
                return(4);

            case RVertexElementFormat.Short2:
                return(4);

            case RVertexElementFormat.Short4:
                return(8);

            case RVertexElementFormat.NormalizedShort2:
                return(4);

            case RVertexElementFormat.NormalizedShort4:
                return(8);

            case RVertexElementFormat.HalfVector2:
                return(4);

            case RVertexElementFormat.HalfVector4:
                return(8);
            }
            return(0);
        }
Ejemplo n.º 4
0
 public RVertexElement(int offset, RVertexElementFormat elementFormat, RVertexElementUsage elementUsage)
 {
     this._offset = offset;
     this._format = elementFormat;
     this._usage  = elementUsage;
 }