Слежение объекта за камерой, анимация - кка сделать?
|
|
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, а какая разница с моим?
|
|
| |
Made_In_USSR | Дата: Воскресенье, 05 Сентября 2010, 01:52 | Сообщение # 8 |
заслуженный участник
Сейчас нет на сайте
| Принципиально никакой. Но если ему нужна позиция не по центру придется либо делитель искать сложный либо добавлять лишнюю операцию исчисления. С точки зрения оптимизации не очень грамотно. Плюс ты использовал лишнюю функцию, на которую опять же тратится лишний ресурс системы, а это опять возвращает нас к вопросу об оптимизации.
Новичкам изучающим GML кликать сюда. Много примеров, исходников, библиотек и вообще всего что вам только может пригодиться. Автор портала, прости меня за ссылку, наболело =)
|
|
| |
(_Meloman_) | Дата: Воскресенье, 05 Сентября 2010, 11:44 | Сообщение # 9 |
участник
Сейчас нет на сайте
| Made_In_USSR, хм... ну тогда ладно, верю
|
|
| |
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
|
|
| |