Я шукаю швидку математику-бібліотеку C ++ для мого ігрового двигуна з такими можливостями:
- швидкий (sse?)
- вектори
- матриці
- кватерніони
підходить як для opengl, так і для directx
Я шукаю швидку математику-бібліотеку C ++ для мого ігрового двигуна з такими можливостями:
підходить як для opengl, так і для directx
Відповіді:
XNA Math може бути для вас. Це лише математична бібліотека C ++, яка розповсюджується за допомогою останнього SDD DirectX і використовує SSE. Я не можу багато говорити про його ефективність, але з того, що я читав про нього, це здається досить пристойним.
Посібник з програмування XNA Math
EDIT: Я також не впевнений в умовах ліцензування. У DX SDK Eula зазначено, що "Розподільний код" може бути не
"працювати на інших платформах, крім платформ Windows, Xbox та Windows Mobile;"
Я не зовсім впевнений, чи застосовується це до математики xna, оскільки тільки зразок та корисний код явно позначені як "Розподільний код"
Ми використовуємо математику OpenGL
Навіть незважаючи на те, що назва означає, що це просто для OpenGL, я не бачу причин, щоб він не працював для DirectX. Це лише бібліотека із заголовками, проста у використанні та дуже активно оновлюється.
Перевір.
Бібліотека вектораматеріалів Sony, яка використовується як частина Bullet Physics , відповідає всім вашим вимогам. Деякі роботи пов'язані з відокремленням від Bullet, але нічого серйозного - це не залежить від кулі, тільки те, що ніхто ніколи офіційно не пакував її.
Наразі версія дерева в кулі підтримує оптимізацію SSE та має інтерфейс C ++.
Старіша версія (можливо, зараз не підтримується) також підтримує формати SOA та чистий C інтерфейс.
Або, для швидкості, http://sourceforge.net/projects/simdx86/ .