#c# #unity3d
#c# #unity3d
Вопрос:
У меня есть RaycastHit hitInfo;
переменная, и я хочу, чтобы объект, пораженный приведением луча, был родительским для основного GameObject, который является источником луча.
hitInfo.collider.gameObject.name.parent = gameObject;
похоже, это не работает.
Комментарии:
1.
hitInfo.collider.gameObject.name.parent
не имеет смысла … вы пробовалиhitInfo.collider.gameObject.transform.parent = gameObject.transform;
?
Ответ №1:
Попробуйте с Transform.parent gameObject.transform.parent
.
Комментарии:
1. Не удается неявно преобразовать тип ‘UnityEngine. GameObject’ to ‘UnityEngine. Преобразование ‘. Я предполагаю, что мне нужно извлечь GameObject из преобразования, поэтому я попытался
hitInfo.collider.gameObject.transform.parent.gameObject = gameObject;
, но я получаю следующую ошибку: свойство или индексатор ‘Component.GameObject’ не может быть назначен — он доступен только для чтения.2. выполните hitInfo.collider.GameObject.transform.parent= GameObject.transform;
3. @RaresRechesan добро пожаловать, не забудьте отметить ответ как правильный, если это так.
Ответ №2:
Родительским является transform
объект. Если передача лучей прошла успешно, выполните следующее:
hit.collider.gameObject.transform.parent = transform;
GameObject, который выполнил ray, будет родительским для объекта, пораженного лучом.