public static extern unsafe void FontEngineDrawTexture2(int textureNo1, float x, float y, float nw, float nh,
                                                         float uoff, float voff, float umax, float vmax,
                                                         uint color,
                                                         float[,] matrix, int textureNo2, float uoff2,
                                                         float voff2,
                                                         float umax2, float vmax2,
                                                         FontEngineBlendMode blendMode);
Beispiel #2
0
            /// <summary>
            /// Draw a texture rotated around (x,y) blended with a diffuse texture.
            /// </summary>
            /// <param name="x"></param>
            /// <param name="y"></param>
            /// <param name="nw"></param>
            /// <param name="nh"></param>
            /// <param name="zrot"></param>
            /// <param name="uoff"></param>
            /// <param name="voff"></param>
            /// <param name="umax"></param>
            /// <param name="vmax"></param>
            /// <param name="color"></param>
            /// <param name="diffuseTextureNo"></param>
            /// <param name="uoffd"></param>
            /// <param name="voffd"></param>
            /// <param name="umaxd"></param>
            /// <param name="vmaxd"></param>
            public void Draw(float x, float y, float nw, float nh, float zrot, float uoff, float voff, float umax, float vmax,
                             uint color, int blendableTextureNo, float uoffd, float voffd, float umaxd, float vmaxd,
                             FontEngineBlendMode blendMode)
            {
                if (_textureNumber >= 0)
                {
                    // Rotate around the x,y point of the specified rectangle; maintain aspect ratio (1.0f)
                    TransformMatrix localTransform = new TransformMatrix();
                    localTransform.SetZRotation(zrot, x, y, 1.0f);
                    TransformMatrix finalTransform = GUIGraphicsContext.GetFinalTransform();
                    localTransform = finalTransform.multiply(localTransform);

                    DXNative.FontEngineDrawTexture2(_textureNumber, x, y, nw, nh, uoff, voff, umax, vmax,
                                                    color, localTransform.Matrix,
                                                    blendableTextureNo, uoffd, voffd, umaxd, vmaxd,
                                                    blendMode);
                }
                else
                {
                    if (logTextures)
                    {
                        Log.Info("fontengine:Draw() ERROR. Texture is disposed:{0} {1}", _textureNumber.ToString(), _imageName);
                    }
                }
            }
Beispiel #3
0
 public static extern unsafe void FontEngineDrawMaskedTexture2(int textureNo1, float x, float y, float nw, float nh,
                                                               float uoff, float voff, float umax, float vmax,
                                                               uint color,
                                                               float[,] matrix, int textureNo2, float uoff2,
                                                               float voff2,
                                                               float umax2, float vmax2, int textureNo3, float uoff3,
                                                               float voff3, float umax3, float vmax3,
                                                               FontEngineBlendMode blendMode);
Beispiel #4
0
    /// <summary>
    /// Draw a texture rotated around (x,y) blended with a diffuse texture.
    /// </summary>
    /// <param name="x"></param>
    /// <param name="y"></param>
    /// <param name="nw"></param>
    /// <param name="nh"></param>
    /// <param name="zrot"></param>
    /// <param name="uoff"></param>
    /// <param name="voff"></param>
    /// <param name="umax"></param>
    /// <param name="vmax"></param>
    /// <param name="color"></param>
    /// <param name="diffuseTextureNo"></param>
    /// <param name="uoffd"></param>
    /// <param name="voffd"></param>
    /// <param name="umaxd"></param>
    /// <param name="vmaxd"></param>
    public void Draw(float x, float y, float nw, float nh, float zrot, float uoff, float voff, 
                     float umax, float vmax, uint color, int blendableTextureNo, float uoffd, 
                     float voffd, float umaxd, float vmaxd, FontEngineBlendMode blendMode)
    {
      if (_textureNumber >= 0)
      {
        // Rotate around the x,y point of the specified rectangle; maintain aspect ratio (1.0f)
        TransformMatrix localTransform = new TransformMatrix();
        localTransform.SetZRotation(zrot, x, y, 1.0f);
        TransformMatrix finalTransform = GUIGraphicsContext.GetFinalTransform();
        localTransform = finalTransform.multiply(localTransform);

        DXNative.FontEngineDrawTexture2(_textureNumber, x, y, nw, nh, uoff, voff, umax, vmax,
                               color, localTransform.Matrix,
                               blendableTextureNo, uoffd, voffd, umaxd, vmaxd,
                               blendMode);
      }
    }
Beispiel #5
0
 private static extern unsafe void FontEngineDrawTexture2(int textureNo1, float x, float y, float nw, float nh,
                                                          float uoff, float voff, float umax, float vmax, int color,
                                                          float[,] matrix, int textureNo2, float uoff2, float voff2,
                                                          float umax2, float vmax2,
                                                          FontEngineBlendMode blendMode);