回 帖 发 新 帖 刷新版面

主题:[原创]OpenGL入门学习——第二课

大家好,这里是OpenGL入门教室。在正式开始前,我想罗嗦几句。

我的课程是写一章就上传一章的,因此不能保证上传时间的稳定性,这几天我辛苦一些,争取前面的课程可以写快一点。但大家也不能太心急,毕竟OpenGL是一个很大的课题,后面的内容会很多。对于我本人而言,随着学习的进行,制作课程的难度也会逐渐增大,相应的,制作时间也会增加。
大家等不及的话,学习时也可以找其他教材来看。

现在开始进行第二课。
需要看第一课的朋友,可以[url=http://www.programfan.com/club/showbbs.asp?id=184355]点这里[/url]

回复列表 (共53个回复)

21 楼

如此好帖的确难得啊~~~

大二刚刚结束,也想学点东西.这个暑假,了解了两样东西:MFC和OpenGL.对于MFC还能理解,多少懂了些,但是,OpenGL,很难懂,尤其是坐标转换之类的东西.这里,也希望楼主能在下一课提到,thanks!

22 楼

说下,4楼画的是一个虚线圆,我改了下画个实圆:
         glBegin(GL_LINES);
        glVertex2f(R*cos(2*Pi/n*0), R*sin(2*Pi/n*0));
        for(i=1; i<n; ++i){
            glVertex2f(R*cos(2*Pi/n*i), R*sin(2*Pi/n*i));
            glVertex2f(R*cos(2*Pi/n*i), R*sin(2*Pi/n*i));
        }
        glVertex2f(R*cos(2*Pi/n*n), R*sin(2*Pi/n*n));
    glEnd();

23 楼

[quote]说下,4楼画的是一个虚线圆,我改了下画个实圆:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;glBegin(GL_LINES);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;glVertex2f(R*cos(2*Pi/n*0),&nbsp;R*sin(2*Pi/n*0));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(i=1;&nbsp;i<n;&nbsp;++i){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;glVertex2f(R*cos(2*Pi/n*i),&nbsp;R*sin(2*Pi/n*i));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;glVertex2f(R*cos(2*Pi/n*i),&nbsp;R*sin(2*Pi/n*i));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;glVertex2f(R*cos(2*Pi/n*n),&nbsp;R*sin(2*Pi/n*n));
&nbsp;&nbsp;&nbsp;&nbsp;glEnd();[/quote]
一样的原理....

MARK

24 楼

楼主,第三课的地址是什么啊?

25 楼

点我名字下面的“会员信息”,然后选“查看此人发起的主题”。呵呵。

26 楼

调试程序的时候为什么出现两个窗口,一个是自己设置的窗口,另一个是标题为Debug\opengl.exe的黑色窗口,怎么把Debug窗口去掉呢?
请高人指点,谢谢

27 楼

调试程序时出现两个窗口,一个自己创建的窗口,另一个是Debug\gl.exe窗口,怎么把它去掉呢?请高人指点

28 楼

在VC下用GLUT来运行就是这样的情况。
命令行可以用来输出,例如printf语句就可以输出到命令行。

如果希望不显示命令行窗口,一个解决办法是不使用GLUT,而采用其他的工具包来创建窗口,比如MFC。可以在MSDN上找到MFC做OpenGL的例子。
随着MFC的老化,我个人是不推荐使用它。你可以自己寻找合适的工具包。

也可以直接使用Windows API来创建窗口,不过这样一来代码就比较多了,如果之前没有接触过Windows编程,则在开始的一段时间内可能会比较郁闷。如果确实需要使用Windows API来创建窗口,可以参考NeHe的OpenGL教程第一课。(在网上可以搜索到)如果安装了Dev-C++的话,可以在Samples目录中找到一个OpenGL程序的示例代码,也是用Windows API来编写的。

29 楼

好东西  楼主努力啊

30 楼

为什么R = 0.5 华的圆会那么大

我来回复

您尚未登录,请登录后再回复。点此登录或注册