Подготовка и экспорт 3D сцены из 3dsMax для All¹Mix: различия между версиями

Материал из dgraphic
Перейти к навигации Перейти к поиску
Строка 10: Строка 10:
=Общие сведения=
=Общие сведения=
Виртуальная студия, встроенная в All¹Mix не использует дорогостоящих и сложных в эксплуатации трекинговых систем. Однако во многих случаях позволяет добиваться тех же результатов. Как это достигается? В All¹Mix диффузная текстура материала специального объекта 3D сцены (плоского прямоугольника) заменяется на "живое" изображение актера (с альфа-каналом) с неподвижной реальной камеры. При перемещении виртуальной камеры зритель видит картинку аналогичную тому, как если бы реальная камера не стояла на месте, а двигалась согласованно с движением виртуальной камеры.
Виртуальная студия, встроенная в All¹Mix не использует дорогостоящих и сложных в эксплуатации трекинговых систем. Однако во многих случаях позволяет добиваться тех же результатов. Как это достигается? В All¹Mix диффузная текстура материала специального объекта 3D сцены (плоского прямоугольника) заменяется на "живое" изображение актера (с альфа-каналом) с неподвижной реальной камеры. При перемещении виртуальной камеры зритель видит картинку аналогичную тому, как если бы реальная камера не стояла на месте, а двигалась согласованно с движением виртуальной камеры.
Такая технология имеет и плюсы и минусы:  
 
Такая технология имеет и плюсы и минусы:
• К минусам относятся ограничения по углу зрения виртуальной камеры относительно плоскости "Актера".  
• К минусам относятся ограничения по углу зрения виртуальной камеры относительно плоскости "Актера".  
• К плюсам - возможность анимировать виртуальную камеру способами, трудно осуществимыми (или вообще невозможными) для реальной  камеры.
• К плюсам - возможность анимировать виртуальную камеру способами, трудно осуществимыми (или вообще невозможными) для реальной  камеры.
В принципе Render Engine All¹Mix позволяет использовать, например, технологию PBR (physically-based rendering) реального времени. Однако в 3D сцене, предназначенной для использования в  All¹Mix допускаются только стандартные материалы и стандартные источники света. Причем, с ограничениями.  
В принципе Render Engine All¹Mix позволяет использовать, например, технологию PBR (physically-based rendering) реального времени. Однако в 3D сцене, предназначенной для использования в  All¹Mix допускаются только стандартные материалы и стандартные источники света. Причем, с ограничениями.  
Это обусловлено следующими причинами:
Это обусловлено следующими причинами:
• во-первых, стремлением максимально сэкономить ресурсы компьютера, ускорить загрузку 3d сцен.
• во-первых, стремлением максимально сэкономить ресурсы компьютера, ускорить загрузку 3d сцен.
• во-вторых, качество картинки PBR реального времени существенно хуже качества рендеринга в нереальном времени ("Vray", "Corona" и т.п.).
• во-вторых, качество картинки PBR реального времени существенно хуже качества рендеринга в нереальном времени ("Vray", "Corona" и т.п.).
Поэтому создание сцены в 3ds Max для плагинов "Vray" или "Corona", с последующей конвертацией через запекание текстур в стандартную 3ds Max сцену позволит сделать сцену "легкой", а картинку при рендеринге реального времени в All¹Mix -  высокого качества.
Поэтому создание сцены в 3ds Max для плагинов "Vray" или "Corona", с последующей конвертацией через запекание текстур в стандартную 3ds Max сцену позволит сделать сцену "легкой", а картинку при рендеринге реального времени в All¹Mix -  высокого качества.
Таким образом, в результате желательно иметь две 3D сцены:
Таким образом, в результате желательно иметь две 3D сцены:
• Исходную (для плагинов "Vray" или "Corona"), в которой можно использовать любые материалы и любое количество любых источников света.
• Исходную (для плагинов "Vray" или "Corona"), в которой можно использовать любые материалы и любое количество любых источников света.
• Результирующую, которая получается из исходной путем конвертации в "стандартную" 3ds max сцену. Именно из этой сцены производится экспорт в .fbx файл для использования в All¹Mix.
• Результирующую, которая получается из исходной путем конвертации в "стандартную" 3ds max сцену. Именно из этой сцены производится экспорт в .fbx файл для использования в All¹Mix.
! При запекании используйте Map Channel 3
! При запекании используйте Map Channel 3
 


