Форум: "Игры";
Текущий архив: 2005.02.20;
Скачать: [xml.tar.bz2];
ВнизКто и как пакует ресурсы ? Найти похожие ветки
← →
Colt1978 (2004-10-13 19:25) [0]Суть в следующем, пишу проект, и хотелось бы на начальном ещё этапе все ресурсы (музыку, 3D модели, текстуры) както запаковывать и во время работы проекта как то это всё извлекать. Использую при написании GLScene, в ней есть компонент запаковщик-распаковщик pak файлов. Подскажите примером как именно своему проекту говорить что ресурсы бери из этого pak-файла, внутри которого есть папка такаято? а в неё есть файл такойто... ???
Может уже кто сталкивался с этой проблеммой и решил её ? Или есть какой либо другой способ ?
А что хотел ещё спросить и сильно узнать: при создании внутри pak файла папки образуется файл temp.tmp в 12 метров, для чего, зачем, смысл или это так для примера. т.к. я их удалил пак всёравно стал открываться, изменяться без проблемм в чём подвох?
← →
XProger © (2004-10-13 22:29) [1]Пиши свой pak формат и не контролируй всю работу с ним...
И для какой цели запаковываешь ресурсы?
← →
DeadMeat © (2004-10-13 23:25) [2]Файл temp.tmp нужен для того, чтобы в паке был хотябы один файл в начале... Не знаю почему так и почему он 12 метров весит, но это факт, что всегда должен быть хотя бы один. Потом его можно грохнуть.
А проекту ничего говорить не надо. Надо везде, где загрузка указывать относительные пути. Например GLActor1.LoadFromFile ("models\actor\actor.smd"); Сам GLScene перенаправляет все вызовы загрузки прямо в модуль пака... Главное, чтобы в самом паке все пути правильные были.
Пример чуть попозжа накатаю... Щас устал очень
---
...Death Is Only The Begining...
← →
DeadMeat © (2004-10-14 00:58) [3]http://delphimaster.net/view/9-1073144322/&web=1
http://www.deadmeat.fatal.ru/pak.rar
---
...Death Is Only The Begining...
← →
Colt1978 (2004-10-14 09:01) [4]DeadMeat пример при компиляции выдаёт ошибку в файле GLVfsPAK в procedure TGLVfsPAK.LoadFromFile(FileName: string; Mode: word); на стоке FPakFiles.Add(FileName); - как я понимаю ошибка говорит о том что объект ещё какбы не создан в памяти, вот такая вот хрень.
может у тебя немного другой файл GLVfsPAK ?
← →
NailMan © (2004-10-14 09:38) [5]Я лично в свой формат загоняю. Не жмется ничего, просто все линкуется. Так меньше на винте места занимает(с учетом хвостов кластеров).
---
WBR, NailMan aka 2:5020/3337.13
← →
П7 (2004-10-14 12:56) [6]Я почти дописал простенькую сжималку. Самую простенбку. Основанную на повторяющихся байтах. Хотя игровые ресурсы она врядли будет жать. Ибо они в основном и так жутко пожаты - ogg, tga и т.д. Разве что собственные форматы файлов, вроде карт, диалогов и т.д.
← →
Colt1978 (2004-10-14 14:46) [7]Мож кто возьмёт и выложет ?
← →
NailMan © (2004-10-14 17:19) [8]моя версия на моем сайте валяется в сорсах(сайт в инфо смотри)
---
WBR, NailMan aka 2:5020/3337.13
← →
П7 (2004-10-14 18:08) [9]Ну, пакер без сжатия я написал очень давно. Он с исходниками давно валяется в сети. Вот ссылка на страничку: http://tzlab.amillo.net/content.php?dir=delphi&subdir=p7gfxtools (может иногда не грузиться, главное не оставлять попыток).
Там не реализована распаковка в поток. Но это легко сделать самому, если нужно.
← →
Colt1978 (2004-10-14 22:18) [10]DeadMeat, с проблеммой разобрался (я об ошибке)
← →
DeadMeat © (2004-10-14 22:41) [11]Проблема была в том, что у тебя старая сборка GLScene...
Не извращайся и скачай новую... Ща я ее залью к себе.
---
...Death Is Only The Begining...
← →
Darth (2004-10-14 23:12) [12]У меня используется архиватор, который написал мой друг. Он писал ради интереса и от нечего делать мне в помощь. Жмет все не хуже зипа.
← →
П7 (2004-10-14 23:30) [13]А я давно уже всякого накачал по этой теме. Вот только руки мои кривые пока не доберуться туда. Вот со звуком разгребу - займусь архиватором. Чтоб шустро мог в поток разархивировать... (:
Доберусь - поделюсь! (:
← →
Colt1978 (2004-10-15 06:01) [14]DeadMeat, да вроде всё новое, всё что ты мне давал....
← →
DeadMeat © (2004-10-15 12:28) [15]У них много изменений появилось недавно... Вчера блин залить не смог, инет пропал... Попробую сегодня. Но только вечером...
← →
WondeRu © (2004-10-15 12:59) [16]а почему ZLib не пользуете?
← →
cyborg © (2004-10-15 13:23) [17]Я никак не пакую, в инсталляторе всё запаковывается, а во время игры только дополнительные тормоза будут при распаковке данных.
← →
Colt1978 (2004-10-15 14:16) [18]cyborg? нескажи... у меня к примеру 3DS модели в папке maps текстуры в другой папке, звук будет к примеру тоже в другой, и я могу создать несколько запакованных файлов но с разной степенью компрессии например зачем маяться и максимально сживать файлы текстур в jpeg формате, а вот к примеру 3ds модели хорошо и быстро жмутся и разжимаются также... тут поиграть можно с той или иной степенью компрессии....
А инсталлятором ты можешь потом замутить инсталяшку своего проекта с запакованными файликами и прочими ресурсами..
DeadMeat, ок буду ждать....
← →
cyborg © (2004-10-15 14:21) [19]
> [18] Colt1978 (15.10.04 14:16)
Все эти сжатия только увеличивают время на их разжатие, что меня раздражает в современных играх, загрузки сцен иногда до нескольких минут идут. Такие игры в компьютере не задерживаются, только нервы портить. А большой размер установленной игры для меня не важен, диски сейчас огромные и дешёвые. Главное чтобы игра была хорошая и немаловажно, чтобы пре переходе сцен грузилось всё быстро.
← →
Sapersky (2004-10-15 16:13) [20]а почему ZLib не пользуете?
Или вот UCL. Минимальна по размеру кода и оптимизирована на распаковку - вроде действительно побыстрее, чем zlib, хотя сжимает медленнее.
Все эти сжатия только увеличивают время на их разжатие, что меня раздражает в современных играх, загрузки сцен иногда до нескольких минут идут
Это да. Особенно если умники-программисты полностью всё перегружают даже в quickload :(
Можно попробовать распараллелить распаковку и загрузку. Грузим асинхронно (ReadFileEx), и пока оно грузится (теоретически - через DMA, без участия процессора), распаковываем предыдущий загруженный блок.
← →
Colt1978 (2004-10-15 18:41) [21]cyborg Все эти сжатия только увеличивают время на их разжатие, что меня раздражает в современных играх, загрузки сцен иногда до нескольких минут идут. Такие игры в компьютере не задерживаются, только нервы портить. А большой размер установленной игры для меня не важен, диски сейчас огромные и дешёвые. Главное чтобы игра была хорошая и немаловажно, чтобы пре переходе сцен грузилось всё быстро.
Интересно а кто будет выкачивать с инета такой проект ???
Я тут на днях видел почти аналогию того что пишу я, но там прилагался обязательный патч в 12 метров, и сама гамесав архиве на 93 мега !!!
Ни у каждого выделенка и денег вагон на такую скачку.... Темболее что за гамеса я по скриншотам понял только 50 на 50...
← →
Sapersky (2004-10-15 18:55) [22]Интересно а кто будет выкачивать с инета такой проект ???
Проекты все нормальные люди выкладывают в архиве. И вряд ли "на коленке" получится сжать лучше, чем непрерывный rar-архив или даже zip. Более того, ранее сжатые файлы часто архивируются хуже (т.е. финальный размер сжатого два раза файла больше).
← →
cyborg © (2004-10-15 21:23) [23]
> [21] Colt1978 (15.10.04 18:41)
Нормальные инсталяторы пакуют данные.
← →
DeadMeat © (2004-10-15 22:08) [24]
> [16] WondeRu © (15.10.04 12:59)
В GLScene он и используется...
> [20] Sapersky (15.10.04 16:13)
Во во... Я тоже хотел UCL предложить вчера, да блин связь пропала. Я по нему переделывал както этот PAK в GLScene. Неплохо вышло...
---
...Death Is Only The Begining...
← →
DeadMeat © (2004-10-15 22:38) [25]http://www.deadmeat.programist.ru/Source.rar
http://www.deadmeat.programist.ru/Demos.rar
---
...Death Is Only The Begining...
← →
DeadMeat © (2004-10-15 22:46) [26]Пардон за [24] насчет ZLib... Обшибся. Он был там раньше... Сейчас LZRW...
http://www.deadmeat.programist.ru/tlzrw.zip
На всякий случай...
---
...Death Is Only The Begining...
← →
FRick © (2004-11-03 22:18) [27]TResManager
← →
Colt1978 (2004-11-07 11:03) [28]Что это ?
← →
FRick © (2004-11-07 11:37) [29]> Что это ?
Если хочеш я выложу это на сайте www.limgroup.narod.ru
это менеджер ресурсов для делфи очень удобный в применение
когда все ресурсы готовы ты их пакуеш в файл любого разрещения
ставиш пароль и из программы получаеш содержимое!
В комплект идет паковшик ресурсов и компонент для Delphi
автор этого компонента Константин Артемев!
← →
Домовенок (2004-11-07 11:44) [30]> DeadMeat (15.10.04 22:38) [25]
Скажи пожалуйста, приведенные тобой ссылки в посте [5] на исходники и демки GLScene от какого числа? Спасибо.
← →
FRick © (2004-11-07 12:28) [31]Всё я выложил на
http://www.limgroup.narod.ru
← →
DeadMeat © (2004-11-07 13:22) [32]Точно не помню, поэтому сегодня залил еще раз... Пока только Source, потом и Demos залью... На всякий случай, это не те снэпшоты, которые выкладываются ими... Это с CVS обновления...
---
...Death Is Only The Begining...
← →
Zer0 © (2004-11-09 13:24) [33]раньше юзал zlib (помойму эта тема уже светилась в форуме)
теперь ppms - гораздо быстрее рара почти с той же степеню сжатия.
---
как вырубить эту подпись???
← →
NikeOLD © (2004-11-09 14:08) [34]
> Colt1978 (15.10.04 18:41) [21]
> Интересно а кто будет выкачивать с инета такой проект ???
> Я тут на днях видел почти аналогию того что пишу я, но там
> прилагался обязательный патч в 12 метров, и сама гамесав
> архиве на 93 мега !!!
> Ни у каждого выделенка и денег вагон на такую скачку....
> Темболее что за гамеса я по скриншотам понял только 50 на
> 50...
Господа, если разговор идет о распаковщиках, значит игра будет не под себя и не для России. А на Западе и в Европе анлим на ADSL всего за 24-30 долларов (евро) в месяц + телефон + кабельное ТВ. Это копейки и по их и по нашим меркам.
Так что я в некотором роде cyborg"a поддерживаю. А длительная загрузка особенно в простых играх и впрямь достает хуже тещи.
← →
П7 (2004-11-09 16:44) [35]Всё-таки пришёл к выводу, что нафиг ничего паковать не нужно вообще.
Пусть всё лежит в открытом виде и чем проще\быстрее будет идти загрузка тем лучше. Так или иначе качать будут инсталатор, который всё пожмёт гараздо лучше...
Поэтому нафиг файлы ресурсов, да здраствует свобода файлов! (:
← →
Zer0 © (2004-11-09 21:08) [36]Тут есть некоторые нюансы.
Например если простая игруха имеет 100000 файлов (спрайтики одтельно или каждый кадр анимации отдельно) то ставится и удалаться такая громадина будет крайне долго. Свой эмулятор FAT, который еще к тому-же оптимизирован для поиска (например хешированием) даст нехилый такой прирост. (аналог tar ball)
---
как вырубить эту подпись??? юзаю DMClient
← →
NikeOLD © (2004-11-10 09:25) [37]to [35], [36]
Паковать может и не обязательно, но свой формат сделать не плохо было бы по следующим причинам:
1. Описано в посте [36]
2. Описано еще где-то: сильная кластеризация из-за маленьких файлов
3. Открытую графику украсть или заменить на свою проще. А оно надо?
Поэтому если с паковку и не делать, то свой формат должен быть. Оно и приятнее, и защиту повесить можно, и все ресурсы в пару файлов запихнуть тоже.
← →
П7 (2004-11-10 12:59) [38]
> Zer0 © (09.11.04 21:08) [36]
Ну, это вопрос не паковки ресурсов, а грамотной организации оных. Анимированный спрайт логичнее собрать в один файл, иначе грузиться он будет дольше, чем запакованый объединённый...
← →
Colt1978 (2004-11-11 13:49) [39]Я за запаковку ресурсов и их сокрытие.
Мои творенья в 3D Maxe я не хочу чтоб кто-то себе присвоил. Хотя честно по правде несколько сторонних разработак я использовал сам в своём проекте, но совесть не гложет, они фриварные были....
← →
П7 (2004-11-11 14:39) [40]Никто на твоих ТВОРЕНИЯХ денег себе не срубит, ибо это будет плагиат! Пойми, те кто будет продавать игру за деньги - наймут себе моделеров, чтобы затем никаких проблем с копирайтами не было. А те кто просто плодит бесплатные игрушки - да и фиг с ними... Жалко чтоли...
Страницы: 1 2 вся ветка
Форум: "Игры";
Текущий архив: 2005.02.20;
Скачать: [xml.tar.bz2];
Память: 0.55 MB
Время: 0.039 c