Unity commence à partir du nœud spécifié, parcourt tous les nœuds enfants sous le nœud et les enregistre dans la liste.

À partir du nœud spécifié, parcourez tous les nœuds enfants sous le nœud et enregistrez-les dans la liste.

List<GameObject> GetChildObjects (parent GameObject)
{ List<GameObject> childList = new List<GameObject>(); for (int i = 0; i < parent.transform.childCount; i++) { childList.Add(parent.transform.GetChild(i).gameObject); if (parent.transform.GetChild(i).childCount > 0) { childList.AddRange(GetChildObjects(parent.transform.GetChild(i).gameObject)); } } renvoie la liste des enfants ; }












Obtenez l'objet le plus proche via une coordonnée de point

GameObject GetNearestObject (Vector3 point)
{ GameObject le plus procheObject = null ; float closeDistance = Mathf.Infinity; foreach (GameObject obj in allObjects) { float distance = Vector3.Distance (obj.transform.position, point); si (distance <Distance la plus proche) { Distance la plus proche = distance ; Objet le plus proche = obj; } } renvoie l'Objet le plus proche ; }














Parmi eux, allObjects fait référence à la liste de tous les objets de la scène.

2e200195f97b1624c978cef41e0b72fe.jpeg

Je suppose que tu aimes

Origine blog.csdn.net/shguxudong11/article/details/129441832
conseillé
Classement