Example #1
0
        void Create(StringBuilder name, int width, int height, TextureFormat format, bool renderTargetUse)
        {
            Engine.Log.AddInformation(TAG, new StringBuilder("Creating " + name));

            this.Format = format;

            DXGIFORMAT dxFormat = (DXGIFORMAT)0;

            if (format == TextureFormat.RGBA)
            {
                dxFormat = DXGIFORMAT.DXGI_FORMAT_R8G8B8A8_UNORM;
            }

            Internal = new GraphicsEngineSpace._Texture2D(Engine.Device, name.ToString());

            InternalTexture2D.Create(width, height, dxFormat, renderTargetUse);
        }
Example #2
0
        public unsafe void SetRGBData(Color32[] data)
        {
            int   rowPitch;
            byte *p = InternalTexture2D.MapData(out rowPitch, true);

            int i = 0;

            for (int y = 0; y < Height; y++)
            {
                byte *row = p;
                for (int x = 0; x < Width; x++)
                {
                    *row++ = data[i].R;
                    *row++ = data[i].G;
                    *row++ = data[i].B;
                    *row++ = data[i].A;

                    i++;
                }
                p += rowPitch;
            }

            InternalTexture2D.Unmap(true);
        }
Example #3
0
        public unsafe void GetRGBData(Color32[] data)
        {
            int   rowPitch;
            byte *p = InternalTexture2D.MapData(out rowPitch, false);

            int i = 0;

            for (int y = 0; y < Height; y++)
            {
                byte *row = p;
                for (int x = 0; x < Width; x++)
                {
                    byte r = *row++;
                    byte g = *row++;
                    byte b = *row++;
                    byte a = *row++;

                    data[i++] = new Color32(r, g, b, a);
                }
                p += rowPitch;
            }

            InternalTexture2D.Unmap();
        }
Example #4
0
 public void Save(string fullPath)
 {
     InternalTexture2D.Save(fullPath);
 }
Example #5
0
 internal void LoadFromFile()
 {
     InternalTexture2D.LoadFromFile(FullPath.ToString());
 }