75. CLASE GAMEOBJECT (V)
GetComponentInChildren:
function GetComponentInChildren (type : Type) : Component
Devuelve un componente activo de tipo que le pasamos como parámetro que pueda tener o bien el Gameobject que lanza el mensaje o bien sus hijos. La búsqueda empieza por los hijos.
GetComponents:
function GetComponents (type : Type) : Component[]
Esta función devuelve todos los componentes del tipo Type y los devuelve en forma de array del tipo de componente solicitado.
Esto nos permitiría hacer cosas como las del ejemplo que nos brinda el manual de referencia (no es preciso seguir el ejemplo, es sólo a modo oritentativo):
//Vamos a desconectar la variable spring de todos los HingeJoints que tenga este //gameobject. Primero crearemos un array de tipo HingeJoint y lo almacenamos //en la variable bisagras. var bisagras : HingeJoint[]; //Y colocamos todos los HingeJoint que encontremos en el array. bisagras = gameObject.GetComponents (HingeJoint); //Recorremos ahora en un bucle for in todos los componentes hallados y les //desactivamos la variable spring. for (var joint : HingeJoint in bisagras) { joint.useSpring = false; }
GetComponentsInChildren:
function GetComponentsInChildren (type : Type, includeInactive : boolean = false) : Component[]
Devuelve todos los componentes del tipo pasado como primer parámetro que tenga ese gameobjects y sus hijos. La peculiaridad es que la función incluye un segundo parámetro opcional de tipo booleano que si establecemos en true nos permite recuperar también los componentes inactivos de ese tipo.
SetActiveRecursively:
function SetActiveRecursively (state : boolean) : void
Función que activa o desactiva el estado del gameobject que la invoca y de todos sus hijos, en función de si el bolean que tiene como parámetro está en true o false.
CompareTag:
function CompareTag (tag : String) : boolean
Esta función nos permite averiguar si un determinado gameobjet tiene como tag el string colocado como parámetro de la función. Si lo tiene, la función devuelve true.
SendMessageUpwards:
function SendMessageUpwards (methodName : String, value : object = null, options : SendMessageOptions = SendMessageOptions.RequireReceiver) : void
Esta función llama a una función cuyo nombre pasamos en el parámetro methodName y que se encuentre en cualquier script que tengamos vinculado al gameobject que hace la llamada o en los "padres" de dicho gameobject. Le podemos, si procede, pasar un valor a dicho método (value). El parámetro options es del tipo SendMessageOptions, que es un enum con dos valores = requireReceiver (que necesita respuesta) y dontRequireReceiver, que no la requiere.
Por defecto la función requiere respuesta, lo cual quiere decir que si se le pasa un argumento a la función receptora y ésta no precisa ninguno, imprimirá un mensaje de error. Si no lo requiriera (dontRequireReceiver), puede optar por ignorar dicho argumento sin más.
Vamos a intentar aclararlo un poco más con un ejemplo. Previamente eliminemos el script que tenemos vinculado en PortaScripts. Acto seguido, editamos miPrimerScript y lo dejamos como sigue:
function DameColor (tono : Color) { renderer.material.color= tono; } DameColor(Color.black);
La función no requiere más explicación. La arrastramos al cubo y al darle al play éste se torna de color negro.
Ahora vamos a editar el script miSegundoScript, que si hemos seguido las lecciones debemos tener en Proyecto. (y si no creamos uno, tampoco nos volvamos locos). Tecleamos:
function OnMouseEnter() { gameObject.SendMessageUpwards ("DameColor", Color.cyan); }
Arrastramos tras salvar este script también al cubo. De esta manera y a través de SendMessageUpwards podemos acceder a la función DameColor de miPrimersScript y usarla a nuestro gusto. En este caso nos limitamos a cambiar el color del cubo al pasar el ratón por éste, pero obviamente y en caso de gameobjects con un montón de scripts vinculados (que a eso llegaremos) esta posibilidad de acceder desde un scripts a las funciones que hay en otros es toda una ventaja.
SendMessage:
function SendMessage (methodName : String, value : object = null, options : SendMessageOptions = SendMessageOptions.RequireReceiver) : void
Igual que la función anterior, con la diferencia de que en esta sólo podemos llamar a funciones que estén en scripts vinculados al gameobject, pero no en sus ancestros.
BroadcastMessage:
function BroadcastMessage (methodName : String, parameter : object = null, options : SendMessageOptions = SendMessageOptions.RequireReceiver) : void
Llama a un método con nombre methodName que esté en cualquier script vinculado a ese game object o a cualquiera de sus hijos, a diferencia de las funciones anteriores.
Con la tecnología de Blogger.
BUSCADOR
PÁSATE POR EL FORO
API DE UNITY
TEMAS
- 00_INTRODUCCION (3)
- 01_CLASE OBJECT (3)
- 02_ESTRUCTURA VECTOR3 (4)
- 03_CLASE TRANSFORM (7)
- 04_CLASE RIGIDBODY (8)
- 05_CLASE COLLIDER (2)
- 06_CLASE MESHCOLLIDER (1)
- 07_CLASE CHARACTERCONTROLLER (3)
- 08_CLASE RENDERER (2)
- 09_CLASE MESHFILTER (1)
- 10_CLASE JOINT (2)
- 11_CLASE HINGEJOINT (2)
- 12_CLASE SPRINGJOINT (1)
- 13_CLASE CHARACTERJOINT (1)
- 14_CLASE BEHAVIOUR (1)
- 15_CLASE MONOBEHAVIOUR (9)
- 16_CLASE CAMERA (6)
- 17_CLASE LIGHT (3)
- 18_CLASE MATERIAL (3)
- 19_CLASE CUBEMAP (1)
- 20_CLASE RENDERTEXTURE (3)
- 21_CLASE PARTICLEEMITTER (3)
- 22_CLASE MESH (2)
- 23_CLASE GAMEOBJECT (6)
- 24_CLASE SHADER (1)
- 25_CLASE PHYSICMATERIAL (1)
- 26_CLASE COMPONENT (1)
- 27_CLASE GUIELEMENT (1)
- 28_CLASE GUITEXT (2)
- 29_CLASE GUITEXTURE (1)
- 30_CLASE GUI (8)
- 31_CLASE GUILAYOUT (4)
- 32_CLASE TEXTURE (1)
- 33_CLASE TEXTURE2D (2)
- 34_CLASE INPUT (4)
- 35_ESTRUCTURA BOUNDS (1)
- 36_CLASE COLLISION (1)
- 37_CLASE CONTROLLERCOLLIDERHIT (1)
- 38_CLASE DEBUG (1)
- 39_CLASE EVENT (3)
- 40_CLASE GIZMOS (1)
- 41_CLASE LIGHTMAPSETTINGS (1)
- 42_ESTRUCTURA MATHF (3)
- 43_CLASE PHYSICS (2)
- 44_ESTRUCTURA QUATERNION (1)
- 45_CLASE RANDOM (1)
- 46_ESTRUCTURA RAY (1)
- 47_ESTRUCTURA RAYCASTHIT (1)
- 48_ESTRUCTURA RECT (1)
- 49_CLASE RENDERSETTINGS (1)
- 50_CLASE SCREEN (1)
- 51_CLASE TIME (1)
- 52. CLASE YIELDINSTRUCTION (1)
- MONOGRAFICOS (2)
ENTRADAS
-
▼
2011
(127)
-
▼
octubre
(121)
- 116. ESTRUCTURA RAYCASTHIT
- 115. ESTRUCTURA RAY
- 114. CLASE RANDOM
- 113. ESTRUCTURA QUATERNION
- 112. CLASE PHYSICS (y II)
- 111. CLASE PHYSICS (I)
- 110. ESTRUCTURA MATHF (y III)
- 109. ESTRUCTURA MATHF (II)
- 108. ESTRUCTURA MATHF (I)
- 107. CLASE LIGHTMAPSETTINGS
- 106. CLASE GIZMOS
- 105. CLASE EVENT (y III)
- 104. CLASE EVENT (II)
- 107. CLASE EVENT (I)
- 106. CLASE DEBUG
- 105. CLASE CONTROLLERCOLLIDERHIT
- 104. CLASE COLLISION
- 103. ESTRUCTURA BOUNDS
- 102. CLASE INPUT (y IV)
- 101. CLASE INPUT (III)
- 100. CLASE INPUT (II)
- 99. CLASE INPUT (I)
- 98. CLASE TEXTURE2D (y II)
- 97. CLASE TEXTURE2D (I)
- 96. CLASE TEXTURE
- 95. CLASE GUILAYOUT (y IV)
- 94. CLASE GUILAYOUT (III)
- 93. CLASE GUILAYOUT (II)
- 92. CLASE GUILAYOUT (I)
- 91. CLASE GUI (y VIII)
- 90. CLASE GUI ( VII)
- 89. CLASE GUI (VI)
- 88. CLASE GUI (V)
- 87. CLASE GUI (IV)
- 86. CLASE GUI (III)
- 85. CLASE GUI ( II)
- 84. CLASE GUI (I)
- 83. CLASE GUITEXTURE
- 82. CLASE GUITEXT (y II)
- 81. CLASE GUITEXT (I)
- 80. CLASE GUIELEMENT
- 79. CLASE COMPONENT
- 78. CLASE PHYSICMATERIAL
- 77. CLASE SHADER
- 76. CLASE GAMEOBJECT (y VI)
- 75. CLASE GAMEOBJECT (V)
- 74. CLASE GAMEOBJECT (IV)
- 73. CLASE GAMEOBJECT (III)
- 72. CLASE GAMEOBJECT (II)
- 71. CLASE GAMEOBJECT (I)
- 70. CLASE MESH (y II)
- 69. CLASE MESH (I)
- 68. CLASE PARTICLEEMITTER (y III)
- 67. CLASE PARTICLEEMITTER (II)
- 66. CLASE PARTICLEEMITTER (I)
- 65. CLASE RENDERTEXTURE (y III)
- 64. CLASE RENDERTEXTURE (II)
- 63. CLASE RENDERTEXTURE (I)
- 62. CLASE CUBEMAP
- 61. CLASE MATERIAL (y III)
- 60. CLASE MATERIAL (II)
- 59. CLASE MATERIAL (I)
- 58. CLASE LIGHT (y III)
- 57. CLASE LIGHT (II)
- 56. CLASE LIGHT (I)
- 55. CLASE CAMERA (VI)
- 54. CLASE CAMERA (V)
- 53. CLASE CAMERA (IV)
- 52. CLASE CAMERA (III)
- 51. CLASE CAMERA (II)
- 50. CLASE CAMERA (I)
- 49. CLASE MONOBEHAVIOUR (y IX)
- 48. CLASE MONOBEHAVIOUR (VIII)
- 47. CLASE MONOBEHAVIOUR (VII)
- 46. CLASE MONOBEHAVIOUR (VI)
- 45. CLASE MONOBEHAVIOUR (V)
- 44. CLASE MONOBEHAVIOUR (IV)
- 43. CLASE MONOBEHAVIOUR (III)
- 42. CLASE MONOBEHAVIOUR (II)
- 41. CLASE MONOBEHAVIOUR (I)
- 40. CLASE BEHAVIOUR
- 39. CLASE CHARACTERJOINT
- 38. CLASE SPRINGJOINT
- 37. CLASE HINGEJOINT (y II)
- 36. CLASE HINGEJOINT (I)
- 35. CLASE JOINT (y II)
- 34. CLASE JOINT (I)
- 33. CLASE MESHFILTER
- 32. CLASE RENDERER (y II)
- 31. CLASE RENDERER (I)
- 30. CLASE CHARACTERCONTROLLER (y III)
- 29. CLASE CHARACTERCONTROLLER (II)
- 28. CLASE CHARACTERCONTROLLER (I)
- 27. CLASE MESHCOLLIDER
- 26. CLASE COLLIDER (II)
- 25. CLASE COLLIDER (I)
- 24. CLASE RIGIDBODY (y VIII)
- 23. CLASE RIGIDBODY (VII)
- 22. CLASE RIGIDBODY (VI)
- 21. CLASE RIGIDBODY (V)
-
▼
octubre
(121)