Форум: "Игры";
Текущий архив: 2007.12.30;
Скачать: [xml.tar.bz2];
Вниз
Паки в играх Найти похожие ветки
← →
Vga © (2006-11-19 00:56) [0]Ваше мнение о сабже: какие вы можете назвать причины в пользу их использования/неиспользования с точки зрения девелопера и с точки зрения геймера.
← →
grisme © (2006-11-19 06:18) [1]удобно хранить все в одном файле, а не грудой. да и пожатость присутствует, обычно, хоть и не большая :) а как геймер их может использовать?
← →
antonn © (2006-11-19 08:49) [2]обычно запакованные ресурсы недоступны для редактирования и стыривания:) конечно, все можно открыть, но так сложнее:)
← →
Cash © (2006-11-19 13:38) [3]Паки интересно вскрывать! :)
Особенно интересно - когда используется алгоритм сжатия данных!
Запаковка ресурсов игры необходима для обеспечения целостности и
конфиденциальности игрового процесса, чтобы никто не мог нарушить
сюжетную линию, чтобы с картами и локациями помутить не получилось.
Очень удобная вещь, можно разработать такой пак, который принципиально
нельзя вскрыть, конечно, без прямого дизасемблирования самой игры. :)
← →
XProger © (2006-11-19 14:44) [4]В большинстве случаев не нужны, но имеют ряд плюсов:
1) Удобное хранение при недостатке ёмкостных ресурсов носителей (игры на консолях)
2) Занимают меньше места, не только благодаря сжатию (если таковое имеется), но и из-за особенностей самого устройства файловой системы носителя.
3) Однозначная работа при создании межплатформенных приожений.
4) Легко реализуем быстрый поиск файла в паке и др. фишки.
Сложность вскрытия... обычно сами разработчики распространяют SDK к игре для мод мейкеров. Так что сложности вскрытия зачастую нет :)
← →
Vga © (2006-11-20 22:26) [5]Еще мнения будут?
← →
Pa5ha © (2006-11-20 22:53) [6]5) быстрее доступ к одному файлу, нежели поиску всех файлов игры. У мя в кс-е 9000 файлов. Разве это нормально?
← →
megabyte-ceercop © (2006-11-24 13:18) [7]Пак нужно добовлять в двиг в последнюю очередь, когда есть полностью готовая игра, и пришло время ее широко распространять.
На этапе разработки пак только мешает.
← →
Думкин © (2006-11-24 14:12) [8]> megabyte-ceercop © (24.11.06 13:18) [7]
Так и делали. Во время разработки все данные в обычном виде. Читаются через один класс. Потом пакуем, меняем поле в классе и читаем из пака.
Удобство в объеме и зачастую в более быстрым доступе к ресурсу. У нас из пака файлы доставались быстрее, чем с диска.
← →
Vga © (2006-11-24 14:29) [9]> [7] megabyte-ceercop © (24.11.06 13:18)
Лично у меня система доступа к файлам однаково работает и с паками, и с обычной ФС (примерно как в Quake3).
Спасибо за ответы.
← →
ANTPro © (2006-11-24 16:07) [10]> [7] megabyte-ceercop © (24.11.06 13:18)
+1
← →
Vga © (2006-11-24 16:13) [11]> [7] megabyte-ceercop © (24.11.06 13:18)
Ксттати, поддержку паков ИМХО в двиг сразу надо добавлять. Мешается он не при разработке двига, а при разработке игры (ресурсы править неудобно).
← →
Думкин © (2006-11-27 06:08) [12]
> Vga © (24.11.06 16:13) [11]
А чего там добавлять то? Достаточно написать потомка от TFileStream и с ним и работать, а он работает уже с тем, что ему сунули - директорию или пак.
← →
Vga © (2006-11-27 06:52) [13]> [12] Думкин © (27.11.06 06:08)
Лично у меня другой взгляд на этот вопрос, который и воплотился в моей системе работы с паками.
← →
Vga © (2006-11-27 06:55) [14]Результат можно посмотреть (и попинать) здесь: http://vgasoft.googlecode.com/svn/Assault/PakMan.pas
← →
cyborg © (2006-11-27 09:20) [15]> [14] Vga © (27.11.06 06:55)
Что это за модули?
AvL, avlMath, avlUtils, UCLAPI, avlLZMADec, avlAdler32, avlMasks
← →
ANTPro © (2006-11-27 10:38) [16]> [15] cyborg © (27.11.06 09:20)
http://vgasoft.googlecode.com/svn/AvL - библиотека
http://vgasoft.googlecode.com/svn/AvL/avlLZMA - LZMA анпак
http://vgasoft.googlecode.com/svn/AvL/avlUCL - UCL сжатие и расжатие :)
← →
Vga © (2006-11-27 13:45) [17]> Что это за модули?
Да вот выбрал библиотеку на свою голову...
> AvL
Кодоэкономичная библиотека, довольно глючная :(
> avlMath
Адаптация Math под AvL
> avlUtils
Куча различных функций, написанных мной или выдранных из Delphi RTL
> UCLAPI
Чищеный от всего лишнего модуль импорта сишной библиотеки UCL (сжатие)
> avlLZMADec
Вырезанный из Inno Setup и портированный под AvL декомпрессор LZMA
> avlAdler32
Импорт контрольной суммы Adler32 из библиотеки zlib
> avlMasks
Порт Masks (Delphi RTL) под AvL
С небольшой потерей функциональности можно легко портировать на Delphi RTL (SysUtils, Classes, etc)
← →
Думкин © (2006-11-28 05:40) [18]
> Vga © (27.11.06 06:55) [14]
Мне вот смотреть лень. :)
У нас тоже целая библиотека была. Но в итоге в программе использовался наследник TFileStream, модуль инициализировался и подготавливался в начале работы программы, а потом в нужных местах я создавал этого потомка и работал как с обычным TFileStream. А в чем может быть существеннно иной подход еще?
← →
Vga © (2006-11-28 14:13) [19]> [18] Думкин © (28.11.06 05:40)
Тут в принципе довольно похоже, только есть объект, предоставляющий ФС-подобный сервис (открытие/закрытие/создание/поиск файлов в виртуальной ФС, составляемой из найденных паков и содержимого базовой директории аля пакер Q3), а доступ к файлам предоставляется через потомков TStream, создаваемых этим объектом. Вот собственно и все.
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2007.12.30;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.008 c