Отражение воды в Gamemaker 1.4? - PullRequest
0 голосов
/ 04 января 2019

Начну с того, что я искал, если кто-то уже задавал тот же вопрос, но это не так. вопрос, который я хочу задать вам, такой же, как и в «заголовке», так что как я (новичок) могу создать отражение воды / зеркала в студии геймейкера 1.4 (pro)? заранее спасибо и извините за мой плохой английский. Я с нетерпением жду, чтобы узнать больше, как на основе ваших ответов, так и на основе моего личного опыта!

Ответы [ 2 ]

0 голосов
/ 05 марта 2019

пример в пустом проекте

1 создать пример спрайта:

spr_player

2 создать два объекта

пример:

 obj_player // assign them the sprite that you created
 obj_reflection

3на obj_player

шаг события

/// @description maker event step
// character movement

friction = 0.1;

if (keyboard_check (vk_right))
{
    direction = 0;
    speed = 4;
}

if (keyboard_check (vk_left))
{
    direction = 180;
    speed = 4;
}

if (keyboard_check (vk_up))
{
    direction = 90;
    speed = 4;
}

if (keyboard_check (vk_down))
{
    direction = 270;
    speed = 4;
}

4 на obj_reflection

отрисовка события

/// @description maker draw event
// redraw the object (the same sprite, same position x, same position and more the size of the object, same width, we invert the scale in half, same angle, same color mix, transparency in half)

draw_sprite_ext (spr_player,0,obj_player.x,obj_player.y + 100,image_xscale,-0.5,image_angle,image_blend, 0.5);

5 мы помещаем оба объекта в комнату иВуаля у нас есть эксперимент по отражению

6, изменяющий значения, чтобы увидеть результаты

7 для эффекта воды, мы помещаем объекты в разные слои, помещая объект отражения внизу и текстуру водыв среднем слое

8 по тому, как я говорю по-испански, если это так, введите свой вопрос в https://es.stackoverflow.com/

, если вам понравился ответ, дайте мне плюс 1, большое спасибо.BusyClown + 51912423012

0 голосов
/ 16 февраля 2019

Существует три способа достижения эффекта отражения, но, боюсь, ни один из них не является действительно "начальным" уровнем.

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

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

Третий способ - это шейдеры, но кажется, что они менее удобны для начинающих.

Если первое решение не поможет, я быпредложите найти обходной путь, пока у вас не появится соответствующий опыт или вы не научитесь использовать поверхности.

...