3D форматы файлов для игр

Используя API Java:

String[] f(String[] first, String[] second) {
    List<String> both = new ArrayList<String>(first.length + second.length);
    Collections.addAll(both, first);
    Collections.addAll(both, second);
    return both.toArray(new String[both.size()]);
}
16
задан BinaryMisfit 19 October 2009 в 11:30
поделиться

7 ответов

В XNA штраф за попытку сделать что-либо самостоятельно (в частности, загружать форматы данных) намного выше, чем жить с несовершенствами тех, которые поддерживаются прямо с полки, по крайней мере, так выглядит документация, и что я слышал от человека, который сильно изменил конвейер контента, чтобы поддержать то, что ему нужно (генерация геометрии времени выполнения), и кому я доверяю знать, что он делает. Так что я думаю .X и .FBX в значительной степени будут ими. Оба они поддерживают скелетную анимацию и, я думаю, также морпинг вершин. Я не совсем уверен, какие именно функции Blender может в них экспортировать, но я могу изучить это, если хотите.

Blender 2.5, наконец, получит хорошую поддержку Collada (текущий не имеет арматуры и является сломан множеством способов), а Autodesk предоставляет хороший инструмент для преобразования Collada <-> FBX.

Если вы посмотрите вокруг сообщества разработчиков-любителей, вы увидите, что форматы данных программного обеспечения Id довольно популярны. С одной стороны, форматы анимации персонажей с морфингом вершин MD2 и MD3, формат скелетной анимации MD5, потребности которого, очевидно, покрываются вышеизложенным, а с другой стороны, формат файла BSP, который описывает уровни игры.

Одна вещь, которая говорит о многом. для BSP - это хороший редактор (GTKRadiant и производные). Это эффективный формат, который может отсеивать скрытую геометрию. Однако затраты времени выполнения на построение нестандартной геометрии в XNA значительны, и с учетом ограничений этих форматов, они довольно скромны и составляют 64 тыс. Вершин и 64 тыс. Полигонов для всего игрового уровня, что в настоящее время можно просто сбросить на видеокарту и не использовать. падение производительности будет заметно. Так что вы не получите никакой выгоды от его поддержки напрямую.

Я сомневаюсь, что существуют какие-либо мощные, современные доступные форматы и инструменты для проектирования уровней, оптимизированных для отбраковки, чьи преимущества в производительности были бы переведены в XNA.

ссылки, которые вы, возможно, захотите проверить, если вы еще этого не сделали:

Конвейер контента 3D World Studio

Порт Quake

Все не обслуживаются и устарели, не знаю, насколько оптимизированы или нет.

затраты времени выполнения на построение нестандартной геометрии в XNA значительны, и с ограничениями этих форматов довольно скромны: 64 тыс. вершин и 64 тыс. полигонов для всего игрового уровня, что в настоящее время можно просто сбросить на видеокарту и без потери производительности. будет заметно. Так что вы не получите никакой выгоды от его поддержки напрямую.

Я сомневаюсь, что существуют какие-либо мощные, современные доступные форматы и инструменты для проектирования уровней, оптимизированных для отбраковки, чьи преимущества в производительности были бы переведены в XNA.

ссылки, которые вы, возможно, захотите проверить, если вы еще этого не сделали:

Конвейер контента 3D World Studio

Порт Quake

Все не обслуживаются и устарели, не знаю, насколько оптимизированы или нет.

затраты времени выполнения на построение нестандартной геометрии в XNA значительны, и с ограничениями этих форматов довольно скромны: 64 тыс. вершин и 64 тыс. полигонов для всего игрового уровня, что в настоящее время можно просто сбросить на видеокарту и без потери производительности. будет заметно. Так что вы не получите никакой выгоды от его поддержки напрямую.

Я сомневаюсь, что существуют какие-либо мощные, современные, доступные форматы и инструменты для проектирования уровней, оптимизированных для отбраковки, чьи преимущества в производительности были бы переведены в XNA.

