Russian ZiggywareСтатьи

Content Pipeline: краткий обзор

О Content Pipeline в XNA вкратце.

http://ru.ziggyware.com/readarticle.php?article_id=17

Content Pipeline: краткий обзор
Content Pipeline в XNA Game Studio позволяет Вам без труда загружать контент, в каком бы формате он не был.
Что такое контент? Дабы понять, взгляните на какую-нибудь игру – Вы ведь наверняка видели там текстуры, модели и прочее – вот это все в совокупности и есть контент. Каждая модель, например, может быть создана в одном из десятков пакетов моделирования, и, следовательно, будет сохранена в каком либо формате, присущем данному пакету моделирования. И как показывает практика, имеется тенденция к частому изменению этих форматов.
На помощь приходит Content Pipeline, цель которого: максимально облегчить и автоматизировать процесс добавления контента в игру. Скажем, работает моделер над моделью машины, и, как только он сделает ее, он сможет без труда добавить ее в проект: выбрать имя, импортер и процессор контента. Программист же, так же без труда может загрузить эту модель, используя заданное имя и метод ContentManager.Load. Тем самым, такой процесс позволяет моделеру сконцентрироваться на моделировании, а программисту на игровой логике, ведь им не нужно лишний раз заморачиваться над тем, как бы импортировать модель в игру.

Назначение Content Pipeline

XNA Framework Content Pipeline предназначен для того, чтобы:

    * Дать артистам ( т.е. создателям контента ) возможность использовать любимую программу по созданию контента.

    * Предоставить механизм, способный убрать зависимость контента от специфики конкретного игрового движка.

    * Предоставить простую, расширяемую систему построения контента, которая бы удовлетворяла потребностям как артистов, так и программистов.


Основы Content Pipeline

Исходя из того, что каждая программа сохраняет в свой формат, XNA Game Studio Content Pipeline позволяет Вам без труда компилировать контент, в каком бы формате он не был. Вот очень упрощенное описание того, что происходит:

    * В XNA Game Studio имеются встроенные контент импортеры и процессоры для нескольких популярных форматов.

    * Если Вы располагаете достаточной информацией о формате, Вы можете написать свой собственный контент импортер и процессор.

    * Когда Вы подключаете арт (модель\текстура и т.д. ) к игровому проекту XNA Game Studio, Вы, во вкладке Properties, выбираете подходящий контент импортер и процессор. Затем, когда Вы нажимаете F5, чтобы скомпилировать игру, компилируются и ресурсы, путем вызова соответствующего контент импортера и процессора. Когда ресурс скомпилен, он может быть использован в игре посредством метода ContentManager.Load.


Контент импортер и процессор

  1. Импортер конвертирует ресурс, из какого либо формата, в объект XNA Game Studio Content DOM (document object model), который может распознать контент процессор.

  2. Процессор же, в зависимости от типа импортированного ресурса, генерирует соответствующий управляемый код, который используется XNA игрой для Windows и для Xbox 360.

#content, #content pipeline

25 мая 2008