|
2D-программирование Вопросы, касающиеся двумерного программирования |
21.02.2015, 10:11
|
#1
|
AnyKey`щик
Регистрация: 28.03.2014
Сообщений: 8
Написано 3 полезных сообщений (для 3 пользователей)
|
Разложение изображения?
Кратко говоря, мне нужно получить "тот самый" эффект разложения изображения или расхождения цветовых каналов (Хочу того, сам не знаю чего). Меня хватило только на этот код:
Function decayimage(image,offset=0)
;decayed image
Cls DrawImage(image,0,0) Color 0,127,255 Plot 1,2 Color 255,127,0 Plot 2,2 Flip ; "Пробы" цветов LockBuffer BackBuffer() argbmidred=ReadPixelFast(2,2) argbmidblue=ReadPixelFast(1,2) argbblack=ReadPixelFast(0,0) For y=1 To ImageWidth(image) For x=1 To ImageHeight(image) argb=ReadPixelFast(x,y) If Not argb=argbblack Or argb=argbmidred Or argb=argbmidblue WritePixelFast x-offset,y,argbmidred WritePixelFast x+offset,y,argbmidblue WritePixelFast x,y,ReadPixelFast(x,y) End If Next Next UnlockBuffer BackBuffer() End Function
Этот код совсем не пригоден для использования в риалтайме, и работает неправильно с изображениями где мало черного цвета. Есть у кого нормальные альтернативы?
Последний раз редактировалось Sashkakuhta, 21.02.2015 в 10:28.
Причина: Чуть подправил, работало совсем неправильно
|
(Offline)
|
|
21.02.2015, 16:44
|
#2
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,024
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Разложение изображения?
Ты работаешь с 2D, работай с текстурой, 2D в Блице тормоз.
Сообщение от Sashkakuhta
Есть у кого нормальные альтернативы?
|
Дохлый Xors3D.
|
(Offline)
|
|
21.02.2015, 17:40
|
#3
|
Принтер
Регистрация: 21.04.2013
Адрес: Больше не РФ
Сообщений: 570
Написано 342 полезных сообщений (для 1,242 пользователей)
|
Ответ: Разложение изображения?
Предлагаю заранее разложить текстуру в *редакторнейм*. Блитцы, как подметил Arton, с этим хорошо не справятся.
|
(Offline)
|
|
22.02.2015, 07:03
|
#4
|
AnyKey`щик
Регистрация: 28.03.2014
Сообщений: 8
Написано 3 полезных сообщений (для 3 пользователей)
|
Ответ: Разложение изображения?
Копну в сторону текстур, но вариант с заранее разложенной текстурой мне не подходит - коду нужно обрабатывать кучу изображений, которые каждый раз будут разные.
|
(Offline)
|
|
22.02.2015, 07:07
|
#5
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Разложение изображения?
Шейдеры.
|
(Offline)
|
|
24.02.2015, 16:55
|
#6
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Ответ: Разложение изображения?
For y=1 To ImageWidth(image)
For x=1 To ImageHeight(image)
--->
For y=0 To ImageWidth(image)-1
For x=0 To ImageHeight(image)-1
и в аналогичных местах
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо impersonalis за это полезное сообщение:
|
|
26.02.2015, 16:25
|
#7
|
AnyKey`щик
Регистрация: 28.03.2014
Сообщений: 8
Написано 3 полезных сообщений (для 3 пользователей)
|
Ответ: Разложение изображения?
Да, уже сам заметил ошибку, но зачем -1?
|
(Offline)
|
|
26.02.2015, 16:31
|
#8
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: Разложение изображения?
Потому что адресация с нуля
__________________
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 21:48.
|