Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.08;
Скачать: CL | DM;

Вниз

быстрая загрузка текстур   Найти похожие ветки 

 
Комбинатор ©   (2004-04-24 12:38) [0]

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


 
Yar-Com   (2004-04-24 12:47) [1]

а ты что картинки по ходу игры грузишь?

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


 
Комбинатор ©   (2004-04-24 13:03) [2]

пример....после запуска игры у меня грузятся ресурсы меню(фон и т. д.) - из бмп файла читаю инфу и попиксельно создаю структуру необх для объекта текстур....но на это уходит время....например на картинку 512*512....


 
Yar-Com   (2004-04-24 13:08) [3]

не пойму ты что по байту из файла читаешь? я загружаю весь бмп в память там его обрабатываю потом гружу его в видеопамять и удаляю из оперативки.

других вариантов и быть не может.....


 
Комбинатор ©   (2004-04-24 13:15) [4]

вся проблема не в загрузки в память, а в создании объекта текстуры...для неё приходится переберать пикселы в памяти...
а как по другому?


 
Yar-Com   (2004-04-24 13:18) [5]

bgr с rgb менять чтоли?

procedure SwapRGB(data : Pointer; Size : Integer);
asm
 mov ebx, eax
 mov ecx, size

@@loop :
 mov al,[ebx+0]
 mov ah,[ebx+2]
 mov [ebx+2],al
 mov [ebx+0],ah
 add ebx,3
 dec ecx
 jnz @@loop
end;


 
Комбинатор ©   (2004-04-24 13:55) [6]

Ты не понял я ламерок во всём этом...Просто и кратко :
как имея бмп файл создать объект текстуры (наверняка - это стандартная процедурка, которая небольшая и её не трудно скинуть либо сюда либо на buzapta@mail.ru) :)


 
Yar-Com   (2004-04-24 14:06) [7]

ты на Direct X делаешь? или на OpenGL?

если на Direct X то я тебе ничем помочь не могу, потому что никак не пойму что такое >объект< текстуры?

Воткни кусок кода сюда, а то я так и не понял ничего...


 
Комбинатор ©   (2004-04-24 14:12) [8]

Я на директе...соответственно у меня есть заголовочные файлы к интерфейсам...через них(интерфейсы) я создаю объект - текстуры.
Я щас не за рабочей машиной (не могу воткнуть кусок).
Вот этот объект и требует структуру данных о картинке, для создания которой и приходиться переберать пиксели.
Это всё я нашёл в книге Краснова.


 
Dmitryy   (2004-04-24 17:43) [9]

Наверное, это делается примерно так же, как работают все видеокодеки - а как, не знаю


 
NailMan ©   (2004-04-24 23:53) [10]

Есть набор таких замечательных функций в D3DX:
D3DXCreateTexture
D3DXCreateTextureFromFile
D3DXCreateTextureFromFileEx
D3DXCreateTextureFromFileInMemory
D3DXCreateTextureFromFileInMemoryEx
D3DXCreateTextureFromResource
D3DXCreateTextureFromResourceEx

И не надо засирать мозг всякими битами, байтами и прочей мутотенью. Короче велосипед до тебя уже изобрели - сами мелкомягкие постарались. Скорость загрузки максимальная + куча всяких фенечек.



Страницы: 1 вся ветка

Текущий архив: 2004.08.08;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.037 c
3-1089723898
Studentik
2004-07-13 17:04
2004.08.08
Как защитить данные в dBase от чужих глазок....


4-1088521763
rOOse
2004-06-29 19:09
2004.08.08
Реестр


4-1088511070
NLO
2004-06-29 16:11
2004.08.08
ПЕреХВат


1-1090646868
CRACKISH
2004-07-24 09:27
2004.08.08
Рисование по экрану...


1-1090827243
Delph1
2004-07-26 11:34
2004.08.08
Русский язык в клипборде