Понедельник, 18 Ноября 2024, 13:50

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Слежение объекта за камерой, анимация - кка сделать?
BeavisxxiДата: Суббота, 04 Сентября 2010, 12:38 | Сообщение # 1
был не раз
Сейчас нет на сайте
Пока что у меня два вопроса:
1) Как сделать так что бы объект следовал за камерой?
2) При определенном событии спрайт объекта должен смениться на пару секунд, после чего смениться обратно. Как реализовать?
stalkeryaДата: Суббота, 04 Сентября 2010, 12:53 | Сообщение # 2
Пользователь Blender 2.5
Сейчас нет на сайте
1)Открой Room, открой вкладку View, и поставь везде галочки, в самом внизу выбери объект за которым должна следить камера.
2)Ща сделаю пример.


Бросила девушка после того, как узнала, что я перешел с гм на Construct.
BeavisxxiДата: Суббота, 04 Сентября 2010, 13:00 | Сообщение # 3
был не раз
Сейчас нет на сайте
Quote (Beavisxxi)
объект следовал за камерой

Quote (stalkerya)
выбери объект за которым должна следить камера.

Мне наоборот нужно:)
Т.е. я уже сделал что бы камера следили за одним объектом, а теперь нужно что бы другой объект был относительно камеры всегда в одном местоположении.. Надеюсь понятно изъясняюсь.

(_Meloman_)Дата: Суббота, 04 Сентября 2010, 13:38 | Сообщение # 4
участник
Сейчас нет на сайте
Beavisxxi, хм... я думаю, что можно поставить в Step обьекта, который должен двигатся за камерой, кнопочку Move towards point, а в координатах указать:
view_wview/2
и
view_hview/2

Вроде так^_^


Made_In_USSRДата: Суббота, 04 Сентября 2010, 14:58 | Сообщение # 5
заслуженный участник
Сейчас нет на сайте
В координатах обьекта view_xview[0] и view_yview[0].

Например в степ:
x=view_xview[0]+n
y=view_yview[0]+m


Новичкам изучающим GML кликать сюда.
Много примеров, исходников, библиотек и вообще всего что вам только может пригодиться. Автор портала, прости меня за ссылку, наболело =)
MIKEL922Дата: Суббота, 04 Сентября 2010, 15:53 | Сообщение # 6
заслуженный участник
Сейчас нет на сайте
возьми отсюда

Нет не чего не возможного.
uncog.ru


Сообщение отредактировал MIKEL922 - Понедельник, 06 Сентября 2010, 12:02
(_Meloman_)Дата: Суббота, 04 Сентября 2010, 21:45 | Сообщение # 7
участник
Сейчас нет на сайте
Made_In_USSR, а какая разница с моим? dry

Made_In_USSRДата: Воскресенье, 05 Сентября 2010, 01:52 | Сообщение # 8
заслуженный участник
Сейчас нет на сайте
Принципиально никакой. Но если ему нужна позиция не по центру придется либо делитель искать сложный либо добавлять лишнюю операцию исчисления. С точки зрения оптимизации не очень грамотно. Плюс ты использовал лишнюю функцию, на которую опять же тратится лишний ресурс системы, а это опять возвращает нас к вопросу об оптимизации.

Новичкам изучающим GML кликать сюда.
Много примеров, исходников, библиотек и вообще всего что вам только может пригодиться. Автор портала, прости меня за ссылку, наболело =)
(_Meloman_)Дата: Воскресенье, 05 Сентября 2010, 11:44 | Сообщение # 9
участник
Сейчас нет на сайте
Made_In_USSR, хм... ну тогда ладно, верю biggrin

BeavisxxiДата: Понедельник, 06 Сентября 2010, 11:01 | Сообщение # 10
был не раз
Сейчас нет на сайте
Вобщем то только и нужно было узнать как координаты камеры обозначаются) Спасибо за это!

А что по поводу второго вопроса?

NeZnayuДата: Вторник, 07 Сентября 2010, 08:43 | Сообщение # 11
__танцуй!__
Сейчас нет на сайте
Определенное событие:
default_spr=sprite_index //Запоминаем текущий спрайт
sprite_index=** //Меняем его
alarm[0]=room_speed*2 //Ставим будильник на две секунды

alarm0:
sprite_index=default_spr //Возвращаем первоначальный спрайт


CombatForce - 2d TDS долгожданный релиз
Noobster - самый простой конструктор игр в мире
LaLaLaLAMA! - игра не про Ламу
BeavisxxiДата: Четверг, 14 Октября 2010, 12:17 | Сообщение # 12
был не раз
Сейчас нет на сайте
Теперь такой вопрос: объект следует за камерой, но слегка запаздывает. Можно ли исправить?

