Есть ли способ сделать фонарик, который не может проходить сквозь твердые объекты в Game Maker?

Я делаю 2D (сверху вниз) хоррор в Game Maker. У каждого игрока есть фонарик, который истощает сверхурочное время. Фонарик использует поверхности для рисования света, а конус со временем становится меньше. Я хотел бы, чтобы фонарик действовал как настоящий фонарик, а не проходил сквозь стены. Есть ли способ это сделать?Изображение того, как я хочу, чтобы это выглядело


person nimrod100    schedule 16.05.2016    source источник


Ответы (1)


как ты сейчас рисуешь свой фонарик? Я бы рекомендовал не рисовать спрайт фонарика, а вместо этого залить поверхность черным цветом (чтобы он действовал как темнота) и вырезать из него свет.

Затем вы можете использовать функцию Collision_line, чтобы пронестись по дуге от вашего игрока и узнать, где он сталкивается с объектом, или выходит ли линия за пределы диапазона вашего фонарика. Затем сохраните все эти вершины и нарисуйте примитив со смешиванием, чтобы он действовал как фонарик. Надеюсь, это имеет смысл, в противном случае, клянусь, я видел несколько сообщений на форумах разработчиков игр по этому поводу, удачи!

person E Breakey    schedule 18.05.2016