Re[3]: Как лучше задизайнить?
От: diez_p  
Дата: 18.10.25 13:20
Оценка:
Здравствуйте, Hоmunculus, Вы писали:

H>Здравствуйте, kov_serg, Вы писали:


_>>Для начала внятно сформулировать требования и ограничения.


H>Ну пример.

H>нода А. Генерит миллион точек какой-то поверхности (по 3 флоата), нормали (по 3 флоата) и индексы треугольников (по три инта). У ноды есть параметры — параметры построения повехрности. То есть при изменении парамера меняются точки, нормали и индексы треугольников самой поверхности. Ну и на каждой вершине пара аттрибутов, например цвет, UV текстуры, может вес какой-то.
H>Тут как бы оптимизровать по памяти нечего. Миллион точек надо кидать в видюху и рендерить поверхность

H>нода В. Как А, но только другой алгоритм поверхности. Никак он А не зависит. Тоже свой массив данных.


H>нода С. На вход принимает ноду А и В и сшивает из них третью поверхность. Аттрибуты так же прнимаются с двух входов


H>Нода D — принимает на вход ноду С и как-то- искажает повехность


H>Нода Е — копируети поворачвает повехность от ноды D


H>Нода F — прнимает на вход D и E и делает булево вычитание поверхностей


H>Каждая нода может как-то рендриться. То есть мы должны кидать массив в видюху от любой ноды.


H>И!!! В чем собсвенно суть. Поменяв один параметр в ноде A все поверхности должны моментально пересроиться без копирования кучи данных между нодами.


H>Это возможно вообще?


H>Я говрю не про сами геометрческие алгоритмы. А именно про протаскивание кучи структур и оптимизацию этого



ПО сути надо построить графы зависимости и инвалидации.
1) можно хранить данные по ссылке и тогда при расчете все будет актуально
2) можно например построить граф зависмостей и построить дерево обновления.
В ноде А поменяли значение, значит надо пойти в граф зависимостей и пересчитать все значения.
Обновление данных можно делать в разное время: сразу или по какому-то сигналу, вопрос применения
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.