为什么让人以为“点范围好像是-1—1”呢?嘿嘿,主要是默认的视点/相机位置在原点,一旦点坐标大到一定程度就会超出默认的视野。注意“默认”两个字!
*****
*****如何修改这个“默认”的视点/相机位置?OpenGL有一个专门设定视点/相机位置的函数,可以瞬时把视点定位到目标中心。这个函数是:
void gluLookAt(
  GLdouble eyex,
  GLdouble eyey,
  GLdouble eyez,
  GLdouble centerx,
  GLdouble centery,
  GLdouble centerz,
  GLdouble upx,
  GLdouble upy,
  GLdouble upz
);
//这个函数一共9个参数:前三个参数比较好理解——视点位置,比如定位到点(100,210,0);中间三个参数与前三个参数的差值决定了视线方向,一般在视点位置基础上增加一定的偏移量;最后三个参数是头顶/摄像机顶的方向,也就是决定你倒立还是正立观看目标,一般设为(0,1,0)。
*****
*****这个函数至少要被执行一次,如果想动态改变视点位置,可以在渲染循环中每渲一帧调用一遍。有疑问可以再交流... ...

相关文章:

  • 2021-05-17
  • 2022-12-23
  • 2021-12-28
  • 2022-12-23
  • 2021-07-09
  • 2021-09-30
猜你喜欢
  • 2021-12-28
  • 2022-12-23
  • 2021-09-16
  • 2022-12-23
  • 2021-07-28
  • 2021-11-05
  • 2021-10-03
相关资源
相似解决方案