HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Поддержка unzip (zlib)
Помогите с реализацией
Страницы (2): [1] 2 »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
avegamer
Житель форума

Дата регистрации: Aug 2010
Проживает: ___
Сообщений: 119
Возраст: 38

Рейтинг



Question Поддержка unzip (zlib)

Помогите добавить поддержку unzip (zlib) в half-life. Прочитал статью http://www.gamedev.ru/articles/?id=70122, но не могу понять где взять unzip.lib

Сообщить модератору | | IP: Записан
Сообщение: 92436

Старое сообщение 13-02-2012 15:21
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32598
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
avegamer писал:
Помогите добавить поддержку unzip (zlib) в half-life

в Half-Life уже есть поддержка zip. Реализована при помощи bzip.
Используется для сжатия файлов, которые клиент скачивает с сервера (недостающие файлы).

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 92438

Старое сообщение 13-02-2012 15:35
-
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 34645
Нанёс повреждений: 514 ед.
Возраст: 38

Рейтинг



Награды
 
[1 награда]


avegamer
Раздел для темы наугад выбрал, или ты таки бот?

__________________

Сообщить модератору | | IP: Записан
Сообщение: 92439

Старое сообщение 13-02-2012 16:00
-
avegamer
Житель форума

Дата регистрации: Aug 2010
Проживает: ___
Сообщений: 119
Возраст: 38

Рейтинг



Случайно тему не в том разделе создал.
Мне нужно, чтобы все ресурсы, например спрайты или wav-файлы хранились в архивах .zip или .gz и чтобы можно было их использовать в функциях, напимер, PrecacheModel, PrecacheOther и тому подобные.

Сообщить модератору | | IP: Записан
Сообщение: 92442

Старое сообщение 13-02-2012 16:12
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32598
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
avegamer писал:
Мне нужно, чтобы все ресурсы, например спрайты или wav-файлы хранились в архивах .zip или .gz и чтобы можно было их использовать в функциях, напимер, PrecacheModel, PrecacheOther и тому подобные.

зачем?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 92447

Старое сообщение 13-02-2012 17:35
-
PunkPaToB
Теперь я с провами!!!

Дата регистрации: Dec 2010
Проживает: (void)
Сообщений: 792
Возраст: 30

Рейтинг



Дядя Миша
Чтоб вес был не 5 мегобОйт, а 4.8

__________________
А что нет?

Сообщить модератору | | IP: Записан
Сообщение: 92528

Старое сообщение 15-02-2012 01:17
- За что?
Government-Man
Призрак

Дата регистрации: Apr 2006
Проживает: N/A
Сообщений: 3507

Рейтинг



Награды
 
[1 награда]


PunkPaToB ага... и время загрузки увеличивалось в несколько раз.

Сообщить модератору | | IP: Записан
Сообщение: 92531

Старое сообщение 15-02-2012 03:22
- За что?
HAWK0044
Житель форума

Дата регистрации: Oct 2010
Проживает: Анапа
Сообщений: 563
Возраст: 27

Рейтинг



Government-Man
c таким подходом оно только уменьшиться =)

Сообщить модератору | | IP: Записан
Сообщение: 92537

Старое сообщение 15-02-2012 06:39
- За что?
marikcool
Житель форума

Дата регистрации: Jul 2011
Проживает: kz
Сообщений: 1522
Возраст: 38

Рейтинг



avegamer юзай *.pak и будет счастье, или *.gcf но тут на лицензии не сделаешь вроже.

Сообщить модератору | | IP: Записан
Сообщение: 92541

Старое сообщение 15-02-2012 09:15
- За что?
fire64
Житель форума

Дата регистрации: Apr 2007
Проживает: Москва
Сообщений: 2362
Возраст: 34

Рейтинг



Ну не знаю, чего там сложного.
Ладно, держите код, который я использовал при разработке VampireSDK

C++ Source Code:
1
int UnCommpressBuff( unsigned char *destbuff, unsigned long *destbufflen, unsigned char *sourcebuff, unsigned int sourcebufflen )
2
{
3
  int res = uncompress( destbuff, destbufflen, sourcebuff, sourcebufflen );
4
 
5
  return res;
6
}