=Объекты, материалы, источники света, камера=
=Объекты, материалы, источники света, камера=

Версия 10:58, 16 мая 2019

All¹Mix является достаточно мощным инструментом для создания, записи и трансляции мультимедийного контента в области телевещания и образования. Вместе с тем этот программный продукт ориентирован, прежде всего, на средние и малые компании, и даже на индивидуальных пользователей. Т.е. от пользователя программы All¹Mix не должно требоваться глубоких специальных знаний выходящих за рамки его профессиональной деятельности.

Это означает, что 3D сцены должны быть подготовлены специальным образом, позволяющим обычному пользователю All¹Mix (не имеющему представления о KeyFrame-анимации, материалах, текстурных координатах и т.п.) управлять анимацией, назначать медиа-источники на элементы сцены и т.п.

All¹Mix тратит значительные ресурсы компьютера на обработку входящих и исходящих видеопотоков, медиафайлов, титровальных элементов и т.п. Это означает, что 3D сцены (а их может быть одновременно использовано несколько в одном проекте All¹Mix) должны быть оптимизированы так, чтобы экономно расходовать ресурсы компьютера, обеспечивать быструю загрузку 3D сцен.

Особенностям подготовки 3D сцен для использования в All¹Mix и посвящена эта статья.

Общие сведения

Виртуальная студия, встроенная в All¹Mix не использует дорогостоящих и сложных в эксплуатации трекинговых систем. Однако во многих случаях позволяет добиваться тех же результатов. Как это достигается? В All¹Mix диффузная текстура материала специального объекта 3D сцены (плоского прямоугольника) заменяется на "живое" изображение актера (с альфа-каналом) с неподвижной реальной камеры. При перемещении виртуальной камеры зритель видит картинку аналогичную тому, как если бы реальная камера не стояла на месте, а двигалась согласованно с движением виртуальной камеры.

Такая технология имеет и плюсы и минусы:

• К минусам относятся ограничения по углу зрения виртуальной камеры относительно плоскости "Актера". • К плюсам - возможность анимировать виртуальную камеру способами, трудно осуществимыми (или вообще невозможными) для реальной камеры.

В принципе Render Engine All¹Mix позволяет использовать, например, технологию PBR (physically-based rendering) реального времени. Однако в 3D сцене, предназначенной для использования в All¹Mix допускаются только стандартные материалы и стандартные источники света. Причем, с ограничениями.

Это обусловлено следующими причинами:

• во-первых, стремлением максимально сэкономить ресурсы компьютера, ускорить загрузку 3d сцен. • во-вторых, качество картинки PBR реального времени существенно хуже качества рендеринга в нереальном времени ("Vray", "Corona" и т.п.).

Поэтому создание сцены в 3ds Max для плагинов "Vray" или "Corona", с последующей конвертацией через запекание текстур в стандартную 3ds Max сцену позволит сделать сцену "легкой", а картинку при рендеринге реального времени в All¹Mix - высокого качества.

Таким образом, в результате желательно иметь две 3D сцены:

• Исходную (для плагинов "Vray" или "Corona"), в которой можно использовать любые материалы и любое количество любых источников света. • Результирующую, которая получается из исходной путем конвертации в "стандартную" 3ds max сцену. Именно из этой сцены производится экспорт в .fbx файл для использования в All¹Mix.

! При запекании используйте Map Channel 3

Объекты, материалы, источники света, камера

Эффекты освещения, важные для визуального восприятия,желательно "запечь" в текстуры (например, используя штатную процедуру 3ds Max "RendertoTexture"). Такие материалы лучше сделать самосветящимися.Это позволит удалить "лишние" источники света, доведя их количество до минимума. Желательно до 1 или 2.

