Прокси окклюзии

Материал из CryWiki Russia

(Различия между версиями)
Перейти к: навигация, поиск
 
(4 промежуточные версии не показаны)
Строка 1: Строка 1:
-
{{В_процессе_перевода}}
 
== Occlusion proxy  ==
== Occlusion proxy  ==
 +
Прокси окклюзии - это простой геометрический объект,&nbsp;который прекращает рендеринг объектов,&nbsp;находящихся за ним.<br>Например, если игрок стоит перед большой бетонной стеной без отверстий,&nbsp;движку не нужно обрабатывать объекты которые находятся за ней. Это может значительно уменьшить время на рендеринг и заметно увеличить количество fps.<br>
-
An Occlusion proxy is a simple geometry object which prevents objects behind from being rendered.<br> For example if the player stands in front of a big concrete wall with no holes inside, the engine does not need to render the objects behind the wall. This can reduce rendering time significantly and increase frames per second enormously.
+
=== Файл примера  ===
-
=== Sample File  ===
+
Файл примера можно скачать здесь: [http://wiki.crymod.net/images/9/94/Occlusion.max.rar Occlusion.max (в архиве)]
-
Sample File: [http://wiki.crymod.net/images/9/94/Occlusion.max.rar Occlusion.max (в архиве)]
+
=== Основная настройка в 3d редакторах  ===
-
=== General Setup in 3d applications  ===
+
Простой геометрический объект, дающий общее представление о геометрической форме для рендера,&nbsp;созданный в 3d редакторе (например плоскость для бетонной стены). Он должен называться "$occlusion" и быть прикреплённым к объекту,&nbsp;которому он принадлежит. В нашем примере это кусок стены. Никаких дополнительных настроек для материала не требуется.
-
A simple geometry object which represents the shape of the render geometry is created in the 3d application (i.e. a plane for the concrete wall). It must be named "$occlusion" and linked to the object it belongs to. In our example the wall piece. No special material setup is needed.
+
'''Это важно знать:'''
-
'''Important things to remember:'''
+
*Полигоны окклюзии будут рассматриваться с двух сторон.
-
*Occlusion polygons will be treated doublesided.
+
Простая односторонняя плоскость в 3d пакете отлично подойдёт для окклюзии стены,&nbsp;через которую нельзя видеть.  
-
A simple single sided plane in the 3d package might be a suffcient occluder for a non-see-through wall.  
+
*Создавайте окклюдер как можно более простым,&nbsp;т.е. односторонняя плоскость - для одосторонней стены.
-
*Keep the occluder as simple as possible, i.e. a singlesided plane for a complex wall.
+
==== Экспорт  ====
-
==== Export  ====
+
*В случае правильного присоединения к объекты, элемент прокси окклюзии $occlusion не нужно добавлять в список экспортера.
-
*When linked correctly, the $occlusion proxy does not need to be added to the list window of the exporter.
+
Опция '''"Merge all Nodes" '''<u>должна быть выключена</u>* в настройках экспорта.  
-
'''"Merge all Nodes" needs to be '''unchecked* in the exporter settings.
+
=== Настройка в Sandbox  ===
-
=== Setup in Sandbox  ===
+
Дополнительной настройки для редактора уровней не требуется.
-
No special setup needed in Sandbox
+
=== Отладка  ===
-
=== Debugging  ===
+
*e_debug_draw 11: Отрисовывать геометрию окклюзии дополнительно
 +
*e_debug_draw 12: Отрисовывать геометрию окклюзии без отрисовки геометрии
 +
*e_debug_draw 13: Количество отрисовки (используется для рассчёта AO)
-
*e_debug_draw 11: Render occlusion geometry additionally
+
*e_CoverageBufferDebug 1&nbsp;: Включает режим отладки буфера покрытия
-
*e_debug_draw 12: Render occlusion geometry without render geometry
+
*e_Bboxes: отображение displays ограничительных рамок объектов (они будут рассчитаны параллельно с расположением мира; рамки будут больше для вращающихся объектов)  
-
*e_debug_draw 13: Render occlusion ammount (used during AO computations)
+
*e_CoverageBufferDrawOccluders&nbsp;: отрисовка отладки окклюдеров в буфере покрытия.
-
 
+
-
*e_CoverageBufferDebug 1&nbsp;: enables Coverage Buffer Debugging mode
+
-
*e_Bboxes: displays bounding boxes of objects (they are calculated parallel to the world orientation; bbox will be bigger for rotated objects)  
+
-
*e_CoverageBufferDrawOccluders&nbsp;: debug draw of occluders in coverage buffer.
+
[[Category:Официальная_документация:Создание_ресурсов:Основы]]
[[Category:Официальная_документация:Создание_ресурсов:Основы]]

Текущая версия на 12:33, 16 мая 2011

Содержание

Occlusion proxy

Прокси окклюзии - это простой геометрический объект, который прекращает рендеринг объектов, находящихся за ним.
Например, если игрок стоит перед большой бетонной стеной без отверстий, движку не нужно обрабатывать объекты которые находятся за ней. Это может значительно уменьшить время на рендеринг и заметно увеличить количество fps.

Файл примера

Файл примера можно скачать здесь: Occlusion.max (в архиве)

Основная настройка в 3d редакторах

Простой геометрический объект, дающий общее представление о геометрической форме для рендера, созданный в 3d редакторе (например плоскость для бетонной стены). Он должен называться "$occlusion" и быть прикреплённым к объекту, которому он принадлежит. В нашем примере это кусок стены. Никаких дополнительных настроек для материала не требуется.

Это важно знать:

  • Полигоны окклюзии будут рассматриваться с двух сторон.

Простая односторонняя плоскость в 3d пакете отлично подойдёт для окклюзии стены, через которую нельзя видеть.

  • Создавайте окклюдер как можно более простым, т.е. односторонняя плоскость - для одосторонней стены.

Экспорт

  • В случае правильного присоединения к объекты, элемент прокси окклюзии $occlusion не нужно добавлять в список экспортера.

Опция "Merge all Nodes" должна быть выключена* в настройках экспорта.

Настройка в Sandbox

Дополнительной настройки для редактора уровней не требуется.

Отладка

  • e_debug_draw 11: Отрисовывать геометрию окклюзии дополнительно
  • e_debug_draw 12: Отрисовывать геометрию окклюзии без отрисовки геометрии
  • e_debug_draw 13: Количество отрисовки (используется для рассчёта AO)
  • e_CoverageBufferDebug 1 : Включает режим отладки буфера покрытия
  • e_Bboxes: отображение displays ограничительных рамок объектов (они будут рассчитаны параллельно с расположением мира; рамки будут больше для вращающихся объектов)
  • e_CoverageBufferDrawOccluders : отрисовка отладки окклюдеров в буфере покрытия.