Как я могу использовать python в Blender Game Engine (2.5+) для сохранения буфера глубины и цветового буфера для хранения каждого кадра?

798
twerdster

Мне нужно сохранять буфер цвета и буфер глубины для данной камеры в сцене в Blender Game Engine каждый кадр в файл (каждый в свой файл). Это возможно? Как это можно настроить с помощью BGE и python?

Я спрашивал на форуме Blender Artists, но, похоже, никто не поднял вопрос .

0

1 ответ на вопрос

1
Skyler Saleh

Saving the frame buffer out to a file is a very slow operation. So I am going to be assuming you don't have to do this in real time... So what you will want to do is set up two sets of shaders. One that is your normal color shader, and another that renders the depth of the object as the color. Then you will render your scene twice with both sets of shaders. From there you have two options...

  1. Use BGL.glReadPixels to read the screen image every frame and export them manually.
  2. Switchover to the standard blender renderer and render an animation with both sets of shaders.
Как я могу сделать экран дважды в BGE? twerdster 12 лет назад 0
Не делайте, меняйте местами шейдеры в каждом другом кадре (визуализируйте цвет на четных кадрах, затем глубину на нечетных) или визуализируйте всю последовательность дважды Могу ли я спросить, для чего вы хотите использовать это? Skyler Saleh 12 лет назад 0
Пользуюсь первым методом. Определенно самый простой. Используя его для моделирования глубины сканера twerdster 12 лет назад 0