Итак, я читаю книгу «3D Math Primer For Graphics And Game Development», написанную в значительной степени не из математики. Я наконец начинаю понимать векторную / матричную математику, что является облегчением.
Но да, всегда есть но, у меня проблемы с пониманием перевода объекта из одного координатного пространства в другое. В книге автор приводит пример с стрельбой из пистолета по машине (изображение), которая перевернута 20 градусов (просто двумерное пространство для простоты) в «мировом пространстве». Итак, у нас есть три пространства: мировое пространство, пространство для объектов с оружием и пространство для объектов с автомобилями — правильно? Затем в книге говорится следующее:
"На этом рисунке мы представили винтовку, которая стреляет пулей в машину. Как показано координатным пространством слева, мы обычно начинаем со знания об оружии и траектории пули в мировом пространстве. Теперь представьте преобразование координатного пространства в соответствии с пространством объектов автомобиля, сохраняя при этом машину, пистолет и траекторию пули неподвижными.Теперь мы знаем положение пистолета и траекторию пули в пространстве объектов автомобиля. машину, и мы могли бы провести тесты на пересечении, чтобы увидеть, попадет ли пуля в машину и где".
И я следую этому объяснению, и когда я заранее знаю, что машина повернута на 20* градусов в мировом пространстве это не проблема - но как это перевести в ситуацию скажем когда у меня лучник в игре стреляет с горки вниз на кого-то другого? Я не знаю под каким углом там все смещено?
А пространство какого предмета здесь вращается? Мир или оружейное пространство? Да, как видите, я немного запутался.
Я думаю, что идеальным ответом было бы использование примера с автомобилем и оружием с произвольными переменными для положения, угла и т. д.