Тема: Vivo
Показать сообщение отдельно
Старый 30.04.2012, 12:19   #306
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,372
Написано 2,478 полезных сообщений
(для 6,866 пользователей)
Ответ: Vivo

Сообщение от Nikich Посмотреть сообщение
Thanks!
а можно подробнее о пиксмапах?
Есть оперативная память видео карты и есть оперативная память пк.
Вся твоя программа использует для работы оперативную память ПК, а визуализация графики происходит с использованием видео памяти.
Для того чтоб допустим вывести изображение на экран нужно его сначала считать с жёсткого диска потом преобразовать в нужный для видео карты формат, "закачать изображение" на видео карту и дать напутствие видео карте чтоб она вывела на экран наше изображение.

Дак вот в BlitzMax есть класс Image.
Он содержит в себе Pixmap и ссылку на хранимое в видеокарте изображение.

Pixmap это преобразованный специальным образом для видео карты универсальный набор пикселей. Который позволяет "на лету" менять разрешение экрана и даже сменять в реальном времени GAPI с DirectX на OpenGL например. Он хранится у тебя локально в оперативе компа. И когда стартует 3d девайз или перезапускается (смена разрешения) пиксмапа закачивается в видео память в виде 2D текстуры.

Работа с пиксмапой ничего не требует. Вся работа с ней скрыта за тенью LoadImage LoadAnimImage. И ты просто можешь менять разрешение "на лету" не перезагружая заново все ресурсы как бы это надо было бы делать в Blitz3D.

писал с бодуна, могу хреново выражаться
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 4090 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо Randomize за это полезное сообщение:
Hulk-DS (02.05.2012), Nikich (30.04.2012), Reks888 (01.05.2012)