В настоящее время я работаю над заданием, в котором мне нужно реализовать растеризатор только для ЦП для наборов данных сфер. Наборы данных статичны и поэтому не меняются во время выполнения, даже если весь набор может вращаться перед камерой.
Теперь идея состоит в том, чтобы реализовать какой-то метод отсечения окклюзии, чтобы сферы, закрытые другими сферами с точки зрения камеры, не попадали на следующий этап растеризатора (тестирование с z-буфером и затенение пикселей), тратя впустую Процессорное время.
Я искал возможные способы добиться этого. Сначала я подумал о реализации иерархической Z-буферизации, которая поддерживает модель сцены в октодереве. Однако, поскольку наборы данных вращаются, мне нужно будет пересчитывать октодерево каждый кадр, что может быть довольно дорогостоящим. Я прав?
Я не уверен, может ли пространственное хеширование или более дешевая иерархическая организация набора данных сфер быть более выгодным в этом сценарии. Есть мысли по этому поводу? Обратите внимание, что это должно быть полностью реализовано на CPU.