Login
как правильно программировать?
785 просмотров
Перейти к просмотру всей ветки
in Antwort pkrasnop 20.09.09 21:44
В ответ на:
У меня есть класс отвечающий за преобразование систем координат (читай трансформацию объектов). Я ему передаю точки, он мне их трансформирует.
template <typename Point>
class Transform
{
virtual void transform(Point& out, const Point& in) const = 0;
}
Т.к. объекты могут быть большими вызов функции будет частым, и если преобразование будет простым, то стоимость вызова функции будет сопоставима со стоимостью её вычисления.
У меня есть класс отвечающий за преобразование систем координат (читай трансформацию объектов). Я ему передаю точки, он мне их трансформирует.
template <typename Point>
class Transform
{
virtual void transform(Point& out, const Point& in) const = 0;
}
Т.к. объекты могут быть большими вызов функции будет частым, и если преобразование будет простым, то стоимость вызова функции будет сопоставима со стоимостью её вычисления.
А, вроде бы, понятно в какой области пишите. Если идёт речь о пересчёте координат вершин, когда сцена содержит их десятки тысяч и более, то вменяемые люди делают плоский массив вершин всей сцены, и трансформация дёргается не на каждую вершину, а сразу на весь массив. Ну, и, ессно, оптимизация должна отсекать вершины не попадающие в поле зрения.
"God is dead" (Nietzsche). "Nietzsche is
dead" (God).
http://reaper507.blogspot.com
http://reaper507.blogspot.com
Dropbox - средство синхронизации и бэкапа файлов.