Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > API приложений и сред

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 30.12.2013, 06:43
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 1  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
По умолчанию Nape - нужно сделать drag static объектов

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


Последний раз редактировалось Isfet; 30.12.2013 в 10:49.
Старый 30.12.2013, 11:44
FlasherEgor вне форума Посмотреть профиль Отправить личное сообщение для FlasherEgor Найти все сообщения от FlasherEgor
  № 2  
Ответить с цитированием
FlasherEgor

Регистрация: Nov 2013
Сообщений: 86
Если вы имеете в виду, что объект перетаскивается, но на его перемещение не влияют другие объекты, тогда как сам он может их отталкивать, то можно использовать Box2D, а в нем - кинематический тип тел... Насчет Nape я точно не знаю, можно ли там так сделать.

Старый 30.12.2013, 12:59
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 3  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
Цитата:
Сообщение от FlasherEgor Посмотреть сообщение
Если вы имеете в виду, что объект перетаскивается, но на его перемещение не влияют другие объекты, тогда как сам он может их отталкивать
вроде не так, попробую переформулировать :
есть 5 объектов (1...5), начинаю тащить 1-й, остальные (2-5) должны стать как стена(неподвижны, их нельзя сдвинуть и перемещаемый объект может к ним только прижаться, сдвинуть их не может(тоесть не может передать им свою энергию)). Прижимается объект в зависимости от положения мышки и в зависимости от геометрии фигур .

Старый 30.12.2013, 14:25
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 4  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Isfet
Код AS3:
BodyType.KINEMATIC
Документация
По правильному, при "драге" телу нужно задавать силы движения, в точку драга. Если манипулировать свойствами x, y напрямую, это будет похоже на "телепортацию".
__________________
Дети не должны знать о своих родителях

Старый 30.12.2013, 16:32
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 5  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
я сделал перемещение кинематик объектов, задал скорости, но объекты проходят друг через друга, как настроить коллизии?

Старый 30.12.2013, 16:54
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 6  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
На кинематические и статические объекты - не могут влиять другие тела.

Статические тела всегда стоят на месте. Кинематические - могут двигаться, но на их собственное движение другие тела не влияют, так-же кинематические и статические тела не могут повлиять друг на друга. Их движение всегда - фиксировано. (пример: двигающиеся платформы в марио)

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

Старый 30.12.2013, 17:19
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 7  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
ну да получается динамическое, но как сделать чтобы другие объекты не двигалась от соприкосновения с перетаскиваемым объектом? делать массу у объекта который тащу очень маленькой?? а те которые стоят делать с большой массой?

Старый 30.12.2013, 17:39
FlasherEgor вне форума Посмотреть профиль Отправить личное сообщение для FlasherEgor Найти все сообщения от FlasherEgor
  № 8  
Ответить с цитированием
FlasherEgor

Регистрация: Nov 2013
Сообщений: 86
Может быть, на время движения можно делать неперемещаемые объекты статическими, а тот, что перемещается - динамическим? Или так нельзя?

Старый 30.12.2013, 18:54
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 9  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
да, это то что нужно), осталось разобраться как сделать чтобы центр объекта привязывался к курсору без эластичности, а всегда был жестко закреплен в координатах (0,0)

вот возникла такая проблема
Название: 123.jpg
Просмотров: 300

Размер: 3.4 Кб

тащим - красный круг, положение его видно из рисунка, мышь - находится в синей точке, и круг красный должен быть в месте где сейчас я нарисовал черный круг, как такое сделать? если делаю жесткую сцепку(stiff = true), то объект залазит на другой объект вот так

Название: 234.jpg
Просмотров: 281

Размер: 2.4 Кб

а такое недопустимо, как сделать чтобы не залазил?

по энтерфрейму искалось ближайшее к мыши возможное положение перетаскиваемого объекта, скорее всего тут надо что-то мудрить с "телепортацией" )


Последний раз редактировалось Isfet; 30.12.2013 в 19:33.
Старый 03.01.2014, 13:37
vorodis2 вне форума Посмотреть профиль Отправить личное сообщение для vorodis2 Найти все сообщения от vorodis2
  № 10  
Ответить с цитированием
vorodis2

Регистрация: Feb 2011
Адрес: Украина Днепропетровск
Сообщений: 106
body-статическое тело.

body.spase=null.
body.pozition.setxy(100,100);
body.spase=spase.

Логика проста в момент переноса вырезаем статическое тело из мира, и меняем его позиции, потом опять вставляем в мир, у меня шикарно работает.

Создать новую тему Ответ Часовой пояс GMT +4, время: 20:42.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 20:42.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.