Этого треда уже нет.
Это копия, сохраненная 14 ноября 2019 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
rain.png773 Кб, 1920x1080
Дождь в 2D Дождь в 2D 532168 В конец треда | Веб
Доброй ночи ребята. Подскажите пожалуйста как возможно отрисовать анимированный дождик 2D с минимальными затратами к железу. Я хочу сделать дождик на PSP, а ресурсы там ограничены как понимаете. Мне интересны советы и сам алгоритм, за меня делать не стоит. Спасибо за любую толковую идею.
2 532173
Я просто охуею, если тут кто-то под PSP что-нибудь делает. По жизни, 2д-спрайтов можно крутить очень много даже на vivante 1000.
3 532174
>>2173
ну это будет мой второй проект на пиху(первый попроще) в виде ККИ из вселенной Command&Conquer:Kanes Wrath
4 532175
>>2173
да, 2D есть хорошие спрайты, но дело в максимально оптимизированном на отрисовку алгоритме... вообще я прогер С++ по жизни, но на пиху делаю на lua, да и опыт lua интересен.
5 532219
Делал дождь на денди, советов хуй тебе, как помогали мне здесь, так и я буду
6 532250
>>2168 (OP)
Берешь партиклы и пускаешь, не? Можешь просто полосочки пускать, смотря что там у тебя дешевле.
7 532272
>>2219
я с миром пришел, а ты так... ну ладно, хотябы спасибо, что просто отписался и поднял мой топик
8 532273
>>2250
наиболее дешевле по ресурсам будет играться либо с одной png расклонированной по экрану либо одной большой(ну это по моим чисто догадкам, а как на самом деле возможно комуто более видно чем мне)....щас занимаюсь другими вещами, поэтому есть момент подумать над дождем.
9 532286
>>2273
Еще раз: погугли, что такое партиклы.
10 532298
>>2273
А в чем собственно проблема? Ну спавнишь капли по экрану и двигаешь их вниз, как из видимости улетело переносишь наверх экрана и x по новой рандомишь. Можно скейл немного рандомизировать что бы одна капля как разная выглядела, можно угол подкрутить.
11 532311
>>2286
все, что гуглилось это для Unity в целом.
12 532312
>>2298
если таких обектов на экране около 100..... это будет нормально для такого процессора и тормознутого lua ?
13 532314
>>2311
Я другой анон, который писал, что гонял тысячами партиклы на vivante 1000 писал. Которая была установлена на самом дешевом не-б/у планшете в городе Москва. Сравни характеристики видюх (честно, мне этим заниматься в лом). Судя по "PSP купить" у соньки видюха должна быть на порядок лучше. И про партиклы тот анон прав: это общее понятие, никак не привязанное к юнити, или к языку.
14 532315
>>2314
большое спасибо за коммент.... т.е. создать 100 обектов и двигать просто по экрану полная норма в твоем понимании тоже?
15 532317
>>2315
Да. В моем понимании до 10к. Меньше только если мы говорим о софтверном рендере. От проца капля дождя требует сделать x += dx, y += dy (можешь проверять все партиклы на выход за экран не каждый фрейм, а раз в секунду). Ширину и высоту png делай кратными степени двойки, чем меньше каждая картинка - тем лучше (1616, 3232, 6464, можешь в спрайт 256256 все капли запелить).
16 532320
>>2317
спасибо , друг. ты сделал доброе дело. жму руку за совет.
17 532649
>>2168 (OP)

>ресурсы там ограничены


Охуел чтоли? Да у тебя там кубиты в сравнении со мной.
Мимо Famicom-Genesis-GBA-кодер
image.png169 Кб, 1082x509
18 532652
>>2649
В общем, ОП, тебе всё верно выше сказали, я даже не поленился притащить тебе пример с Famicom. Здесь на пикче слева - содержимое PPU, справа - собственно, игра. Каждая снежинка здесь, как видишь - это отдельный спрайт 8х16 (бывает и режим 8х8, но некоторые игроделы по ряду удобств предпочитали именно 8х16). Поэтому всё, что здесь происходит - это приращение X и Y каждого спрайта. Координаты лежат в таблице. Всё, ничего хитрого. Если позволяют ресурсы, количество снежинок/дождинок можно увеличить. Чтобы дождь/снег был разнообразнее, можешь придать каждой частичке свою скорость по Y. А для X можешь взять табличку синуса с небольшой амплитудой, чтобы частички, падая, "раскачивались" вправо-влево.
>>2649-этот ретроёб
19 532676
>>2649
опача, пили контакты
20 532765
>>2652