ссылки, которые вы, возможно, захотите проверить, если вы еще этого не сделали:

Конвейер контента 3D World Studio

Порт Quake

Все не обслуживаются и устарели, не знаю, насколько оптимизированы или нет.

и с учетом ограничений, эти форматы довольно скромны - 64 тыс. вершин и 64 тыс. полигонов для всего игрового уровня, что в настоящее время можно просто сбросить на видеокарту, и никакого падения производительности не будет заметно. Так что вы не получите никакой выгоды от его поддержки напрямую.

Я сомневаюсь, что существуют какие-либо мощные, современные, доступные форматы и инструменты для проектирования уровней, оптимизированных для отбраковки, чьи преимущества в производительности были бы переведены в XNA.

ссылки, которые вы, возможно, захотите проверить, если вы еще этого не сделали:

Конвейер контента 3D World Studio

Порт Quake

Все не обслуживаются и устарели, не знаю, насколько оптимизированы или нет.

и с учетом ограничений, эти форматы довольно скромны - 64k вершин и 64k полигонов на уровне всей игры, что в настоящее время можно просто сбросить на видеокарту, и никакого падения производительности не будет заметно. Так что вы не получите никакой выгоды от его поддержки напрямую.

Я сомневаюсь, что существуют какие-либо мощные, современные, доступные форматы и инструменты для проектирования уровней, оптимизированных для отбраковки, чьи преимущества в производительности были бы переведены в XNA.

ссылки, которые вы, возможно, захотите проверить, если вы еще этого не сделали:

Конвейер контента 3D World Studio

Порт Quake

Все не обслуживаются и устарели, не знаю, насколько оптимизированы или нет.

10
ответ дан 30 November 2019 в 17:28
поделиться

Уже упомянутые COLLADA и FBX - единственные стандартные форматы, которые получили сколько-нибудь существенное распространение в игровой индустрии. Однако некоторые игры загружают их напрямую - они обычно используются в качестве промежуточных форматов для экспорта из приложений DCC, а затем обрабатываются в более оптимизированные форматы времени выполнения, которые, как правило, являются индивидуальными и специфичными для движка.

Разработчики-любители часто используют форматы файлов из популярных игр в качестве отправная точка. Модель и форматы карт Quake 3 какое-то время были довольно популярны. Формат .X от Microsoft также был довольно популярен для любительских проектов из-за наличия ряда экспортеров и поддержки загрузки в структуре D3DX.

6
ответ дан 30 November 2019 в 17:28
поделиться

Если вы используете XNA, то лучшим вариантом, вероятно, будет FBX. Основная причина, по которой я говорю это, заключается в том, что это единственный, не специфичный для XNA формат , изначально поддерживаемый XNA в конвейере создания контента.

6
ответ дан 30 November 2019 в 17:28
поделиться

Вы, вероятно, захотите взглянуть на COLLADA, который является широко используемым стандартом в разработке трехмерных игр:

http://en.wikipedia.org/wiki/COLLADA

5
ответ дан 30 November 2019 в 17:28
поделиться

Я выбрал формат MS3D, потому что его спецификация проста, имеет смысл, действительно есть анимация, а также оснастка (соединения), и это задокументировано.

Также см. мой предыдущий вопрос, очень похожий на этот, и ответ, который я написал на него (который, как ни странно, кажется, находится внизу страницы ):

[решено] Рекомендуемый тип 3D-модели для внутриигровой модели персонажа, загружаемый вручную?

3
ответ дан 30 November 2019 в 17:28
поделиться

Не эксперт (далеко не так, просто поигрался).

Я полагаю, что формат 3d studio max (.3ds) довольно часто используется, так же как и файл RIB Renderman. Еще мне понравился формат файлов AC3D (это простой текст).

0
ответ дан 30 November 2019 в 17:28
поделиться

Уже много лет формат файла DirectX (расширение .x) очень популярен, и Blender содержит для этого встроенный экспортер.

0
ответ дан 30 November 2019 в 17:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: