Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity > Физика

Ответ
 
Опции темы
Старый 31.01.2013, 21:03   #1
Racot
AnyKey`щик
 
Регистрация: 28.07.2011
Сообщений: 11
Написано 0 полезных сообщений
(для 0 пользователей)
Вопрос Имитация веревки

Помогите пожалуйста, уже не знаю что делать Нужно имитировать резинку как в Contre Jour.
немного получается в джоинтами но объекты между собой разбросаны да и текстуру нужно прилепить сплошную.
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 01:04   #2
pepel
Мастер
 
Аватар для pepel
 
Регистрация: 23.09.2009
Адрес: ленобласть
Сообщений: 1,189
Написано 447 полезных сообщений
(для 2,526 пользователей)
Ответ: Имитация веревки

хм. чет никто не отвечает.

я както делал прототип такой резинки на блитце . если надо могу описать как делал

джоинтами можно сделать только простую веревку которая не тянется.

если надо сплошную текстуру то берется плейн разделенный на несколько частей по одной оси и прикрепляется к костям, и этими костями управляешь
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 01:56   #3
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Имитация веревки

Рисовать можно с помощью LineRenderer, вот с растягиванием помочь не могу. С физикой мало работал.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 14:18   #4
Racot
AnyKey`щик
 
Регистрация: 28.07.2011
Сообщений: 11
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Имитация веревки

Сообщение от pepel Посмотреть сообщение
я как-то делал прототип такой резинки на блитце . если надо могу описать как делал
было бы очень круто, если не трудно опиши пожалуйста

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

Дошел до математики, то что мне нужно это закон Гука но как его запрограммировать под юньку
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 14:31   #5
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Имитация веревки

Тебе нужен комплексный Joint, который совмещает как шарнир, так и Spring(пружину), тебе тогда лучше юзать http://docs.unity3d.com/Documentatio...ableJoint.html
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 14:39   #6
Racot
AnyKey`щик
 
Регистрация: 28.07.2011
Сообщений: 11
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Имитация веревки

Сообщение от Костян Посмотреть сообщение
Тебе нужен комплексный Joint, который совмещает как шарнир, так и Spring(пружину), тебе тогда лучше юзать http://docs.unity3d.com/Documentatio...ableJoint.html
Юзал:
1. Не могу найти оптимальных параметров
2. При пересечениях артефакты
3. Это получается с кусочков, если прилепить текстуру на каждый, будет криво(с моими да умениями)
Люди говорят с физикой будет очень геморно, мат решение искать нужно.
----------
Устраивает результат с тканью но она сгибается и поворачивается, а проект то в 2д пространстве. Уже неделю сижу и штаны протираю над этой проблемой
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 15:02   #7
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Имитация веревки

ТЫ поставь ограничение))
2 плейна с колайдером перед и после "веревки" и поправь жесткость ткани
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 15:26   #8
Racot
AnyKey`щик
 
Регистрация: 28.07.2011
Сообщений: 11
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Имитация веревки

Сообщение от Костян Посмотреть сообщение
ТЫ поставь ограничение))
2 плейна с колайдером перед и после "веревки" и поправь жесткость ткани
Ткань по максимуму стоит + выставлял freezeRotation по всех осях
а с плейнамы не понял по какой оси?

Накинул картинку как делал



стремлюсь к реализации "слизи" http://www.youtube.com/watch?feature...TI_8_Q#t=51 s (привязка по времени)
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 15:54   #9
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Имитация веревки

Там матан)
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 16:34   #10
Racot
AnyKey`щик
 
Регистрация: 28.07.2011
Сообщений: 11
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Имитация веревки

Сообщение от Костян Посмотреть сообщение
Там матан)
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 16:58   #11
pepel
Мастер
 
Аватар для pepel
 
Регистрация: 23.09.2009
Адрес: ленобласть
Сообщений: 1,189
Написано 447 полезных сообщений
(для 2,526 пользователей)
Ответ: Имитация веревки

вобщем метод такой: берутся две точки которые имеют силу тяжести и инерцию(я например брал готовый двиг физикс т.к. писать самому коллизии лень). затем узнаем расстояние и градус

sx#=x1-x2
sy#=y1-y2
dist#=Sqr(sx^2+sy^2)
rad#=ATan2(sy,sx)


затем прикладываем импульс(не силу а ипульс- импульс, имеет единицу измерения масса*дистанция/время)
к обоим телам , берется некое расстояние(set_dist) которое изначально указываешь, к которому должны стремится точки





force_x1#=Cos(rad)*(set_dist-dist)
force_y1#=Sin(rad)*(set_dist-dist)

получаем импульс отталкивания и притягивания для обоих точек

затем применяем импульс для обоих тел с разным знаком

pxBodyAddForce body1,force_x1,force_y1,0,1
pxBodyAddForce body2,-force_x1,-force_y1,0,1

обычно тела по сумасшедшему себя ведут и приходится применять дампинг pxBodySetLinearDamping

прикрепил ехе-шник с исходником как это будет выглядеть
(мышкой можно тянуть веревку, колесиком мыши увеличивать\уменьшать set_dist)
Вложения
Тип файла: rar elastic.rar (1.91 Мб, 1495 просмотров)
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 17:07   #12
Racot
AnyKey`щик
 
Регистрация: 28.07.2011
Сообщений: 11
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Имитация веревки

pepel, спасибо, буду разбирать и подстраивать в Unity
С меня печеньки ))
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 17:30   #13
pepel
Мастер
 
Аватар для pepel
 
Регистрация: 23.09.2009
Адрес: ленобласть
Сообщений: 1,189
Написано 447 полезных сообщений
(для 2,526 пользователей)
Ответ: Имитация веревки

незачто. насчет единой текстуры я имел ввиду такой способ



если в блитце можно так сделать, то в юнити подавно.
насчет других методов, про которые говорил pax не знаю..
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 17:54   #14
Racot
AnyKey`щик
 
Регистрация: 28.07.2011
Сообщений: 11
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Имитация веревки

Спасибо, буду дерзать. Может pax что-то еще подскажет с лайн рендером. Потом отпишусь что выйдет ))
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 18:10   #15
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Имитация веревки

Да что с ним не то?
Делаешь обьект, ставишь на него лайнрендер, парентишь к нему столько Empty чаилдов, сколько нужно звеньев. Чаилды соедини всякими Joint-ами. на обьект с лайнрендером вещаешь такой скрипт:
Сними галку useWorldSpace
public Transform[] p;//это наши Empty
void FixedUpdate(){

for(
int i=0;i<p.Lenght;i++)
lineRenderer.SetPosition(ip[i].position);

Должно быть как у пипла
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com