COOOOOOOOL

从固有的原则出发,向着目标诚直前进.所以这样的行为便名为正当的行为,表示其为寻着正路而行的.

  C++博客 :: 首页 :: 联系 :: 聚合  :: 管理
  26 Posts :: 0 Stories :: 21 Comments :: 0 Trackbacks

公告

QQ:774262464 email:cooooooool.2010@gmail.com

常用链接

留言簿(3)

我参与的团队

搜索

  •  

积分与排名

  • 积分 - 71877
  • 排名 - 321

最新评论

阅读排行榜

评论排行榜

函数原型
gluPerspective(GLdouble fovy,GLdouble aspect,GLdouble zNear,GLdouble zFar)

首先得设置gluPerspective,来看看它的参数都表示什么意思
fovy,这个最难理解,我的理解是,眼睛睁开的角度,即,视角的大小,如果设置为0,相当你闭上眼睛了,所以什么也看不到,如果为180,那么可以认为你的视界很广阔,
aspect,这个好理解,就是实际窗口的纵横比,即x/y
zNear,这个呢,表示你近处,的裁面,
zFar表示远处的裁面,

如果还没有理解就继续看,
我们知道,远处的东西看起来要小一些,近处的东西看起来会大一些,这就是透视原理
如下图所示






假设那两条线表示公路,理论上讲,它们的两条边是平行的,
但现实情况中,它们在远方(可以无限远)总要相交于一点,
实际线段AB的长度=CD的长度,只是在此例中使用了透视角,故会有如上的效果,是不是很接近现实的情况?

结合我们刚才这两个函数
zNear,眼睛距离近处的距离,假设为10米远,请不要设置为负值,OpenGl就傻了,不知道怎么算了,
zFar表示远处的裁面,假设为1000米远,
就是这两个参数的意义了,

再解释下那个"眼睛睁开的角度"是什么意思,
首先假设我们现在距离物体有50个单位距离远的位置,
在眼睛睁开角度设置为45时,请看大屏幕:




我们可以看到,在远处一个球,,很好玩哈,
现在我们将眼睛再张开点看,将"眼睛睁开的角度"设置为178
(180度表示平角,那时候我们将什么也看不到,眼睛睁太大了,眼大无神)



我们只看到一个点,,,,,,,,,,,,,,,,,,,,,,,,,,,
因为我们看的范围太大了,这个球本身大小没有改变,但是它在我们的"视界"内太小了,


反之,我们将眼睛闭小些,改为1度看看会出现什么情况呢?



在我们距离该物体3000距离远,"眼睛睁开的角度"为1时,我们似乎走进了这个球内,这个是不是类似于相机的焦距?

当我们将"透视角"设置为0时,我们相当于闭上双眼,这个世界清静了,

我们什么也看不到,,,,,,,,,

posted on 2009-12-28 10:26 COOOOOOOOL 阅读(33996) 评论(12)  编辑 收藏 引用

Feedback

# re: gluPerspective(解释得很好)[未登录] 2009-12-30 12:32 tiny
gluPerspective,gluOrtho,这些都是通过传入的那些参数,变换成一个矩阵,这个矩阵可以叫投影矩阵。gluPerspective表示投射投影,gluOrtho正交投影。理解的不错。  回复  更多评论
  

# re: gluPerspective(解释得很好) 2011-04-13 21:29 网从
讲的很不错 啊,很幽默呢  回复  更多评论
  

# re: gluPerspective(解释得很好)[未登录] 2011-07-12 14:22 Tony
感謝你的文章,受益良多^^~  回复  更多评论
  

# re: gluPerspective(解释得很好) 2011-10-13 00:48 CUNTIE
好内容
半年前初学看了
现在再看 还是明了
  回复  更多评论
  

# re: gluPerspective(解释得很好) 2012-03-03 20:15 nch
说的相当不错呢- -  回复  更多评论
  

# re: gluPerspective(解释得很好) 2013-01-03 11:00 匿名网友
对,,很幽默,赞  回复  更多评论
  

# re: gluPerspective(解释得很好) 2014-03-10 10:19 lhlvictory
讲得非常好,一下茅塞顿开啊!谢谢  回复  更多评论
  

# re: gluPerspective(解释得很好) 2014-05-06 23:05 yinmingqiang
你好 你能把上面的那个类似公路在远处相交的两直线程序的代码发我一份吗。我想参考参考。非常谢谢!,1025784161@qq.com  回复  更多评论
  

# re: gluPerspective(解释得很好) 2014-10-13 06:18 Katherine
解释相当清晰明了!  回复  更多评论
  

# re: gluPerspective(解释得很好) 2015-01-30 21:14 kudog
good~~~  回复  更多评论
  

# re: gluPerspective(解释得很好) 2016-05-19 20:27 fuhaha
哈哈,好!  回复  更多评论
  

# re: gluPerspective(解释得很好) 2016-06-15 10:36 avg
感觉他讲非常好  回复  更多评论
  


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理