C++ Source Code:
1
char pTtzFileName[256];
2
memset(pTtzFileName, 0, sizeof(pTtzFileName) );
3
sprintf(pTtzFileName, "%s.ttz", pBaseFileName );
4
 
5
FileHandle_t fileTtzHandle = g_pFileSystem->Open( pTtzFileName, "rb" );
6
 
7
if( !fileTtzHandle )
8
{
9
  Warning( "\"%s\": cached version doesn't exist\n", pTtzFileName );
10
 
11
  delete tthbuf;
12
  delete vtfhdr;
13
 
14
  return NULL;
15
}
16
 
17
pTtzFileSize = g_pFileSystem->Size(fileTtzHandle);
18
 
19
ttzbuf = (char *)malloc(pTtzFileSize);
20
memset(ttzbuf, 0, pTtzFileSize);
21
 
22
g_pFileSystem->Read( ttzbuf, pTtzFileSize, fileTtzHandle );
23
g_pFileSystem->Close( fileTtzHandle );
24
 
25
uncompbuf = (char *)malloc(pTth->infLength() - pVtfHdrSize);
26
memset(uncompbuf, 0, pTth->infLength() - pVtfHdrSize);
27
 
28
unsigned long ressize = pTth->infLength() - pVtfHdrSize;
29
 
30
int res = UnCommpressBuff( (unsigned char *)uncompbuf, &ressize, (unsigned char *)ttzbuf, pTtzFileSize );
31
 
32
if(res)
33
{
34
  //		Warning( "Error extracted: %d, in file: %s\n", res, pTtzFileName);
35
 
36
  delete tthbuf;
37
  delete vtfhdr;
38
  delete ttzbuf;
39
  delete uncompbuf;
40
 
41
  return NULL;
42
}
43
else
44
{
45
  //		Warning( "Good extracted: %d, in file: %s\n", res, pTtzFileName);
46
}
47
 
48
pEndVtfSize = pTth->infLength();

__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей

Сообщить модератору | | IP: Записан
Сообщение: 92542

Старое сообщение 15-02-2012 09:16
- За что?
avegamer
Житель форума

Дата регистрации: Aug 2010
Проживает: ___
Сообщений: 119
Возраст: 38

Рейтинг



А я вот подумал, может быть создать свою версию WAD (есть наработка на tmt pascal) и хранить в нем файлы сжатые например zlib

Сообщить модератору | | IP: Записан
Сообщение: 92549

Старое сообщение 15-02-2012 13:56
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32598
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
avegamer писал:
А я вот подумал, может быть создать свою версию WAD

зачем же создавать? Оригинальный формат вада отлично подойдет.
Там в структурке есть и переменная для типа компрессии и переменная под сжатый размер. Больше скажу - я уже делал вады, в которых лумпы были сжаты зипом. И прекрасно получалось.
Правда редакторы эти текстуры зачитать не могли, конечно же.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 92550

Старое сообщение 15-02-2012 14:25
-
avegamer
Житель форума

Дата регистрации: Aug 2010
Проживает: ___
Сообщений: 119
Возраст: 38

Рейтинг



WAD для хранения не только текстур, но и любых других файлов как в doom или zdaemon

Сообщить модератору | | IP: Записан
Сообщение: 92552

Старое сообщение 15-02-2012 14:58
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32598
Нанёс повреждений: 392 ед.

Рейтинг



WAD для хранения только текстур. Любые другие файлы удобнее хранить в паке. У вада даже расширения файлов не предусмотрены.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 92554

Старое сообщение 15-02-2012 15:01
-
avegamer
Житель форума

Дата регистрации: Aug 2010
Проживает: ___
Сообщений: 119
Возраст: 38

Рейтинг



Я не имел в виду wad из doom, а свою версию, где могут храниться файлы с любыми расширениями, и можно его назвать, например, .gwad, .apk, .gpk и т.п.

Сообщить модератору | | IP: Записан
Сообщение: 92555

Старое сообщение 15-02-2012 15:27
- За что?
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 05:59. Новая тема    Ответить
Страницы (2): [1] 2 »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Поддержка unzip (zlib)
Помогите с реализацией
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

На основе vBulletin
Авторское право © 2000 - 2002, Jelsoft Enterprises Limited.
Дизайн и программирование: Crystice Softworks © 2005 - 2024