Структуры с реализацией 2D и 3D векторов. Ready to use.
Тема
71 15.3K
4
Опять один бородатый программист написал никому не нужную фигню, чтобы обсудить это с двумя другими бородатыми программистами, которые занимаются той же ахинеей.
38
Ну вон xcoll / xdestr вроде всегда хранит и передаёт 3 коорды, чтобы было ещё легче (локалки быстрее глобалок и быстрее обращений к массиву)
30
Я бы вообще сделал вектор неизменяемым.
И пересоздавал каждый раз? Это ещё тяжелее может оказаться. Кроме того, длинна может вообще быть не нужна в системе, и будет храниться мёртвым грузом.

в варкрафте нет
Когда делал демку физики, доводил до 3к физических объектов, в пике нагрузки жило до 4к векторов, так что даже в варкрафте можно ощутимый импакт на потребление памяти увидеть.
38
PT153, лишняя память. Вектор - такой объект, который может создаваться миллионами единиц (в варкрафте нет).
28
Не понимаю этой моды на вычисление длины методом. Почему нельзя её вычислить 1 раз во время создания вектора, записав в переменную, и менять её только в том случае, если вектор был изменён?

Хотят тут, конечно, зависит от использования. Если я часто буду изменять векторы, и редко брать длину, то тогда лучше длину каждый раз считать. Если наоборот, то тогда лучше рассчитывать только при создании и изменении вектора. Я бы вообще сделал вектор неизменяемым.
30
Залили в ресурсы WC3, пользуйтесь на здоровье!