SceneKit: Сделать дочернюю сферу видимой внутри полупрозрачной родительской сферы?
В SceneKit, скажем, вы хотите встроить узел Child в полупрозрачный узел Parent, так что Parent действует как "клетка", которую вы можете видеть сквозь и просматривать Child.
Конкретно, скажем, что Parent является SCNSphere с радиусом 2. Child является SCNSphere с радиусом 1 и является дочерним узлом Parent.
Ребенка не видно, потому что он внутри Родителя. Установка непрозрачности Parent на 0,3 или что-то полупрозрачное также влияет на непрозрачность Child, что позволяет вам видеть Child, но теперь Child больше не является полностью непрозрачным.
Как вы можете сделать Child полностью непрозрачным, но все же видимым через Parent?
Одним из вариантов является дочерний узел, который больше не является дочерним по отношению к родительскому элементу, и вместо этого вручную вычисляется положение, необходимое для центрирования дочернего элемента "внутри" родительского элемента. Но это требует перемещения дочернего элемента вручную каждый раз, когда перемещается родительский элемент, тогда как когда дочерний элемент уже является дочерним узлом родительского элемента, это перемещение происходит автоматически.
Есть ли лучший подход?
1 ответ
Вы можете установить прозрачность родительского материала на 0,3 вместо изменения прозрачности узла. Это не будет наследоваться дочерними узлами.