问题标签 [glulookat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - gluLookAt 不工作
我正在尝试使用 gluLookAt() 函数来控制放大和缩小。现在它根本没有改变矩阵,我不知道为什么。
以下是相关代码:
它与 glLoadIdentity() 调用有关吗?我对openGL中的不同身份不太熟悉。
那么如何更改此代码以在 w 放大时进行按键操作?
opengl - gluLookAt() 没有看它应该在哪里
我不明白 glLookAt() 函数究竟做了什么。
我在位置 x,y,z 有一个对象。我想在物体移动时将相机放置在 x+20,y+20,z+20 位置,这样它看起来应该是静止的。然而,情况并非如此:当我执行以下代码时,我看到一个十字慢慢向右移动,甚至从窗口中移出!
如果相机正确地看着 x,y,z ,十字应该总是出现在中心?
如果我输入 y = 10 + n ,物体看起来是静止的。当 y = 10 + n * n 时,物体以恒定速度运动,当 y = 10 + n * n * n 时,物体运动并加速。
我也做过
在我的代码的开头。
先感谢您 !:S
c++ - How to use LookAt matrix in vertex shader
Let's say I have the following vertex shader code below:
How do I use the LookAt
matrix in this shader to position the eye of the camera? I have tried LookAt * MVP * vPos
but that didn't seem to work as my triangle just disappeared off screen!
c++ - gluCylinder 的正确 gluLookAt
我正在尝试用gluCylinder
. 但是,要指定我使用的方向gluLookAt
,就像我之前的许多人一样,我不确定“向上”向量,因此无法让圆柱体指向正确的方向。
我从另一个 SO 答案中读到
gluLookAt 中“向上”向量背后的直觉很简单:看任何东西。现在将头倾斜 90 度。你所在的地方没有改变,你注视的方向没有改变,但你视网膜中的图像却清晰地改变了。有什么不同?头顶指向的地方。那是向上向量。
这是一个简单的解释,但就我的圆柱体而言,我觉得向上向量完全不重要。由于圆柱体可以围绕其轴旋转并且看起来仍然相同,因此不同的向上向量不会改变任何东西。所以我的问题应该有无限多个有效的向上向量:从起点到终点的所有正交向量。
所以这就是我所做的:
我有圆柱的起点和终点应该在哪里的世界坐标,
A_world
并且B_world
.我将它们投影到视口坐标
/li>A_vp
并B_vp
使用gluProject
:我调用
/li>glOrtho
将相机重置为其默认位置:负z进入图片,x向右,y向上:我转换为坐标
/li>A_vp
,将向上向量计算为向量的法线,A_vp — B_vp
并使用以下命令指定视图gluLookAt
:我用以下方法绘制圆柱体
/li>gluCylinder
:
这是意想不到的结果:
由于圆柱体从正确的位置开始,并且由于我能够在位置 B_vp 处画一个圆,唯一肯定是错误的就是 in 中的“向上”向量gluLookAt
,对吗?
opengl - OpenGL - 在没有 glScalef 的情况下设置一个很好的距离
我尝试为粒子盘的完整视图设置一个合适的距离,同时具有一个有效的线比例,它表示作为鼠标缩放功能的盘比例的当前值。
场景有以下参数:
我使用以下代码示例对 3D 场景进行图形初始化:
上述gluLookAt
和的值glScalef
是近似选择的,即手动选择,没有精确计算。
我只想查看磁盘的完整视图(白色颗粒)。为此,我知道磁盘 (x,y) 平面中的最大值和最小值 :
-25 < x <25
和-22 < y < 22
.
从这篇文章设置 z 好距离,我可以做到(Fov/2 = 45 度):
与dist = 25
在磁盘前面。
所以我可以直接在我的示例代码中做(而不是
) :
?
谢谢
c++ - 跟随物体OpenGL的相机
我想实现一个跟随我的 3D 对象(汽车)的相机。要设置相机,我使用以下结构:
我的问题是当我换成那个摄像头时,摄像头不会留在车后,而是在车顶上。为什么?
c++ - openGL - 使用 gluLookAt 在对象上方和下方旋转
我在 open GL 中有一个立方体。我通过乘以旋转矩阵来旋转立方体。我还使用 gluLookAt 让相机在 x 轴上围绕立方体旋转,如下所示。
在哪里
我正在努力让相机在 y 轴上环绕它的立方体上方和下方旋转。
c++ - Opengl 鼠标相机问题 (gluLookAt)
您好,我在 openGL 中的鼠标移动有一个奇怪的问题。这是我用鼠标移动相机的代码
convertToRads() 是我创建的一个小函数,用于将鼠标坐标转换为弧度。
使用此代码,我可以随心所欲地移动我的相机,但是如果我尝试在达到 45 度左右时一直向上移动,它会围绕 x 轴旋转 1-2 次,然后继续增加 y 轴。我不明白我是否做错了什么,所以如果有人可以提供帮助,我将不胜感激。
python - 如何成功处理 OpenGL 的 gluLookAt 功能?
尝试在我的 python 和 pygame 3D OpenGL 游戏中实现 3D 漫游相机是我一直在尝试做的事情,但我遇到了障碍。每次我尝试使用 gluLookAt 函数时,相机都会吓坏并四处晃动,而 x 和 z 坐标迅速增加并从负向正切换。我正在尝试制作的游戏只是一个可以四处走动的平坦表面。我已经实现了所有用于移动的控件,但没有实现相机。
以下是一些总结代码,供不想阅读我所有代码的人使用:
如果上面的代码无法解决问题,这是我的完整(ish)代码:
任何帮助,将不胜感激!