Feng.Li's Java See

抓紧时间,大步向前。
随笔 - 95, 文章 - 4, 评论 - 58, 引用 - 0
数据加载中……

OpenGL(1)

6664dz1v2361.jpg     
其实写到这里,我很想放弃了。原因有三:
1:C++实在是忘光了。
2:MFC实在太庞大了。
3:本来我就对图形的东东没有概念。
      不过,不愿意认输的我,继续写点体会,能学多少就多少吧,实在不行再放弃吧。

         总结下NeHE(据说是一个OpenGL的大宗师,他妈的,写的东西也能叫教程?但是实在是找不出他写的比谁烂的教程,咬吧。)
          跟着他的第一个代码(整整400行,这也他妈的叫初始代码?),基本上就明白,这些代码是一个筐架,其中有2个东东比较重要,
1:DC(Device Context),翻译说是设备管理表?个人认为叫设备管理上下文吧,能好点:)
2RC(Rendering Context) 据说这叫着色描述表。

整个程序是一个空白的窗口骨架程序,其中有个关键方法:WndProc(),在调用CreateWindows()的时候被调用,这里写你绘制程序的代码。

OpenGl中,任何绘制的图形都是以三角和四边形作为基础。

OpenGL程序一般执行流程:
根据这个流程,我们可以归纳出在OpenGL中进行主要的图形操作直至在计算机屏幕上渲染绘制出三维图形景观的基本步骤:

  1)根据基本图形单元建立景物模型,并且对所建立的模型进行数学描述(OpenGL中把:点、线、多边形、图像和位图都作为基本图形单元)。

  2)把景物模型放在三维空间中的合适的位置,并且设置视点(viewpoint)以观察所感兴趣的景观。

  3)计算模型中所有物体的色彩,其中的色彩根据应用要求来确定,同时确定光照条件、纹理粘贴方式等。
  
  4)把景物模型的数学描述及其色彩信息转换至计算机屏幕上的象素,这个过程也就是光栅化(rasterization)。


posted on 2006-11-14 04:28 小锋 阅读(373) 评论(3)  编辑  收藏 所属分类: C

评论

# re: OpenGL(1)  回复  更多评论   

我也想学OpenGL,给点建议啊!
2006-11-15 18:15 | forever

# re: OpenGL(1)  回复  更多评论   

建议你不要学了,垃圾东西。掌握OpenGL有很多前提的C++,VC,MFC,你会这些就已经是高手了。

另外,据说微软的ActiveX很火暴,比OpenGL好,但是好象是抄袭OpenGL的。不明白你为什么要学这个,如果用OpenGL来开发GIS系统,我感觉完全没有必要,2维的GIS数据结构已经够折磨你了,来个三维的GIS数据结构?个人认为1:没有必要,浪费青春。
2:你觉得三维的GIS数据结构你怎么实现?复杂的要死。比如:一个空间点,现在他的坐标不再是 X,Y.而是X,Y,Z,空间数据库怎么存?还有,你分析的时候又多出一个,Z坐标怎么分析?

但是你如果想做游戏开发,OpenGL应该够,不过我对游戏开发这块不懂,SO不能给你建议,你慢慢琢磨咯。。
2006-11-15 19:05 | 小锋

# re: OpenGL(1)  回复  更多评论   

我再看看吧 现在也不知道怎么办呢 我最近也看了一些微软的ActiveX和OpenGL的东西 现在确实是用ActiveX的更多 但我看好多论文都是说用OpenGL实现的 想看看到底怎么弄的 呵呵
2006-11-21 18:31 | forever

只有注册用户登录后才能发表评论。


网站导航: