Столкновение двух объектов (C#)
Как сделать, что бы происходило событие когда колайдер объекта 'a' касался колайдера объекта 'b'. При этом сам скрипт не привязан к 'a' или 'b'.
|
Ответ: Столкновение двух объектов (C#)
Повесить в позишен любого из обьектов триггер идентичный самому обьекту и снимать с него событие.
|
Ответ: Столкновение двух объектов (C#)
Lestar, не мог бы ты привести пример, буду благодарен :3
|
Ответ: Столкновение двух объектов (C#)
Например имеем два шара, на один из них вешаем думик с координатами, совпадающими с рутовым обьектом. На думик добавляем примитив коллайдер сферу, делаем коллайдер диаметром как у рутового обьекта. На думик вешаем скрипт, обрабатывающий столкновение.
|
Ответ: Столкновение двух объектов (C#)
А почему не хочется вешать скрипт? У меня такое подозрение, что схема с триггером будет работать через раз...
|
Ответ: Столкновение двух объектов (C#)
Цитата:
|
Ответ: Столкновение двух объектов (C#)
При чём здесь C#?
C# - это язык, .Net - программная платформа, Unity - инструмент. В твоём случае, речь идёт о Unity, а не о C#. |
Ответ: Столкновение двух объектов (C#)
Если отвечать на вопрос поставленный в первом посте: нельзя без привязки скриптов. Эвенты столкновения приходят в скрипты объектов, участвующих в столкновении.
upd: дальше эти эвенты можешь отсылать куда угодно. |
Ответ: Столкновение двух объектов (C#)
MoKa, я думаю не сложно догадаться, что речь идет о разновидности C#, который используется в Unity3D. Людям, здесь сидящем, не надо каждый раз объяснять в какой раздел форума они заходят. ;)
|
Ответ: Столкновение двух объектов (C#)
Цитата:
Читай (кликабельно): C# Unity3D Если внимательно читал, то поймёшь, что есть ЯП (Язык Программирования), такие как: C++, BlitzBasic, C#, Java, Assembler (и т.д.), и есть инструменты (движки в данном случае), такие как: Ogre, Irrlicht, Unity, UnrealEngine, Xors3D и т.д. Это две разные вещи, и сильно отличаются. То что там евенты, и всякая архитектурная хрень - это реализация самого Unity, а не ЯП, который лишь даёт возможность реализации подобных фишек. Это как спрашивать вопрос про Xors3D движёк забинженный к С++, и называть тему: как в через С++ загрузить текстуру. Что на самом деле относится прямым образом к Xors3D, а не к С++. Цитата:
Да и судя по тому как ты "разделяешь" ЯП и инструменты, видимо стоит таки объяснять и не только это. |
Ответ: Столкновение двух объектов (C#)
MoKa, а по теме есть что сказать? Жаль...
pax, а если скрипт все же привязан к одному из объектов, то как выглядит код? |
Ответ: Столкновение двух объектов (C#)
Цитата:
Цитата:
Если нужно обработать в отдельном месте, то создай например singleton класс, с функцией обработки, и далее реализуй там обработку как если обрабатывал бы в скрипте самого объекта. И вызывай как обычный метод синглтон класса передавая данные о коллизии. ЗЫ, поддерживается ли в Unity наследование классов для реализации сложных объектов? Если да, почему не создать дочерный класс, который бы реализовывал обработку коллизии, и далее уже наследовать свои объекты от него. ЗЗЫ, и вопрос твой видимо исходит из весьма глупой мотивации, не опишешь задачу? |
Ответ: Столкновение двух объектов (C#)
MoKa, спс. Но все же проблема в непонимании структуры примера в документации. Например, что значит '(Collision collision)'... Поэтому надеялся, что кто-то приведет более 'прозрачный' пример.
Задача была сделать пик-ап предмета: когда персонаж касается сферы вокруг объекта, то можно совершить какое-то событие, но до меня дошло, что тут лучше подсчитывать расстояние от предмета до персонажа. |
Ответ: Столкновение двух объектов (C#)
Думаю надо вооружиться переводчиком и читать справку, разбирая названия всех свойств и методов объектов ;)
|
Ответ: Столкновение двух объектов (C#)
Чтобы не плодить еще одну тему попробую задать вопрос здесь.
Мне нужно добиться абсолютно упругого столкновенияв 3Д физике. Сделал Bouncing=1, убрал скорости засыпания и т.п. - rigidbody.sleepVelocity = 0; drag=0;... Но при этом, столкновение получается упругое, только если скорость достаточно большая... при малых скоростях наблюдается эффект прилипания как бы. Что еще можно настроить? Чтобы при малых скоростях было упругое столкновение? |
Часовой пояс GMT +4, время: 03:21. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot