OpenGL
文章平均质量分 50
stilling2006
个人觉得技术始终在变,唯有思想永恒。写下自己的专长之时,内心惴惴不安,毕竟本人技术实在是不怎么样,或许唯一可以骄傲的地方就是年轻吧,但这点脆弱的资本在时光中也逐渐消失。梦想:骑着骆驼,看落日长河,大漠孤烟。博客:http://beyondc.cn
展开
-
vc+win32+opengl框架代码
重拾OpenGL,起步艰难。我发现自己也同胡老师一样了,学得快(当初花了一个国庆假就把基础都看完了)也忘得快。废话少说,进入正题。 新建一个win32控制台程序。选择“空项目“以及在上面的“应用程序类型”里选择“Windows应用程序”。建立项目后再工程属性里设置“常规”下设置字符集为“多字节……”。然后再新建一个cpp文件,把以下代码拷贝进去运行就OK了。 至于代码里的Windows原创 2008-06-12 14:37:00 · 1512 阅读 · 2 评论 -
qt环境下学习OpenGL
当你开始选在在Linux平台,或者其他非Windows平台捣鼓OpenGL的时候,你就会感受到了OpenGL比DX强大的地方了。 切入正题。 首先,你可以百度“Qt OpenGL教程”,可以下载到一个DOC格式的文档,非常nice。完全可以参考着慢慢入门,再结合Qt本身带的控件,以及QGraphicsView和QWidget等,相信你会写出非常漂亮,以及交互性很强的小程序的,呵呵,不原创 2010-05-01 23:59:00 · 1370 阅读 · 0 评论 -
gluBuild2DMipmaps与glTexImage2D
两者的都是生成纹理。我觉得glTexImage2D比gluBuild2DMipmaps更稳定,有时后者也不知道什么原因就贴不好图。至少我这遇见了好几次了,可能是我前面滤波设置的问题,但也很有可能是这个函数自身的问题。希望谁懂的能告诉我。不过后者对BMP图片的要求就宽松了,这就是其优点吧。哈。glTexImage2D()的用法举例glTexImage2D(GL_TEXTURE_2D原创 2010-05-01 23:54:00 · 11866 阅读 · 2 评论 -
glFlush和glFinish区别
OpenGL里会要用到的两个重要函数。glFlush和glFinish。glFlush:将GL命令队列中的命令发送给显卡并清空命令队列,发送完立即返回;glFinish:将GL命令队列中的命令发送给显卡并清空命令队列,显卡完成这些命令(也就是画完了)后返回。因此,在绘图命令比较冗长的情况下,可以分段调用glFlush以清空命令队列并让显卡开始先执行这些命令,最后调用glFinish原创 2010-05-01 23:51:00 · 9853 阅读 · 0 评论 -
OpenGL坐标系
从左到右,x递增。从下到上,y递增。从远到近,z递增。 OPENGL坐标系可分为:世界坐标系和当前绘图坐标系。 世界坐标系以屏幕中心为原点(0, 0, 0)。你面对屏幕,你的右边是x正轴,上面是y正轴,屏幕指向你的为z正轴。长度单位这样来定: 窗口范围按此单位恰好是(-1,-1)到(1,1)。 当前绘图坐标系是 绘制物体时的坐标系。程序刚初始化时,世界坐标系和当前绘图坐标系是重原创 2010-05-02 00:01:00 · 811 阅读 · 0 评论 -
gluPerspective与glLookAt
函数体:gluPerspective(GLdouble fovy,GLdouble aspect,GLdouble zNear,GLdouble zFar)fovy,这个最难理解,我的理解是,眼睛睁开的角度,即,视角的大小,如果设置为0,相当你闭上眼睛了,所以什么也看不到,如果为180,那么可以认为你的视界很广阔,aspect,这个好理解,就是实际窗口的纵横比,即x/yzNear,这个呢,原创 2010-05-01 23:53:00 · 1298 阅读 · 0 评论 -
Qt下学习OpenGL之OBJ模型
我这里的OBJ格式不是c++代码产生的中间文件,而是那个g什么wave公司的OBJ格式,格式很简单,作用就是拿来存储3D模型的一些基本信息。以前在VS2005下能很轻松读取,这次换QT了,幸好QT公司对客户很用心和负责,在其QtLab下发现了不错的类和代码。加以运用,成功导入OBJ~ 切入正题。 首先这个类会需要引用该文件point3d.h,其内容如下:#ifndef POINT3原创 2010-05-02 00:00:00 · 5941 阅读 · 4 评论 -
MD2格式的认识
不敢不提的是MD2这个词对我的影响。第一次看到是那晚在南校通宵,还是阿黄首先找到的,我当时觉得没可能用到这种复杂的玩意(事实是它存在已经有10多年了),但也不想错过每一个线索,所以稍微保存了它的信息到txt里带回了宿舍。 时候也多亏了脑海里残留着知道有MD2这个玩意,加上对UE的使用,让我在最后10天内都没放弃,然后就不小心获得了对自己现在都有影响的一个奖项。这个奖不大,但对于我这原创 2009-03-31 19:27:00 · 3007 阅读 · 8 评论 -
OpenGL显示中文类
在我的OpenGl框架中,有个Font字体类,能够很方便的显示出中文来。下面就列出来这个类吧,以后陆续列出框架下的其他有用的类。呵呵。 Font.h #ifndef __GLFONT_H__#define __GLFONT_H__#include "stdafx.h"/** 定义字体类 */class GLFont {p原创 2009-03-20 15:45:00 · 5388 阅读 · 5 评论 -
OpenGL粒子系统模型
(烟火) (雪花) ……………………………………………………………………………………………………………………………………………………………… 最近两天就在敲了下OpenGL的粒子系统,一个是烟火,一个是雪花。到此,也打算对OpenGL的这一方面的学习告一段落。很有收获的是对整个自己看着从无到有的GLFrame的产生的兴奋,然后又是各种有意思的类的使用原创 2009-03-20 03:28:00 · 5406 阅读 · 12 评论 -
OpenGL碰撞检测模型
因为她又生气了,比较郁闷,又不想乱七八糟的写日志和发泄,就来写程序了。猛敲击了好几个小时后代码终于敲完了。 2点30开始调试。遇见了22个问题。解决完拼写错误后32个问题。 3点左右,剩下26个问题。都是说找不到类。无缘无故的。 3点半,还是那26个问题。很恼火了。直接把所有的重来,清理工程等等。后来还剩12个。 快4点的时候,死盯着那12个看,为原创 2009-03-20 01:47:00 · 5935 阅读 · 4 评论 -
Opengl中的glTranslatef、glPushMatrix和glPopMatrix
做一下学习笔记:1 、 在opengl中,函数glTranslatef的作用就是移动坐标原点。对应的3个参数对应着3个坐标轴。 如果你调用一次glTranslatef(1.0f,0.0f,0.0f)然后画一个小球,接着再调用次glTranslatef(0.0f,1.0f,0.0f)再画一个小球。 此时,两个小球中,一个在另外一个正右方。 所以,如果要使两个小球分别处于x、y轴,则需要在第二原创 2009-01-31 03:12:00 · 9141 阅读 · 3 评论 -
对于 error C2065: 'GL_COMBINE_ARB' : undeclared identifier 问题的解决
如果你在弄GL的过程中遇见了这个问题,那么你可以在对应的头文件里进行如下的宏定义就OK了。 error C2065: GL_COMBINE_ARB : undeclared identifiererror C2065: GL_RGB_SCALE_ARB : undeclared identifier #define GL_TEXTURE0_ARB原创 2009-01-30 08:56:00 · 3738 阅读 · 4 评论 -
glu,glut,glext,glew
<br />在学习OpenGL的过程中,我想,对于除了它自身版本里提供的那些核心函数库外,下面这些也是一个常用GL的人所应该了解的。<br /> glu是实用库,包含有43个函数,函数名的前缀为glu。Glu 为了减轻繁重的编程工作,封装了OpenGL函数,Glu函数通过调用核心库的函数,为开发者提供相对简单的用法,实现一些较为复杂的操作。<br /> glaux是OpenGL辅助库,包含有31个函数,函数名前缀为aux。这部分函数提供窗口管理、输入输出处理以及绘制一些简单三维物体。<br原创 2010-06-18 00:30:00 · 2227 阅读 · 0 评论