问题标签 [glrotate]
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.
java - 旧的 JOGL,转换顺序
我必须解决一个问题,我意识到它有点老派代码..
我需要写下从 1 到 4 的转换顺序以及 pruple 顶点的结果。有人会帮我检查它是否正确,如果不正确 - 为什么?
我很难找到答案并 100% 确定它是正确的。
我认为是正确的: 1.从底部开始,先拿MODELVIEW,然后是PROJECTION - 但我不确定我做对了......
编辑,代码重写为文本:
按顺序写下变换,并写下每个变换紫色顶点的坐标变化。
变换 1:________________ 坐标 x:_______ y:_______ z:_______
变换 2:________________ 坐标 x:_______ y:_______ z:_______
变换 3:________________ 坐标 x:_______ y:_______ z:_______
变换 4:________________ 坐标 x:_______ y:_______ z:_______
opengl - glRotatef() - How to apply rotation in multiple axis?
I am trying to rotate a cube 90 degrees on the Y axis, and then 90 degrees on the Z axis, but when I apply the rotation on the Z axis, it actually changes the angle only on the X axis.
This is my code:
What is the correct way to achieve the result I want - I.e. 90 degrees on Y and then 90 degrees on Z?
Is there a good tutorial that explains how to use glRotate()
correctly with examples?
c++ - 在 C++/OpenGL 中投影一个围绕另一个对象旋转的对象
我正在使用 OpenGL/C++ 创建游戏。
我正在开发的这款游戏的一个方面是让一个角色以所述角色面对的方式发射弹丸。为此,我有一个“玩家”和一个“射弹”。
我将字符 x 和 y 坐标(玩家面对的角度)传递给射弹。从这里我想朝那个方向射击弹丸。
在我的绘图中,我目前正在使用带有字符 x 和 y 的 glTranslate,并在角色面对的方式上旋转弹丸。这会将我的弹丸移动到玩家面对的方向。
这就是我卡住的地方,我可以通过增加/减少平移中的 X 和 Y 值来移动弹丸位置。但我想问的是我怎样才能沿着玩家面对的线移动弹丸。
谢谢您的帮助!
vb.net - 旋转图像后,平移矢量倾斜
旋转图像后,我正在尝试纠正模型的平移和旋转行为。这似乎是一个普遍的问题。我以前见过这个问题,但我没有看到它以我理解如何将它应用于我的代码的方式回答。我只是希望平移和旋转行为在旋转图像之前保持不变。第一次旋转后,平移和旋转永远倾斜。另外,我对 OpenGL 非常熟悉,所以请慢慢说。
编辑1:
我的绘制循环是:
投影矩阵:让我备份一下。我正在绘制一个在 3D 空间 [Vertex3] 中有数千个顶点的 CAD 模型。我正在二维空间 [Ortho] 中查看它们。我修改投影矩阵以从不同的角度查看模型。我认为这比重新绘制整个模型并转换所有顶点更容易。在我看来,移动相机比重新计算数千个顶点的位置更容易。我认为这是标准的。如果没有,我会全神贯注。
opengl - 使用 glRotatef 旋转会导致翘曲
我正在尝试将玩家的图像旋转到他们指向的位置。从技术上讲,这很好用。它把变换到中心后的图像沿Z轴旋转,然后再变换回来,没问题。
但是,当它被渲染时,当角度指向窗口的较宽部分时,图像会被挤压,就好像它试图按比例对图像进行归一化一样。如果我将分辨率设置为正方形(1080x1080、1440x1440 等),那么它可以正常工作,但是任何不是正方形的矩形分辨率都会使其播放器图像变形。
当我试图让环境围绕播放器的 x/y 坐标旋转时,我最初遇到了同样的问题,但是通过将 glViewport 设置为正方形来解决这个问题。
glViewport(0,0,width,width);
这些效果镜面分别为 270 度和 180 度,并在所有其他角度逐渐相互转换。
Player.render() 的代码
和 drawTexture 方法:
不完全确定去哪里尝试解决这个问题,我自己对其他显然没有这个问题的人的研究只是导致脱发。如果需要更多代码或更多图像,请相信我,我会跪下寻求帮助。
c++ - 多次旋转问题
这是我的问题。我必须在双三次曲面上沿圆形轨迹移动圆环。
然而,圆环的垂直轴必须与给定点的表面法线对齐。此外,圆环必须面对它的圆形轨迹。
为了解决这个问题,我采用了法线向量和 Oy 向量,做了一个十字和一个点积来找到我需要的角度和旋转的轴,它可以工作。为了管理第二部分,我获取了圆环的实际坐标,接下来是圆形轨迹上的坐标,制作了一个矢量,并按照前面描述的方法找到了角度和轴,它可以工作。
我的问题是,我必须同时应用两个旋转,但我找不到这样做的方法。我试图以各种可能的方式推送/弹出矩阵,但我找不到摆脱这种方式的方法。所以我回到这个...
有任何想法吗?很抱歉打扰你,我想它一定很简单,但我没有看到。无论顺序如何,第一个轮换总是会干扰下一个轮换。vecortho 是根据表面法线和 Oy 计算的轴矢量。tang 是用我的轨迹向量和 Ox 计算的向量。
c++ - OpenGL用2个点画一个圆柱体 glRotated
我想展示一个从a点开始的圆柱体,它指向我认为关键在第一个glRotated中,但这是我第一次使用openGL a和b是btVector3
有什么建议么 ??
opengl - 分解 glRotatef
我有带有这些参数的函数 glRotatef。
如果我这样做...
我没有得到与使用上述相同的旋转。那么,如何从中获得每个元素(x,y,z)的旋转?
python-3.x - glRotate() 在我不做任何事情的情况下不断放大和缩小我的视图
我在这个项目中使用 pyopengl 和 glut。我刚刚添加了一个鼠标事件处理程序以旋转对象。它的作用是当光标到达窗口边缘时,它会旋转。但是,当我将光标移回窗口中心时,对象开始交替放大和缩小。我检查了,我确定我没有制作那个功能。
我试图修改事件处理程序。我发现物体放大和缩小的速度是我放入的旋转速度glRotatef()
。物体像钟摆一样进出屏幕,其速度与 a 成正比sin()
。我刚刚发现物体的速度与sin()
我放入的旋转速度成正比glRotatef()
。
这是我的鼠标事件处理程序
这是我的显示函数,在 glut 主循环中调用。
我不知道这些代码是否足以识别和解决问题。如果有人需要程序的任何其他部分,请告诉我,我会添加。当光标移回窗口中心时,有人可以帮助我使对象停止旋转并且不放大和缩小吗?
c++ - 如何仅旋转特定对象而不影响opengl中的其他对象?
我在 OpenGL 中制作风扇,里面有杆子和旋转的东西,当我尝试旋转它们时,所有风扇都随着杆子旋转,我应该如何修复它,我glutPostRedisplay()
也使用过在旋转中使用push和pup矩阵,它根本不旋转,它只以我写的角度旋转一次,有什么建议有帮助吗?