opengl - OpenGL(LWJGL)围绕固定点旋转对象
问题描述
我正在使用 LWJGL OpenGL 编写游戏,我使用变换矩阵围绕模型原点旋转对象:
public static Matrix4f createTransformationMatrix(Vector3f translation, float rx, float ry, float rz, Vector3f scale) {
Matrix4f matrix = new Matrix4f();
matrix.setIdentity();
Matrix4f.translate(translation, matrix, matrix);
Matrix4f.rotate((float) Math.toRadians(ry), new Vector3f(0, 1, 0), matrix, matrix);
Matrix4f.rotate((float) Math.toRadians(rz), new Vector3f(0, 0, 1), matrix, matrix);
Matrix4f.rotate((float) Math.toRadians(rx), new Vector3f(1, 0, 0), matrix, matrix);
Matrix4f.scale(scale, matrix, matrix);
return matrix;
}
但是,我希望围绕另一个对象的原点旋转一个对象,而不是它自己的原点。请帮忙?谢谢
解决方案
推荐阅读
- salesforce - DocuSign 状态不是随机创建的,十六进制值 0x0B 是无效字符
- android - 我的应用程序编译,但在运行时崩溃 - 为什么?
- javascript - Vue.js 过渡组删除并再次添加
- jquery - 查找#ID 以添加/删除类
- javascript - 反应不会在我的窗口上呈现任何内容
- c# - 在自动生成的文件中找不到 C# 程序集名称
- ios - iOS Swift WKWebView 没有缩放
- gradle - Gradle:运行单个测试会出现错误:原因:org.gradle.api.InvalidUserDataException 属性“$1”,因为它是一个目录
- websphere - 在 websphere 中找不到提供的选项的匹配项
- activerecord - Rails 5 ActiveRecord - 结合 OR 和 AND 子句