2015-03-18 3 views
0

Как показано на рисунке, я хочу иметь возможность поддерживать это размещение виртуальных кнопок везде, где шарик перемещается.Объектно-ориентированные виртуальные кнопки

Это то, что я пробовал:


1.

Биток является Rigidbody отраженном материала, так что он может отскакивать от подушки. Поэтому в этом случае я попытался создать компоненты Virtual Buttons RigidBody и добавить ту же силу к кнопкам, но это не сработало, потому что она не смогла обнаружить подушки и продолжала двигаться вперед.


2.

Я дал ему коллайдер, он будет отскакивать от подушки до мяча, и что может нарушить формирование вокруг шара.


3.

Я пытался родителю виртуальных кнопок под биток, и мяч Cue под Target Image, но это не помогло, так как все это по центру внутри шара и перекрывается. Я не мог перенести его на все (я не знаю, почему)


Хочу поставить Баунти на ответ.


enter image description here

ответ

1

Виртуальные Butttons иногда не двигаются выше Image Target, я действительно не знаю почему. Но вот работа.

Теперь рассмотрите ваш CueBall родителя. Бросьте в 8 Empty GameObjects как дочерние объекты. Поместите эти GameObjects в положение вокруг шара, которое вы хотите поддерживать через движение.

Теперь каждая виртуальная кнопка помещается как ребенок в эти GameObjects соответственно.

А теперь скрипт движения мяча. Вы должны видеть, что он работает отлично. Удостоверьтесь, что у вас есть ограничение на вращение X и Z. Я предполагаю, что, поскольку это бильярдный шар и его белый, поворот не будет проблемой, если вы не будете писать сценарии для кривых.

Надеюсь, это поможет.

+0

Отличная идея. Просто попробовал. И нет, я не собираюсь делать никаких трюков. –

0

Раствор может быть, чтобы создать сценарий для присоединения к вашему ImageTarget, который имеет 9 общественных преобразований, (ваши 8 самолетов и биток), который затем посмотреть на биток-х х и z, а затем соответственно изменит координаты x и z плоскостей.

+0

Да, но движение бильярдного шара будет использовать физику, я не думаю, что самолеты смогут отслеживать это, используя скрипт. Может это? Я просто знаю, что это имеет какое-то отношение к воспитанию. Но просто не могу наложить на него свой палец. –

+0

@RJJ Вы не двигаете самолеты, вы переназначаете их значения местоположения. У вас есть скрипт, который сканирует местоположение шара, а затем переназначает значения самолетов на их основе. Чтобы переназначить значение объекта, просто используйте: 'transform.position = new Vector3 (XCoord, YCoord, ZCoord); ' –

Смежные вопросы