>Поэтому всё,


я как увидел твои примеры сразу в голове заиграла фоном музыка с ниндзя рикена. слушай, большое спасбио тебе за визуальное представление ситуации. тем более на примере NES, хоть мой и psp, как бы больше ресурсов....

жму руку и желаю в новом году больше здоровья тебе)
21 532766
>>2649
но мы пишем на разных языках и движках. это немаловажно.
22 532767
>>2652
еще такие игры быстро в голову залетели с похожей задачей.
в утиных историях 2 , алгоритм слегка отличается на глаз от предыдущих игр... будто капли некоторые swap-аются позициями.
23 532785
>>2766

>но мы пишем на разных языках и движках. это немаловажно.


Ну в конечном счёте практически всё сводится к тому, чтобы повторить то, что видишь в живой природе: рисуешь каждую капельку пикселем, снабжаешь гравитацией (++Y). Это было удобно делать на пека, с его битплановым подходом. На консольках, конечно, могут быть другие подходы и другие трюки. Об этом ниже.

>>2767

>будто капли некоторые swap-аются позициями



Тут стоит помнить, что NES не умеет нихуя кроме как выводить спрайты и тайлы размером 8х8 пикселей. Больше она нихуяшеньки не умеет. В Intergalactic Ninja так и не дошел до нужного уровня чтоб глянуть в PPU и разобраться, а по остальным поясню (кстати мои любимые игрульки, спасибо что напомнил).
В Blue Shadow (пик 1) все фазы дождя заготовлены заранее и выводятся как элемент бэкграунда, тайлами. Содержимое тайла модифицируется на лету. Это хороший, годный трюк, потому что в реалтайме модифицируется содержимое PPU, а сделать это на приставке можно только во время обратного хода луча. Это не очень большое время, поэтому код должен быть оптимально быстрым, чтобы всё успевать.
Duck Tales (пик 2) дождь вообще статичный, а анимация происходит при помощи такого трюка как palette cycling. Здесь просто в субпалитре свапается цвет. На первом фрейме палитра такая: голубой, чёрный, чёрный. На втором: чёрный, голубой, чёрный, и на третьем: чёрный, чёрный, голубой. Всё это циклится, отсюда и иллюзия падающих капель. Это самый быстрый и самый простой вариант, но требует аж трёх цветов только для того, чтобы изобразить дождичек. Таким образом, на оставшийся бэкграунд у игры осталось всего 10 цветов (1 прозрачный чёрный и 3 субпалитры по 3 цвета).
В Ninja Gaiden всё же у каждой снежинки свой спрайт, поскольку там меняется направление ветра, влияющее на положение игрока, игрок должен знать куда может подуть ветер и куда его может снести, и по этой (и, возможно, каким-то другим причинам) там решили использовать такой подход.
NES - это трюки everywhere. Кодить на таких консольках - это отдельный вид мазохизма, кому нравится, кому нет.

В любом случае, ебашьте игрушки на всём, на чём умеете. Пусть это будет плойка, пека, гамак, юнити, главное, чтобы был результат, удачи!

>>2676
Можно в 8bit немного поразмять тредик, там какой-то анон создавал фами тред очень давно, я слежу за ним, но долгое время там мёртво. Если есть вопросы по фами, залетай, этот тред у меня в избранном:
https://2ch.hk/8/res/2438.html (М)
23 532785
>>2766

>но мы пишем на разных языках и движках. это немаловажно.


