﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-iwindows-随笔分类-OpenGL</title><link>http://www.cppblog.com/iwindows/category/12962.html</link><description /><language>zh-cn</language><lastBuildDate>Fri, 22 Oct 2010 06:44:10 GMT</lastBuildDate><pubDate>Fri, 22 Oct 2010 06:44:10 GMT</pubDate><ttl>60</ttl><item><title>Visual C++下OpenGL开发框架与应用</title><link>http://www.cppblog.com/iwindows/archive/2010/10/20/130504.html</link><dc:creator>vic.MINg</dc:creator><author>vic.MINg</author><pubDate>Tue, 19 Oct 2010 16:24:00 GMT</pubDate><guid>http://www.cppblog.com/iwindows/archive/2010/10/20/130504.html</guid><wfw:comment>http://www.cppblog.com/iwindows/comments/130504.html</wfw:comment><comments>http://www.cppblog.com/iwindows/archive/2010/10/20/130504.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/iwindows/comments/commentRss/130504.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/iwindows/services/trackbacks/130504.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;&nbsp;马马虎虎的看完了《3D数学基础：图形与游戏开发》和《OpenGL编程指南》，感觉没看明白的跟看明白的一样多...但还是算入门了吧！辞职以后，在家玩的甚欢，太过得以忘形了。这两天收敛了许多，做了一个简单的程序，这里想做一些相应的总结。&nbsp;&nbsp;&nbsp;文章根据网络上同名《Visual C++下OpenGL开发框架与应用》改写，主要是问了节省时间，...&nbsp;&nbsp;<a href='http://www.cppblog.com/iwindows/archive/2010/10/20/130504.html'>阅读全文</a><img src ="http://www.cppblog.com/iwindows/aggbug/130504.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/iwindows/" target="_blank">vic.MINg</a> 2010-10-20 00:24 <a href="http://www.cppblog.com/iwindows/archive/2010/10/20/130504.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一个基于NEHE框架的MFC OpenGL向导</title><link>http://www.cppblog.com/iwindows/archive/2010/09/11/126383.html</link><dc:creator>vic.MINg</dc:creator><author>vic.MINg</author><pubDate>Sat, 11 Sep 2010 01:29:00 GMT</pubDate><guid>http://www.cppblog.com/iwindows/archive/2010/09/11/126383.html</guid><wfw:comment>http://www.cppblog.com/iwindows/comments/126383.html</wfw:comment><comments>http://www.cppblog.com/iwindows/archive/2010/09/11/126383.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/iwindows/comments/commentRss/126383.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/iwindows/services/trackbacks/126383.html</trackback:ping><description><![CDATA[<p style="FONT-SIZE: 10pt"><br>&nbsp;&nbsp;&nbsp;已经学习OpenGL一小段时间了，断断续续的。虽说没什么长进，但是感觉还是有一些入门。主要是看NEHE的教程（<a href="http://nehe.gamedev.net/">NEHE OpenGL Tutorials</a>），有些东西很有深度，感觉很遥远&#8230;&#8230;只是一个多看多学的过程，看不懂一遍，可以看第二遍、第三遍，每一遍都会有所收获的。<br><br>&nbsp;&nbsp;&nbsp;学习OpenGL的初衷是为了做游戏，所以也在研究《学OpenGL编3D游戏》的教程。关于OpenGL的东西还是做得很少，想在其基础上做一个第一人称射击游戏，但在写它之前还是想对OpenGL做一些系统学习和总结，肯定会有不小的收获的。<br><br>&nbsp;&nbsp;&nbsp;就从这里开始吧！网络为学习提供了极大的方便，有很多大牛，我会不断的把我学到的东西，整理到这个博客当中，放弃了网易，以为感觉这里更规范，是一个适合于程序员的专用博客（^o^）。<br><br><br><br>&nbsp;&nbsp;&nbsp;一个基于NEHE框架的MFC OpenGL向导，这儿是在网上发现的一个很不错的东东，十分实用。以下是说明和下载（<a href="http://www.zwqxin.com/archives/opengl/learn-opengl-first.html">参考文档</a>）：<br>&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;下载：<a href="http://download.csdn.net/source/2686853">NEHE向导文件.rar&nbsp;</a> （NEHE框架，for VC6）<br><br><br>&nbsp;&nbsp;&nbsp;以框架为例，首先看看里面的说明<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1、拷贝awx文件到vc6安装目录下（$Install_Directory\Common\MSDev98\Bin\IDE）；<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2、打开VC6，新建工程，选择MFC OpenGL AppWizard向导，输入新建工程名；<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3、向导第二步，设置分辨率和屏幕深度，点示&#8220;完成&#8221;按钮；（注：最好选择1024*768，和 32bit）<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4、选择左侧ClassView（类视导航），打开新建工程的类树；<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5、在类树下，打开CMainFrame类；<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6、点击到CMainFrame下的成员函数RenderGLScene。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;修改glBegin(GL_QUADS)到glEnds()之间的代码。<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;好了，简单手动敲入：<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<table border=1 cellSpacing=0 cellPadding=3 align=center>
    <tbody>
        <tr>
            <td style="FONT-SIZE: 10pt">
            <p style="FONT-SIZE: 10pt" dir=ltr><br>glBegin(GL_QUADS);</p>
            <p style="FONT-SIZE: 10pt" dir=ltr>&nbsp;&nbsp; &#8230;&#8230;&nbsp;&nbsp;&nbsp; </p>
            <p style="FONT-SIZE: 10pt" dir=ltr>glEnd();<br></p>
            </td>
            <td style="FONT-SIZE: 10pt">
            <p style="FONT-SIZE: 10pt" dir=ltr><br>改成&#8594;<br></p>
            </td>
            <td style="FONT-SIZE: 10pt">
            <p style="FONT-SIZE: 10pt" dir=ltr><br>glBegin(GL_TRIANGLES);</p>
            <p style="FONT-SIZE: 10pt" dir=ltr>&nbsp;&nbsp; glVertex3f(-1,0,0);</p>
            <p style="FONT-SIZE: 10pt" dir=ltr>&nbsp;&nbsp; glVertex3f(1,0,0);</p>
            <p style="FONT-SIZE: 10pt" dir=ltr>&nbsp;&nbsp; glVertex3f(0,1,0);</p>
            <p style="FONT-SIZE: 10pt" dir=ltr>glEnd();<br></p>
            </td>
        </tr>
    </tbody>
</table>
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;怎么样？一个底边为2，高为1的三角形。</p>
<p style="FONT-SIZE: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;单位就是opengl坐标轴单位，三个顶点（x,y,z）分别在(-1,0,0)，(1,0,0)，(0,1,0);&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;opengl坐标轴（x-y-z右手系）：你面对屏幕，你的右边是x正轴，上面是y正轴，屏幕指向你的就是z正轴啦。</p>
<p style="FONT-SIZE: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;（注：glTranslatef为了把图形移后点，因为屏幕平面就是x-y平面嘛，所以向z负轴移后点看得清楚；glRotatef实现了旋转，同时绕三个轴，三个*rot是速度啦。）<br>&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;行为决定态度。</p>
<p style="FONT-SIZE: 10pt"><br>&nbsp;</p>
<img src ="http://www.cppblog.com/iwindows/aggbug/126383.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/iwindows/" target="_blank">vic.MINg</a> 2010-09-11 09:29 <a href="http://www.cppblog.com/iwindows/archive/2010/09/11/126383.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>