Навигация
Поддержать материально
Steam Greenlight

Логотипы
Медальки
Темы форума
194 - ?
27.08.2026
 PapkaI_Igrodel
193 - Bullet Heaven…
23.06.2026
 Dan
.ruby
9.06.2026
 stom
193 - ?
29.05.2026
 Piroxyline
192 - Lords of the B…
10.05.2026
 Mefistofel
Архив Neuh
6.04.2026
 PapkaI_Igrodel
192 - ?
3.04.2026
 PapkaI_Igrodel
Видео пятнашки
14.03.2026
 appscoproration
191 - RPG XIII
7.03.2026
 Mefistofel
Насколько серьезно в…
19.02.2026
 VoroneTZ
Обсуждение «2D зрение»
RichDad
Avatar пользователя

Опубликовано 21.07.2012 08:54 (14 лет назад)    #
Как сделать эффект "зрения" в 2D игре? То есть персонаж не должен "видеть" сквозь непрозрачные предметы.

Картинки подходящей не нашел, так что вот мой мэскилз паинт:


Тут пример довольно простой, но это очень эффектно смотрится, скажем, для зала с двумя рядами круглых колонн.

Соответственно игрок должен видеть то, что "видит", и не видеть мобов/предметы в скрытых областях (если он их там раньше не видел).
Dan
Avatar пользователя

Опубликовано 21.07.2012 09:54 (14 лет назад)    #
делай по прринципу теней в 2д, можно шейдерами можно геометрией.
LetsOffBrains
Avatar пользователя

Опубликовано 21.07.2012 10:14 (14 лет назад)    #
Вот или у всемогущего Darthman'а.
http://www.gamedev.ru/projects/forum/?id=160513
RichDad
Avatar пользователя

Опубликовано 21.07.2012 12:30 (14 лет назад)    #
LetsOffBrains написал:
Вот или у всемогущего Darthman'а.
http://www.gamedev.ru/projects/forum/?id=160513


Первая ссылка - это поделка на LUA целиком. Ничего там я не понял.

А ссылка на Дартмана там же в статье ведет на статью Дарта о тенях, но там нет исходников - только экзешник.
LetsOffBrains
Avatar пользователя

Опубликовано 21.07.2012 12:40 (14 лет назад)    #
Там же рассказывается как что сделать.
RichDad
Avatar пользователя

Опубликовано 21.07.2012 18:51 (14 лет назад)    #
LetsOffBrains написал:
Там же рассказывается как что сделать.

Я осознаю только как это сделать полигонами... но вот методы "сворачивания" пространства - это я не понимаю.

Один рассматривает пространство как >< песочные часы, второй в полярных координатах.

можете мне пояснить про полярные координаты? Как именно преобразовать наш экран в полярные координаты, чтобы потом "сместить тень" вниз, развернуть полярные координаты обратно и получить тень?

редакция от RichDad, 21.07.2012 20:10

Darthman
Древний организм
Avatar пользователя

Опубликовано 22.07.2012 16:58 (14 лет назад)    #
свернуть прямоугольник вокруг одной точки (центра). Соединив тем самым две противоположные его грани в одну.
RichDad
Avatar пользователя

Опубликовано 23.07.2012 19:25 (14 лет назад)    #
Darthman написал:
свернуть прямоугольник вокруг одной точки (центра). Соединив тем самым две противоположные его грани в одну.
Это ты про свой метод песочных часов? Я жутко извиняюсь за тупняк, но не смог я его осилить. Не понимаю что ты там делаешь, хоть и картинки есть...

Я про другой метод спрашивал (там другой кто-то тему начинал), у него сворачивается в полярные координаты, но не понимаю как (расковырять его LUA не получилось)
Dj_smart
Avatar пользователя

Опубликовано 25.07.2012 19:51 (14 лет назад)    #
http://zengl.org/extra_ru.html например (движок ZenGL), собственные наработки http://rghost.ru/39414071 (на том же движке, только более реальная расстановка теней), общий смысл в том, что от каждого отрезка рисуется четырехугольник с двумя первыми точками в отрезках, а вторая пара — далеко за областью рендера.

редакция от Dj_smart, 25.07.2012 19:51

Перейти на форум:
Конкурсы
Открытые конкурсы:
Активных нет
Недавние конкурсы:
 193 - Bullet Heaven II
 192 - Lords of the Board
 191 - RPG XIIII
 190 - Horror
 189 - Race V
 Все конкурсы
Случайная игра
Голосование

194?

Айдлер (инкрементальная игра)
40% [4 Голосов]
Автобаттлер
20% [2 Голосов]
Ситибилдер
10% [1 Голос]
Креативная тема (не связанные с игрой условия)
30% [3 Голосов]
Напишу в теме
0% [0 Голосов]

Голосов: 10
Начало: 24.08.2026 20:00


30,065,090 уникальных посетителей

Создано на базе русской версии PHP-Fusion copyright © 2003-2006 by Nick Jones.
Released as free software under the terms of the GNU/GPL license.