将 mat3 转换为 mat4 的最简单方法

Dra*_*n D 6 matrix glm-math

我提取了 mat4 的左上角 3x3 旋转矩阵:

glm::mat4 model;  
glm::mat3 rot = glm::mat3(model);
Run Code Online (Sandbox Code Playgroud)

现在我想要单位矩阵,左上角是我的新 mat3

在此输入图像描述

最简单的方法是什么?

glm::mat4 result;
result[0] = glm::vec4(rot[0], 0);
result[1] = glm::vec4(rot[1], 0);
result[2] = glm::vec4(rot[2], 0);
result[3] = glm::vec4(0, 0, 0, 1);
Run Code Online (Sandbox Code Playgroud)

有没有更好的办法?

小智 9

尝试一下这是否适合您:

glm::mat4 result = glm::mat4(rot);
Run Code Online (Sandbox Code Playgroud)