Example #1
0
 public unsafe void SetData(ByteColor[] data, Rectangle? rect)
 {
     Threading.EnsureUIThread (delegate {
         fixed(ByteColor *ptr = data) {
             SetData ((IntPtr)ptr, rect);
         }
     });
 }
Example #2
0
 public void SetData(IntPtr data, Rectangle? rect)
 {
     Rectangle r;
     if (rect.HasValue) {
         r = rect.Value;
     } else {
         r = new Rectangle (0, 0, Width, Height);
     }
     Threading.EnsureUIThread (delegate {
         GL.glBindTexture (GL.GL_TEXTURE_2D, Id);
         GL.glTexSubImage2D (
             GL.GL_TEXTURE_2D,
             0,
             r.X,
             r.Y,
             r.Width,
             r.Height,
             GL.GL_RGBA,
             GL.GL_UNSIGNED_BYTE,
             data
         );
     });
 }