И ещё: можно ли вместо проверки конкретного значения Х (т.е. именно координаты), проверить диапозон значений?

NeZnayuДата: Четверг, 14 Октября 2010, 12:23 | Сообщение # 13
__танцуй!__
Сейчас нет на сайте
Beavisxxi, если ты хочешь нарисовать интерфейс, то рисуй его относительно view_xview, view_yview, а не х, у объекта

CombatForce - 2d TDS долгожданный релиз
Noobster - самый простой конструктор игр в мире
LaLaLaLAMA! - игра не про Ламу
BeavisxxiДата: Четверг, 14 Октября 2010, 12:30 | Сообщение # 14
был не раз
Сейчас нет на сайте
NeZnayu, Я сделал так:

Quote (Made_In_USSR)
Например в степ:
x=view_xview[0]+n
y=view_yview[0]+m
NeZnayuДата: Четверг, 14 Октября 2010, 12:31 | Сообщение # 15
__танцуй!__
Сейчас нет на сайте
Beavisxxi, ты рисуешь интерфейс?
Если так то напиши что у тебя в draw.


CombatForce - 2d TDS долгожданный релиз
Noobster - самый простой конструктор игр в мире
LaLaLaLAMA! - игра не про Ламу
BeavisxxiДата: Четверг, 14 Октября 2010, 12:34 | Сообщение # 16
был не раз
Сейчас нет на сайте
NeZnayu, Грубо говоря это интерактивный фон, который должен быть в одном положении относительно камеры и изменятся по определенным образом. И я не пользовался draw.
NeZnayuДата: Четверг, 14 Октября 2010, 12:40 | Сообщение # 17
__танцуй!__
Сейчас нет на сайте
Beavisxxi, Если используешь только спрайт объекта, в draw напиши:
Code
draw_sprite_ext(sprite_index,image_index,view_xview[0],view_yview[0],image_xscale,image_yscale,image_angle,image_blend,image_alpha)

Таким образом спрайт сразу будет рисоваться на координатах вида, а не сначала на объекте, потом перемещая его.


CombatForce - 2d TDS долгожданный релиз
Noobster - самый простой конструктор игр в мире
LaLaLaLAMA! - игра не про Ламу


Сообщение отредактировал NeZnayu - Четверг, 14 Октября 2010, 12:40
BeavisxxiДата: Суббота, 22 Января 2011, 13:17 | Сообщение # 18
был не раз
Сейчас нет на сайте
NeZnayu, Ага, то что нужно)

Добавлено (16.10.2010, 10:21)
---------------------------------------------

Quote (Beavisxxi)
можно ли вместо проверки конкретного значения Х (т.е. именно координаты), проверить диапозон значений?

Добавлено (15.01.2011, 06:18)
---------------------------------------------
Помогите, снова:)

Нужно что бы камера следовала за объектом, но при этом не двигалась дальше другого объекта (например flag)
вписываю в Step flag'а:

Code
if view_xview[0]<flag.x then view_xview[0]=flag.x;

Получается что то непонятное: при движении объекта, за которым следит камера, вправо - камера застывает в координатах flag.x, при движении влево она игнорирует объект flag.

Добавлено (22.01.2011, 13:17)
---------------------------------------------
Никто не поможет? Оо

LgunchikДата: Суббота, 22 Января 2011, 19:57 | Сообщение # 19
постоянный участник
Сейчас нет на сайте
можно создать ещё один объект, без спрайта

в стэпе написать:

Code
x=o_player.x
y=o_player.y

if x<=flag.x
{
x=flag.x
}

а камеру прицепить не ГГ а к этому объекту!!!


>
BeavisxxiДата: Воскресенье, 23 Января 2011, 08:14 | Сообщение # 20
был не раз
Сейчас нет на сайте
Quote (Lgunchik)
можно создать ещё один объект, без спрайта в стэпе написать: Codex=o_player.x y=o_player.y if x<=flag.x { x=flag.x } а камеру прицепить не ГГ а к этому объекту!!!

Идея хорошая, но мне тогда все настройки view придется переписывать из ГГ в этот объект.

Проблема решилась очень просто: перебирал какие параметры есть у view и нашел view_object. Соответственно мне легче, при моем условии, вопще отключить камеру от ГГ, вот как выглядит Step флага.

Code
if GG.x<Flag.x then view_object[0]=Flag  
      else view_object[0]=GG
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг