Войти
ФлеймФорумРазработка игр

Какая структура каталога с игрой? Файлы с какими расширениями там лежат? (вопрос новичка)

#0
14:56, 30 мар. 2020

Здравствуйте.

Какая структура каталога с игрой? Файлы с какими расширениями там лежат?

Сегодня решил сравнить две случайно выбранные папки - Europa Universalis 4 и CaesarIA.
В них есть подпапки
- папка gfx с текстурками разных типов
- папка audio или папка music с файлами ogg
- папка audio или папка sound с файлами wav
- папка gui или папка interface c файлами gui
- папка common c файлами lua


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

Есть ли статья / иконографика, рассказывающая как по структуре каталогов и папок понять, какие библиотеки и технологии используются в игре? Хотел бы её прочитать ))

Спасибо.


#1
15:10, 30 мар. 2020

никуда он не завязан, раскладывают как принято в продакшене

#2
15:59, 30 мар. 2020

Во всех играх по разному. Кто как хочет кидает. Некоторые вообще все ресурсы внутрь EXE-файла упаковывают. Некоторые в отдельных файлах хранят. Некоторые создают архивы своего формата. Некоторые ZIP используют. А названия каталогов вообще у всех игр разное.

#3
18:41, 30 мар. 2020

neosapient
> Есть ли статья / иконографика, рассказывающая как по структуре каталогов и
> папок понять, какие библиотеки и технологии используются в игре?
Конечно есть, но она секретна. Но ее можно примерно создать самом изучив в гугле историю применения высшей меры к тем, кто решился создавать не конвенционные папки. Можно просмотреть только за последний год.

#4
19:20, 30 мар. 2020

neosapient
> Какая структура каталога с игрой? Файлы с какими расширениями там лежат?
главный файл - .exe, остальное опционально.

#5
(Правка: 23:45) 23:44, 30 мар. 2020

Если используется движок - то согласно правилам этого движка.
Если всё своё - то и правила свои.
Среди общих правил можно выделить разве что то, что текстуры будут скорее всего лежать в папке "текстуры", звуки - в папке "звуки", игровые локации - в папке "карты", игровая логика - в папке "скрипты" и так далее.
Хотя "папки" могут быть не только обычными папками, но и подпапками в архиве.

#6
(Правка: 9:03) 9:02, 31 мар. 2020

gmake
>главный файл - .exe
Не обязательно, может быть .app, например.

#7
12:05, 31 мар. 2020

neosapient
> Прихожу с мысли, что сообщество программистов выработало подход к структуре файлов и папок.
Бросали все в одну кучу, но сейчас это не эстетично:) Раньше было всего мало, сегодня всего много.
Из-за этого многого начинаются неудобства, поэтому папки желательны.

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

#8
(Правка: 0:27) 0:26, 3 апр. 2020

neosapient
этот форум уже давно превратился в соревновании в остроумии
не ищите здесь ответ на свой вполне адекватный вопрос

#9
(Правка: 9:20) 9:06, 3 апр. 2020

neosapient
> Какая структура каталога с игрой?
Ну, с одной стороны, это как при любой творческой работе. Куда класть инструмент? Как удобнее хранить винтики-гаечки? Как наводить порядок на рабочем столе?
С другой стороны, это часть той игры, в которую играет программист. Т.е. потребитель X-Com гоняет инопланетян, а программист - еще и роется в файлах (X-Files), этих инопланетян описывающих.

#10
9:08, 3 апр. 2020
towerdefender
> не ищите здесь ответ на свой вполне адекватный вопрос
лолище
Это одна из тех тем, где люди вполне нормально реагируют и надавали адекватные, полезные ответы
#11
9:24, 3 апр. 2020

neosapient
обычно чем на более широком круге платформ требуется поддерживать проект, тем продуманнее должна быть организация файловой системы. например, если просто демка для windows, то как хочешь пихай файлы и как хочешь их читай. однако, если что-то хочешь сохранять, то есть все шансы, что в папку с самим проэктом писать у тебя прав не будет, поэтому всякие сохранения обычно пишут в домашнюю директорию. далее если хочется, чтобы проект запускался на разных платформах (например, ещё на макоси), то важно разделить платформо-независимые данные (звуки, текстуры) от платформо-зависимых исполняемых файлов (.exe, .dll, .a итп). поэтому проще всего взять проект, самый близкий с точки зрения модели распространения, и смотреть, как сделано там.

#12
20:34, 6 апр. 2020

Спасибо всем за ответы.

ФлеймФорумРазработка игр