Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2004.08.08;
Скачать: [xml.tar.bz2];

Вниз

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

 
Комбинатор ©   (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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.029 c
6-1086407209
Пиво
2004-06-05 07:46
2004.08.08
Помогите с тэлнэт сервером


3-1089874541
Орехов Д.В.
2004-07-15 10:55
2004.08.08
Глюк с параметром запроса в Interbase


1-1090933083
KIR
2004-07-27 16:58
2004.08.08
Народ, как заптхивать/доставать картинки из dll


11-1078343360
Михаил
2004-03-03 22:49
2004.08.08
Запись в exe-файл


9-1082144201
Shopot
2004-04-16 23:36
2004.08.08
Биллиард.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский