Я хочу реализовать объемный рендеринг больших наборов данных, которые больше, чем память графического процессора, на основе графического процессора. Я пытаюсь сделать так:
(1) Сначала я делю объем на блоки одинакового размера.
(2) Затем я решаю, является ли каждый кирпич прозрачным или нет в соответствии с передаточной функцией.
(3) Затем я сохраняю непрозрачный кирпич в «Упакованной текстуре». Чтобы сделать выборку во время рендеринга raycasting, я создаю другую текстуру, называемую «Индексная текстура», которая хранит индекс кирпича в упакованной текстуре.
Когда я делаю выборку во время рендеринга в шейдере, сначала я вычисляю, в каком кирпиче находится точка выборки. А затем я обращаюсь к Index-Texture, чтобы получить значение точки выборки. Но по умолчанию значение интерполируется, а не правильно указан индекс кирпича в Packed-Texture.
Итак, мой вопрос: когда делать выборку во время рендеринга ray casting, как правильно получить индекс кирпича (в котором находится точка выборки) в Packed-Texture из Index-Texture?