首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Glut函数。使用glut函数会导致程序丢失

Glut函数。使用glut函数会导致程序丢失
EN

Stack Overflow用户
提问于 2014-11-14 22:53:09
回答 1查看 657关注 0票数 1

我使用Tao框架来学习openGL。我包含了所有需要的库,包括Tao.FreeGlut.dll。在执行阶段,程序在使用点终止glut函数。为什么会这样呢?编译时不会发生错误,程序只是关闭。

代码语言:javascript
复制
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.IO;
using System.Windows.Forms;
using Tao.DevIl;
using Tao.OpenGl;
using Tao.FreeGlut;

        private void Form1_Load(object sender, EventArgs e)
    {
        Gl.glMatrixMode(Gl.GL_PROJECTION);           
        Gl.glLoadIdentity();             

        Glu.gluPerspective(45, (float)AnT.Width / (float)AnT.Height, 0.1, 200);

        Gl.glMatrixMode(Gl.GL_MODELVIEW);          
        Gl.glLoadIdentity();              


        Draw();
    }
    public void Draw() {
        Gl.glClear(Gl.GL_COLOR_BUFFER_BIT | Gl.GL_DEPTH_BUFFER_BIT);
        Gl.glLoadIdentity();
        float[] color = new float[4] { 1, 0, 0, 1 };
        float[] shininess = new float[1] { 30 };
        Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_DIFFUSE, color); 
        Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SPECULAR, color);
        Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SHININESS, shininess);
        //----------------------------
        Gl.glPushMatrix();
        Gl.glTranslated(0, 0, -6);
        Gl.glRotated(45, 1, 1, 0);

        Glut.glutSolidTeapot(1);  // <- exit
        Gl.glPopMatrix();
        Gl.glFlush();
        AnT.Invalidate();
    }
EN

回答 1

Stack Overflow用户

发布于 2014-11-14 23:35:15

Andon M. Coleman,谢谢。Glut库必须在使用之前初始化

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26932671

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档