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

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

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

Ответ
 
Опции темы
Старый 17.09.2014, 22:13   #1
6082asil
AnyKey`щик
 
Регистрация: 09.08.2014
Сообщений: 16
Написано 0 полезных сообщений
(для 0 пользователей)
Столкновения

Здравствуйте. Есть нестандартной формы объекты, а именно

вот такие диски с дырками.
Как сделать, чтобы обычная сфера из Unity сталкивалась с ними нормально? То есть, чтобы, например, через дырку проходила.
Rigidbody цеплял - не работает. Базовые коллайдеры чего-то не помогают (я вроде как догадываюсь почему). Ну так вот, кто поможет?
(Offline)
 
Ответить с цитированием
Старый 17.09.2014, 22:21   #2
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Столкновения

они сами должны двигаться?
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 17.09.2014, 23:20   #3
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Столкновения

Ригидбоди могут быть только выпуклыми объёмами (особенности математики физических движков).
Поэтому скорее всего в физическом движке у твоих дисков дырки нет, поэтому и не проходит сфера.
Простой вариант — из нескольких выпуклых объёмов слепить тело с дыркой.
Возможности работы с невыпуклыми объёмами в физдвижках обычно очень ограничены, например, часто они могут быть только статическими.
Уточняй возможность работы с невыпуклыми телами в справке к своему движку либо (и лучше) лепи из составных частей.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

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

Если диски не двигаются, то надо добавлять MeshCollider.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 18.09.2014, 11:57   #5
6082asil
AnyKey`щик
 
Регистрация: 09.08.2014
Сообщений: 16
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Столкновения

Ну, вообще было бы хорошо чтобы они двигались (в одном направлении), но можно и неподвижными их сделать.
(Offline)
 
Ответить с цитированием
Старый 18.09.2014, 12:48   #6
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Столкновения

Вот такой классный плаг может помочь, если надо, чтоб двигались:
http://forum.unity3d.com/threads/con...leased.154361/
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 18.09.2014, 15:36   #7
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Столкновения

https://play.google.com/store/apps/d...collider&hl=ru


Спроси у разраба
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 18.09.2014, 17:04   #8
EvilOkta
Знающий
 
Аватар для EvilOkta
 
Регистрация: 31.07.2008
Сообщений: 321
Написано 108 полезных сообщений
(для 229 пользователей)
Ответ: Столкновения

а если сделать двойной коллайдер? у диска один родительский, а у отверстия второй с выступающими гранями. И написать функцию которая проверяет в какой коллайдер попал шар и соответственно взаимодействует/не взаимодействует с ним, при этом игнорируя второй. Или не сработает? (это просто идея, кодом не подкреплю)
__________________
Области Хаоса - мой новый Youtube проект
(Offline)
 
Ответить с цитированием
Старый 18.09.2014, 19:06   #9
dsd
Мастер
 
Аватар для dsd
 
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений
(для 1,836 пользователей)
Ответ: Столкновения

Сообщение от EvilOkta Посмотреть сообщение
а если сделать двойной коллайдер? у диска один родительский, а у отверстия второй с выступающими гранями. И написать функцию которая проверяет в какой коллайдер попал шар и соответственно взаимодействует/не взаимодействует с ним, при этом игнорируя второй. Или не сработает? (это просто идея, кодом не подкреплю)
Наверно можно обойтись вообще одним коллайдером в форме куба, просто подставляя его под центр шарика и затем проверяя расстояние от центра вырезанной дырки до кубика, что бы оно не было меньше радиуса отверстия и проверяя чтобы этот кубик не выходил за пределы диска. И перемещая соответственно полученным векторам и расстояниям коллайдер в форме куба можно добиться эмуляции коллайдера с произвольным количеством дырок.
(Offline)
 
Ответить с цитированием
Старый 18.09.2014, 23:43   #10
6082asil
AnyKey`щик
 
Регистрация: 09.08.2014
Сообщений: 16
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Столкновения

Спроси у разраба
Ох, ну, не знаю, что это именно, но по скринам похоже на то, что я и хочу сделать.
Но вот ведра нету, есть виндофон. На него и собираюсь запилить.
(Offline)
 
Ответить с цитированием
Старый 19.09.2014, 04:26   #11
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: Столкновения

Сообщение от 6082asil Посмотреть сообщение
есть виндофон. На него и собираюсь запилить.
Для компиляции нужен SDK, который ставится только если у тебя win8.
(Offline)
 
Ответить с цитированием
Старый 19.09.2014, 09:19   #12
6082asil
AnyKey`щик
 
Регистрация: 09.08.2014
Сообщений: 16
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Столкновения

Для компиляции нужен SDK, который ставится только если у тебя win8.
Все хорошо, все компы дома уже на 8. И с SDK.
Осталось только сделать игру. :D
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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


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


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