Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 3D-программирование

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 19.09.2025, 20:07   #1
DonLeno
AnyKey`щик
 
Регистрация: 30.01.2024
Сообщений: 8
Написано одно полезное сообщение
(для 3 участников)
Как получить цвет пикселя с BackBuffer?

Здравствуйте.
Мне нужно получать цвета пикселей с БэкБуфера в Блитц3д. Но стандартные средства Блитца очень тормознутые. Проверял на функциях GetColor, ReadPixel, ReadPixelFast.
Основная проблема заключается что мне надо снимать почти все пиксели с экрана чтобы с ними работать и это делается в основном цикле, что очень снижает производительность. Из других вариантов нашел FastImage, но пока не пользовался ведь он Триал-версия.

Может кто-нибудь знает какие нибудь либы и примеры с ними для попиксельной работы с буффером?
(Offline)
 
Ответить с цитированием
Старый 22.09.2025, 12:56   #2
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,374
Написано 2,478 полезных сообщений
(для 6,866 пользователей)
Ответ: Как получить цвет пикселя с BackBuffer?

Лучше опиши чего хочешь добиться с помощью этих попиксельных манипуляций. Проблема с этим не потому, что блиц такой, а потому, что задача концептуально иначе решается: для работы с пикселями и придумали шейдеры (в частности пиксельный). Если ты пытаешься сделать свой скейл, как в соседней теме, только через ручную перерисовку пикселей, то это плохая идея. Лучше разберись, как оперировать двумя камерами, делать рендер в текстуру и проводи с операции с текстурой.
__________________
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)
 
Ответить с цитированием
Старый 30.09.2025, 15:24   #3
DonLeno
AnyKey`щик
 
Регистрация: 30.01.2024
Сообщений: 8
Написано одно полезное сообщение
(для 3 участников)
Ответ: Как получить цвет пикселя с BackBuffer?

Нет рендер с большим разрешением по вашему примеру у меня не получилось сделать. Почему то CopyRect не работает или работает но не так как надо.
Хочу реализовать попиксельное освещение. Ставить камеру над сценой и пройтись по экрану собрав все пиксели что видны, а те что не видны затемнить. Тем самым создав для каждого объекта карту светотени. Задумка интересная но когда просто начал снимать все точки с экрана - начались лаги и просадки фпс. Но это лишь был тест. Поэтому ищу альтернативы.
И да, нормально снимать значения получалось лишь раз в 15 кадров. То есть 4 кадра из 60 фпс. Но при таком темпе освещение невозможно реализовать. Может подскажете какие нибудь идеи оптимизации и тп.
Про рендер большего разрешения спрашивал чтобы сделать более качественное освещение.

Я знаю что есть Ashadow и другие реализации, но я изобретатель велосипедов! )))
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com