コード例 #1
0
 private void UploadTex(Bitmap b, MDL0.Model.MaterialSet.Material m, int Id)
 {
     Gl.glBindTexture(Gl.GL_TEXTURE_2D, Id);
     Gl.glColor3f(1, 1, 1);
     BitmapData d = b.LockBits(new Rectangle(0, 0, b.Width, b.Height), System.Drawing.Imaging.ImageLockMode.ReadOnly, System.Drawing.Imaging.PixelFormat.Format32bppArgb);
     Gl.glTexImage2D(Gl.GL_TEXTURE_2D, 0, Gl.GL_RGBA8, b.Width, b.Height, 0, Gl.GL_BGRA, Gl.GL_UNSIGNED_BYTE, d.Scan0);
     b.UnlockBits(d);
     Gl.glTexParameteri(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_MIN_FILTER, Gl.GL_NEAREST);
     Gl.glTexParameteri(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_MAG_FILTER, Gl.GL_NEAREST);
     bool repeatS = (m.texImageParam >> 16 & 0x1) == 1;
     bool repeatT = (m.texImageParam >> 17 & 0x1) == 1;
     bool flipS = (m.texImageParam >> 18 & 0x1) == 1;
     bool flipT = (m.texImageParam >> 19 & 0x1) == 1;
     int S;
     if (repeatS && flipS)
     {
         S = Gl.GL_MIRRORED_REPEAT;
     }
     else if (repeatS)
     {
         S = Gl.GL_REPEAT;
     }
     else
     {
         S = Gl.GL_CLAMP;
     }
     int T;
     if (repeatT && flipT)
     {
         T = Gl.GL_MIRRORED_REPEAT;
     }
     else if (repeatT)
     {
         T = Gl.GL_REPEAT;
     }
     else
     {
         T = Gl.GL_CLAMP;
     }
     Gl.glTexParameterf(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_WRAP_S, S);
     Gl.glTexParameterf(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_WRAP_T, T);
 }
コード例 #2
0
 public MDL0MaterialEditor(MDL0.Model.MaterialSet.Material Material)
 {
     this.Material = Material;
     InitializeComponent();
 }
コード例 #3
0
 public MDL0Viewer(MDL0.Model Model)
 {
     this.Model = Model;
     InitializeComponent();
     simpleOpenGlControl1.MouseWheel += new MouseEventHandler(simpleOpenGlControl1_MouseWheel);
 }