Ну в конечном счёте практически всё сводится к тому, чтобы повторить то, что видишь в живой природе: рисуешь каждую капельку пикселем, снабжаешь гравитацией (++Y). Это было удобно делать на пека, с его битплановым подходом. На консольках, конечно, могут быть другие подходы и другие трюки. Об этом ниже.

>>2767

>будто капли некоторые swap-аются позициями



Тут стоит помнить, что NES не умеет нихуя кроме как выводить спрайты и тайлы размером 8х8 пикселей. Больше она нихуяшеньки не умеет. В Intergalactic Ninja так и не дошел до нужного уровня чтоб глянуть в PPU и разобраться, а по остальным поясню (кстати мои любимые игрульки, спасибо что напомнил).
В Blue Shadow (пик 1) все фазы дождя заготовлены заранее и выводятся как элемент бэкграунда, тайлами. Содержимое тайла модифицируется на лету. Это хороший, годный трюк, потому что в реалтайме модифицируется содержимое PPU, а сделать это на приставке можно только во время обратного хода луча. Это не очень большое время, поэтому код должен быть оптимально быстрым, чтобы всё успевать.
Duck Tales (пик 2) дождь вообще статичный, а анимация происходит при помощи такого трюка как palette cycling. Здесь просто в субпалитре свапается цвет. На первом фрейме палитра такая: голубой, чёрный, чёрный. На втором: чёрный, голубой, чёрный, и на третьем: чёрный, чёрный, голубой. Всё это циклится, отсюда и иллюзия падающих капель. Это самый быстрый и самый простой вариант, но требует аж трёх цветов только для того, чтобы изобразить дождичек. Таким образом, на оставшийся бэкграунд у игры осталось всего 10 цветов (1 прозрачный чёрный и 3 субпалитры по 3 цвета).
В Ninja Gaiden всё же у каждой снежинки свой спрайт, поскольку там меняется направление ветра, влияющее на положение игрока, игрок должен знать куда может подуть ветер и куда его может снести, и по этой (и, возможно, каким-то другим причинам) там решили использовать такой подход.
NES - это трюки everywhere. Кодить на таких консольках - это отдельный вид мазохизма, кому нравится, кому нет.

В любом случае, ебашьте игрушки на всём, на чём умеете. Пусть это будет плойка, пека, гамак, юнити, главное, чтобы был результат, удачи!

>>2676
Можно в 8bit немного поразмять тредик, там какой-то анон создавал фами тред очень давно, я слежу за ним, но долгое время там мёртво. Если есть вопросы по фами, залетай, этот тред у меня в избранном:
https://2ch.hk/8/res/2438.html (М)
24 532891
>>2785

>до нужного уровня чтоб глянуть в PPU и разобраться


это первый тур, токсичный лес. мой любимый ниндзяк на NES.

>>свапается цвет


а я и заметил, как то он отрисовывается по другому... реально угадал получается со свапом.

>>NES - это трюки everywhere. Кодить на таких консольках - это отдельный вид мазохизма, кому нравится, кому нет.


согласен. я слышал там даже как то графикой жертвуют ради музыки. пример Journey to silius. одна из моих любимых стрелялок.

>>В любом случае, ебашьте игрушки на всём, на чём умеете. Пусть это будет плойка, пека, гамак, юнити, главное, чтобы был результат, удачи!



спасибо тебе за очередную порцию информации, хочется, что бы выпущенные консоли жили...я уверен, если бы не эволюция по выпуску новых гаджетов то на ту же PSP до сих пор бы игры выходили... отличная платформа.
25 537479
Почитаю
26 537508
Большой плюс делать игры на старое железо, это то, что их можно запустить на чём угодно, если мощности позволяют. Например NES, эмуляторы есть всюду, где возможно.
27 537549
>>7508
И большой минус - невостребованность. Ну то есть, рынок, конечно есть, и небольшой спрос тоже, но намного меньше чем на кинцо и на юнитиговнецо.
28 537738
>>7549
Да.
Тред утонул или удален.
Это копия, сохраненная 14 ноября 2019 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /gd/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски