Как правильно повернуть позицию кватернионом?C++

Программы на C++. Форум разработчиков
Anonymous
Как правильно повернуть позицию кватернионом?

Сообщение Anonymous »

В настоящее время я пытаюсь повернуть вершины с помощью кватерниона, используя C++, OpenGL и GLM, но не могу заставить это работать правильно. В настоящее время у меня есть объект «Rect», который может хранить положение, поворот, длину и ширину. Выглядит это примерно так:

Код: Выделить всё

struct Rect
{
Rect()
:position(glm::vec3(0.0f, 0.0f, 0.0f)),
rotation(glm::vec4(0.0f, 0.0f, 0.0f, 1.0f)),
length(0.0f),
width(0.0f)
{}

glm::vec3 position;
// A quat
glm::vec4 rotation;
float length, width;

void printCoords() const noexcept
{
std::cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/78686777/how-to-properly-rotate-a-position-by-a-quaternion[/url]

Вернуться в «C++»