Size: a a a

2021 March 30

А

Александр in unity3d.ru
Михаил Стулов
у меня объекты префабы. public GameObject[] Card;
не могу понять как их кодом закрепить на заранее созданном игровом объекте
Ну когда ты инстантиейтиш их, укажи сразу там родителя
источник

А

Александр in unity3d.ru
Михаил Стулов
у меня объекты префабы. public GameObject[] Card;
не могу понять как их кодом закрепить на заранее созданном игровом объекте
А раз это карты, лучше вообще пул сделать, так как по сути карты одинаковые, а контент только отличается, по этому нет смысла создавать/удалять что либо регулярно
источник

МС

Михаил Стулов... in unity3d.ru
спасибо
источник

P

Phantom in unity3d.ru
Если нужен пул, можете глянуть мою реализацию

github.com/Fantoom/FObjectPool
источник

МС

Михаил Стулов... in unity3d.ru
Спасибо
источник

И

Императрица распутна... in unity3d.ru
Ребят, подскажите пожалуйста, как эту штуку скрыть?
источник

P

Phantom in unity3d.ru
Императрица распутная
Ребят, подскажите пожалуйста, как эту штуку скрыть?
источник

И

Императрица распутна... in unity3d.ru
Спасибо большое
источник

IK

Ivan Kulibin in unity3d.ru
Artem Brilev
Ну тогда вариант с упрощённой - ручной оптимизацией геометрии в качестве коллизии - это ваше все.
Я тут подумал, а почему бы во фрагментном шейдере не считать смещение по нормали от точки попадания к точке на поверхности? Вроде бы все факторы известны - мировые координаты точки попадания на коллайдере, нормаль к поверхности и координаты точки текстуры.

В шейдере позиция считается штатным образом:
float4 opos = mul(unity_WorldToObject, float4(IN.worldPos, 1.0));

мне кажется, достаточно придвинуть точку попадания на плоскость этой позиции. И тогда разница между поверхностями коллайдера и меша будет несущественной
источник

AB

Artem Brilev in unity3d.ru
Ivan Kulibin
Я тут подумал, а почему бы во фрагментном шейдере не считать смещение по нормали от точки попадания к точке на поверхности? Вроде бы все факторы известны - мировые координаты точки попадания на коллайдере, нормаль к поверхности и координаты точки текстуры.

В шейдере позиция считается штатным образом:
float4 opos = mul(unity_WorldToObject, float4(IN.worldPos, 1.0));

мне кажется, достаточно придвинуть точку попадания на плоскость этой позиции. И тогда разница между поверхностями коллайдера и меша будет несущественной
Ну пробуйте, но кажется - к точности не прибавится.
источник

IK

Ivan Kulibin in unity3d.ru
Artem Brilev
Ну пробуйте, но кажется - к точности не прибавится.
У меня ж простая модель - сфера радиусом R, который отсчитывается от точки на коллайдере. Чем дальше точка на поверхности, тем она "холоднее".
А если коллайдер далеко от поверхности, то разность расстояний сжирает радиус и точки для небольшого R вообще не светятся. Наверное, проекция точки с коллайдера на меш спасёт дело, надеюсь на это :)

Вариант с нарезкой коллайдеров не очень мне подходит, я там наскульптил неровностей, тяжко будет резать :)
источник

AB

Artem Brilev in unity3d.ru
Ivan Kulibin
У меня ж простая модель - сфера радиусом R, который отсчитывается от точки на коллайдере. Чем дальше точка на поверхности, тем она "холоднее".
А если коллайдер далеко от поверхности, то разность расстояний сжирает радиус и точки для небольшого R вообще не светятся. Наверное, проекция точки с коллайдера на меш спасёт дело, надеюсь на это :)

Вариант с нарезкой коллайдеров не очень мне подходит, я там наскульптил неровностей, тяжко будет резать :)
нарезка коллайдеров?
источник

AB

Artem Brilev in unity3d.ru
я говорил, про целую модель до 255 треугольных..
источник

AB

Artem Brilev in unity3d.ru
ну ладно пробуй че.
источник

IK

Ivan Kulibin in unity3d.ru
Artem Brilev
нарезка коллайдеров?
Ага, составной коллайдер.
источник

ES

Egor Sigolaev in unity3d.ru
А как правильно определять, с каким колайдером произошла коллизия? Допустим у меня у персонажа не раздельные части тела, а только одно. И я сделал три колайдера: голова, туловище и ноги. Как правильно при коллизии проверить в какую часть тела попали?
источник

CP

Constantine Prokhoro... in unity3d.ru
Egor Sigolaev
А как правильно определять, с каким колайдером произошла коллизия? Допустим у меня у персонажа не раздельные части тела, а только одно. И я сделал три колайдера: голова, туловище и ноги. Как правильно при коллизии проверить в какую часть тела попали?
Никак по факту. Вещай скрипт определяющий коллизию рядом с нужным коллайдером.
источник

PK

Proker Kusaka in unity3d.ru
Egor Sigolaev
А как правильно определять, с каким колайдером произошла коллизия? Допустим у меня у персонажа не раздельные части тела, а только одно. И я сделал три колайдера: голова, туловище и ноги. Как правильно при коллизии проверить в какую часть тела попали?
Коллайдеры должны быть на разных гейм объектах
источник

ES

Egor Sigolaev in unity3d.ru
Proker Kusaka
Коллайдеры должны быть на разных гейм объектах
Ну это я понял уже. То есть несколько колайдеров на одном обджекте нужны разве что если не удаётся одним охватить нормально обджект?
источник

PK

Proker Kusaka in unity3d.ru
Egor Sigolaev
Ну это я понял уже. То есть несколько колайдеров на одном обджекте нужны разве что если не удаётся одним охватить нормально обджект?
Если только отслеживать коллизию с миром, если их использовать как триггеры, то будут проблемы
источник