|
16.01.2009, 01:49
|
#1
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений (для 6,852 пользователей)
|
Глупый вопрос
Вопрос такой как в один image надравить другой?
аналог B3D:
SetBuffer(ImageBuffer(SomeImage))
DrawImage Blood,someX,someY
SetBuffer(BackBuffer())
Просто в Максе я совсем недавно, ООП мне дплось на раз а вот базового ничего незнаю, вы уж простите меня.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 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)
|
|
01.03.2009, 13:20
|
#2
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений (для 6,852 пользователей)
|
Ответ: Глупый вопрос
Неужели никто не знает???
Подскажите плиз, а то метод с ReadPixel/WritePixel не улыбает.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 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)
|
|
05.03.2009, 17:51
|
#3
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений (для 6,852 пользователей)
|
Ответ: Глупый вопрос
Неужели все в 3D прогают???
Потенциал BlitzMax в 2D огромен...
Дак по сабжу может кто подсказать?
Ато он уже с бородой а отвечаю себе только я...
Плохо это както
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 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)
|
|
05.03.2009, 20:33
|
#4
|
scientist.alien
Регистрация: 12.02.2007
Сообщений: 2,098
Написано 1,030 полезных сообщений (для 2,593 пользователей)
|
Ответ: Глупый вопрос
В голову приходит только написать бмаксовыми командами тот код, что ты написал для б3д... По идее там тоже есть работа с буферами... Попробуй, если не поможет - то даже не знаю.
__________________
Public service announcement: вы можете заблокировать отображение сообщений определённого пользователя, добавив его ник в список игнорируемых.
Tau lab. We LOVE you. We MADE you.
|
(Offline)
|
|
05.03.2009, 20:38
|
#5
|
злобный флудер
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений (для 1,476 пользователей)
|
Ответ: Глупый вопрос
По идее там тоже есть работа с буферами
|
а на самом деле нет...
аффтар смотри CreateImage() LockImage() UnlockImage() LoadImage()
|
(Offline)
|
|
06.03.2009, 00:39
|
#6
|
Мастер
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений (для 252 пользователей)
|
Ответ: Глупый вопрос
Не знаю как в Б3Д, а в БМ в каждой картике есть Tpixmap-ы и указатель на данные(пиксели) и делай с ними что хочешь.
|
(Offline)
|
|
06.03.2009, 00:49
|
#7
|
|
Ответ: Глупый вопрос
плохо что в бм реализация картинок такая не продумая
по-сути каждый TImage это TPixmap и текстура в видеопамяти
зачем нам копировать пикмапы и загружать их опять в видеопамять когда можно прямиком из видеопамяти в видеопамять копировать и прогонять через какой-то шейдер ?
правда в таком случае старое железо оказывается за бортом
|
|
|
06.03.2009, 02:48
|
#8
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений (для 6,852 пользователей)
|
Ответ: Глупый вопрос
мде...
Тоесть циклом?
Задача проста до безумства надо надравить кровь на пол чтоб типами не загружать.
Я тут подумал об одном методе...
Надравим кровь потом грабим экран и записываем в переменную пола но это извращенство помоему.
Былаб функция DrawImageToImage(x:int,y:int,SourceImage:TImage, DestImage:TImage)
Ну попробую скрафтать.
Отчёт напишу.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 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)
|
|
06.03.2009, 11:07
|
#9
|
|
Ответ: Глупый вопрос
Randomize
тебе лень читать справку ?
юзай методы tpixmap window и paste
|
|
|
06.03.2009, 11:14
|
#10
|
Мастер
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений (для 252 пользователей)
|
Ответ: Глупый вопрос
"Потенциал BlitzMax в 2D огромен..." - и не только в 2Д.
"Былаб функция DrawImageToImage(x:int,y:int,SourceImage:TImage, DestImage:TImage)"
На вскидку, это делается так:
Function DrawImageToImage(x:Int,y:Int,SourceImage:TImage, DestImage:TImage)
Local src_pix:TPixmap = LockImage( SourceImage )
Local dst_pix:TPixmap = LockImage( DestImage )
dst_pix.paste( src_pix, x, y )
End Function
по идее должно работать, не проверял.
"Надравим кровь потом грабим экран и записываем в переменную пола но это извращенство помоему." - извращенство. И вообще зачем кровь рисовать в текстуру? Можно просто сверху кинуть с альфой и все, эффект по-моему тот же.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
06.03.2009, 13:15
|
#11
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Глупый вопрос
Нет. кровь надо рисовать в текстуру. ибо убив всего лишь 10 тыщ монстров это уже будет 10 тыщ батчей. В то время, как если кровь будет запечена в текстуру - то как была одна текстура, так одна и останется.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
06.03.2009, 14:26
|
#12
|
Мастер
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений (для 252 пользователей)
|
Ответ: Глупый вопрос
HolyDel в твоих словах есть доля правды, но рендер в текстуру занятие тоже не мгновенное. К тому же никто не мешает постепенно альфой убирать кровь с экрана, а потом и стирать ее из памяти совсем, хотя бы в тех местах, где игрок уже не появится. Если же в игре 10000 монстров, то я прям не знаю, катком их чтоли давить ? Кстати и отрендерив кровавый шлейф от катка в текстуру, можно написать имя любимой девушки(к примеру), а потом показывать ей скриншоты с разных ракурсов.
|
(Offline)
|
|
06.03.2009, 15:46
|
#13
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений (для 6,852 пользователей)
|
Ответ: Глупый вопрос
Примного благодарен!
Способ действенный.
* надо мне зубрить свойства обьектов в BlitzMAX. А то я даже незнаю как FreeImage сделать.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 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)
|
|
06.03.2009, 16:05
|
#14
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений (для 6,852 пользователей)
|
Ответ: Глупый вопрос
Сообщение от jimon
Randomize
тебе лень читать справку ?
юзай методы tpixmap window и paste
|
У меня нету справки...
вернее она не работает ибо у меня умер InternetExplorer в системе под корень.
Я использую TotalCommander вместо Explorer.exe дла лазанья по компу.
Винду переустановить не имею возможности.
Справку читаю лазая по модулям BlitzMax самим IDE.
Знаю, что сурово. Но что поделаешь.
ну вот я стал нуждающимся. Ах...
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 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)
|
|
06.03.2009, 16:06
|
#15
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Глупый вопрос
dimanche13 в нормальных движках время рендера в текстуру не слишком отличается от времени рендера в бакбуфер. Если текстура декали висит в видеопамяти и текстура кровищи уровня там же - то ето тупой дип, с текстурой, в качестве рендертаргета. Ну пусть даже в два раза больше. Ну пусть даже в 20. При 20 декалях мы уже имеем выигрыш в батчах (но проигрыш в филлрейте). В играх потипу кримсоланда (в играх другого типа, где крови мало, я не вижу смысла запекать ее в текстуру) именно ТЫСЯЧИ монстров. Там каждую секунду 10-20 убийств монстров (если не больше). Там в прямом смысле - моря крови
Помоему там и трупики монстров запекают в текстуру. И весь смысл именно в массовости вражин. Стиль такой. и десятки тысяч декалей крови - это не фантастика, а самая настоящая реальность.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Похожие темы
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
Вопрос |
Черный крыс |
BlitzMax |
1 |
31.03.2009 09:30 |
Глупый вопрос но задам. |
magpro |
3D-программирование |
3 |
30.05.2007 23:22 |
16 битный рижим. |
ЛысыЙ_Чук-Иванчук |
3D-программирование |
2 |
17.07.2006 17:15 |
Часовой пояс GMT +4, время: 01:38.
|