После запекания текстур все материалы, источники света, камеры и т.п. должны быть конвертированы в следующие стандартныедля 3dsMax типы: камера - "FreeCamera", источник света - "Omni", материал - "Standard (Blinn)". Экспортируется для использования в All¹Mix только три типа текстур - "Diffuse", "Opacity" и "Reflection".

1 AllMix 3d.jpg

Камера должна быть одна. Различные положения камеры задаются анимационным треком. Значения для клипирующих плоскостей камеры в свойствах камеры должны быть заданы вручную (ClippingPlanes/ClipManually) в соответствии с параметрами данной 3d-сцены. Перед экспортом ко всем объектам сценырекомендуется применить процедуры "ConverttoEditableMesh"и"ResetX-Form".

Медиа-объекты

В All¹Mixимеется возможность замены диффузной карты материалов 3dсцены на произвольное статическое изображение, файловое или потоковое видео. К которым, в свою очередь (и при необходимости), может быть применена техника"ChromaKey".

Для того чтобы All¹Mixпоместил объект 3dсцены в список медиа-объектов, его имя должно содержать слова "monitor" или "actor". Например: "Back_wall_monitor", "monitor1", "Monitor", "Actor", "FullSizeActor" и т.п.

Медиа-объект должен содержать только один материал.

Медиа-объект "Actor" должен быть планарным объектом (прямоугольником) с пропорциями 16:9 (HD) или 4:3 (SD), в зависимости от типа камеры, снимающей реального актера.Процедура "ResetX-Form" к объекту "Actor" должна быть применена в обязательном порядке. Если первым символом в имени этого объекта является восклицательный знак(например "!MyActor"), то объект будет всегда "смотреть" на виртуальную камеру.

Отражения

В All¹Mix реализована возможность рендеринга отражения в реальном времени для планарных объектов. Такие объекты так же не должны содержать более одного уникального материала.

Планарный объект может иметь любую форму, и даже состоять из отдельных разнесенных фрагментов. Главное чтобы все элементы объекта лежали в одной плоскости.

Как правило, объектами для назначения отражения служат пол, поверхность стола и т.п.

Для того чтобы All¹Mix воспринял объект как отражающий, необходимо в назначенном на него материале поставить "галку" для опции"Reflection" и установить "вес" отражения.

Поле "map" должно содержать процедурную карту "FlatMirror". Степень размытия отражения задается параметром "Bloor" в свойствах карты "FlatMirror".

2 AllMix 3d.jpg

  • Если в поле "Map" опции "Reflection" используется "Bitmap", то "отражения" строятся обычным образом - на основе выбранных текстурных карт. В этом случае объект не обязан быть планарным.

Анимация

Временную конфигурацию анимации следует привести к формату "Frames" (TimeConfiguration/TimeDisplay/Frames), поскольку для All¹Mix описание отрезков треков анимации задается именно в этом формате.

В All¹Mix проигрывание анимационных треков производится между некоторыми именованными состояниями объекта, с уникальным набором параметров: "position", "rotate", "scale". В дальнейшем будем называть эти состояния стейтами (от "State").

Принцип стейт-анимации заключается в том, что при работе в All¹Mix пользователь выбирает не конкретный отрезок анимационного трека для проигрывания, а "пункт назначения" - состояние, к которому должен "прийти" объект. При этом программа All¹Mix автоматически выбирает тот отрезок трека, начало которого соответствует текущему состоянию, а конец - целевому состоянию. Если такого отрезка трека не имеется, то переход из текущего состояния в конечное осуществляется мгновенно.

Описание используемых отрезков анимированных треков, соответствующих анимированным преходам между стейтами объекта задается в пользовательских свойствах этого же объекта в следующем формате:

<animation name="StateName _to_StateName " from="number" to="number" />

Например:

3 AllMix 3d.jpg

В данном примере описаны переходы между всеми состояниями, но это не обязательно. Из примера так же видно, что описывать отрезки анимации, соответствующие обратным переходам, необязательно. Поскольку All¹Mix умеет проигрывать треки как в прямом, так и в обратном направлении.

Экспорт из 3dsmax

Для использования 3D сцены в All¹Mix, необходимо экспортировать сцену в формат FBX (с опцией "Embed Media")

4 AllMix 3d.jpg