forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   C++ (http://forum.boolean.name/forumdisplay.php?f=22)
-   -   Загрузить тексу из пака/создать виртуальный хард из файла? (http://forum.boolean.name/showthread.php?t=13028)

Mr_F_ 29.07.2010 00:05

Загрузить тексу из пака/создать виртуальный хард из файла?
 
Имеется несжатый пак ака файл, содержащий внутри себя другие файлы, в данном случае - ддски. Надо загружать их оттуда в д3д имея оффсет/размер нужной ддски внутри пака.
Д3дX умеет загружать тексы из
- файла одного
- памяти с поинтером/размером
- ресурса аттаченного к ехе
Пихать в память весь пак - не вариант, т.к. размер пака может быть каким угодно большим.
Маунтить пак как виртуальный хард и обращаться как к обычным файлам? о_0
Писать свой загрузчик ддс? ((((

HolyDel 29.07.2010 01:19

Ответ: Загрузить тексу из пака/создать виртуальный хард из файла?
 
- памяти с поинтером/размером

пихать в память прийдется всю грузимую ддс-ку.
как то так:
Код:

f = fopen("mypak.pak","rb");
fseed(f,need_offset,SEEK_SET);
unsigned char *buff = new unsigned char[need_size];
fread(f,buff,need_size);
D3DX_CreateTexture(хз_какие_параметры_в_том_числе_buff_и_need_size);
delete[] buff;

... еще грузим стописот ддсок разбросанных по паку...
fclose(f);


SBJoker 29.07.2010 10:24

Ответ: Загрузить тексу из пака/создать виртуальный хард из файла?
 
Поддерживаю пред. оратора, об этом я и говорил по аське.

jimon 29.07.2010 12:59

Ответ: Загрузить тексу из пака/создать виртуальный хард из файла?
 
если сам d3d умеет грузить текстуру с харда напрямую в видеопамять через dma, то я думаю это возможно повторить :)


Часовой пояс GMT +4, время: 12:02.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot