{"id":19919,"date":"2014-04-03T16:54:45","date_gmt":"2014-04-03T14:54:45","guid":{"rendered":"https:\/\/www.modelical.com\/como-hacer-un-juego-simple-en-unity\/"},"modified":"2024-10-18T11:31:42","modified_gmt":"2024-10-18T09:31:42","slug":"como-hacer-un-juego-simple-en-unity","status":"publish","type":"post","link":"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/","title":{"rendered":"\u00bfC\u00f3mo hacer un juego simple en Unity?"},"content":{"rendered":"<p>Uno puede pensar que comenzar a implementar un juego es un proceso muy complejo y hay que tener conocimientos altos de programaci\u00f3n. Lo cierto es que no estar\u00edas equivocado, sin embargo voy a demostrar con un ejemplo que tambi\u00e9n es posible hacer cosas sencillas y con resultados decentes en muy poco tiempo usando Unity.<\/p>\n<p>&nbsp;<\/p>\n<p>Movimiento: flechas de direcci\u00f3n.<\/p>\n<p>Disparar: tecla espaciadora.<\/p>\n<p>Comenzar de nuevo: tecla escape.<\/p>\n<h3>Paso 1 \u2013 La escena<\/h3>\n<p>Como no queremos empezar la casa por el tejado, lo primero que debemos hacer es copiar al directorio Assets del nuevo proyecto de Unity los modelos que vamos a necesitar: la sala, el jugador, etc. A continuaci\u00f3n arrastramos dichos modelos que tenemos en la ventana Project a la ventana Hierarchy para a\u00f1adirlos a la escena. Creamos tambi\u00e9n las luces y colocamos en su sitio todos los objetos. Ya tenemos nuestro escenario, as\u00ed de f\u00e1cil!<\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-18315 size-full\" src=\"https:\/\/www.modelical.com\/wp-content\/uploads\/2015\/11\/post-e1729243888380.png\" alt=\"post\" width=\"800\" height=\"464\" \/><\/p>\n<h3>Paso 2 \u2013 Movimiento del jugador<\/h3>\n<p>Mover un objeto en Unity es tambi\u00e9n sencillo gracias a la funci\u00f3n Translate.<\/p>\n<pre>transform.Translate(Vector3.forward * trasSpeed * Time.deltaTime);\r\n<\/pre>\n<p>Con esta instrucci\u00f3n podemos indicar al objeto que tiene asignado el script (en este caso el jugador) que se mueva en la direcci\u00f3n frontal Vector3.forward una cantidad indicada en la variable trasSpeed. Adem\u00e1s multiplicamos por Time.deltaTime para transformar de metros\/frame a metros\/segundo, ya que el tiempo en renderizar un frame puede ser variable y el movimiento no ser\u00eda uniforme.<\/p>\n<p>Adem\u00e1s queremos girar el personaje, y para ello usamos Rotate.<\/p>\n<pre>transform.Rotate(Vector3.up, rotSpeed * Time.deltaTime);\r\n<\/pre>\n<p>Esta funci\u00f3n rota alrededor del vector dado como primer par\u00e1metro (la vertical en este caso) una cantidad indicada en rotSpeed y una vez m\u00e1s multiplicada por el paso de tiempo.<\/p>\n<p>Al capturar la tecla deseada trasladamos o rotamos al personaje en el sentido deseado. Por ejemplo:<\/p>\n<pre>if(Input.GetKey(KeyCode.UpArrow))\r\n{\r\n\ttransform.Translate(Vector3.forward * trasSpeed * Time.deltaTime);\r\n}\r\n<\/pre>\n<p>Ya podemos dar agradables paseos por nuestra escena \ud83d\ude42<\/p>\n<h3>Paso 3 \u2013 F\u00edsicas<\/h3>\n<p>Simplemente a\u00f1adiendo al personaje el componente Rigidbody podemos hacer que se comporte como un objeto f\u00edsico, y por lo tanto caiga por acci\u00f3n de la gravedad y rebote contra otros objetos. Sin embargo solo detectar\u00e1 un choque con otro objeto si ambos tienen asignado un componente Collider, as\u00ed que debemos asignar un Collider al personaje, suelo y paredes.<\/p>\n<p>Nuestro personaje es un tanto especial ya que nos interesa que otros objetos reboten cuando se choquen contra \u00e9l, pero si ocurre lo contrario y el jugador choca contra un objeto se caer\u00eda al suelo y rodar\u00eda como un ladrillo. Para evitar ese comportamiento activamos la opci\u00f3n de isKinematic en el rigidbody del personaje.<\/p>\n<h3>Paso 4 \u2013 Tratamiento de colisiones<\/h3>\n<p>\u00bfQu\u00e9 pasa cuando el personaje choca contra la pared? Al activar isKinematic ya no le afectan las f\u00edsicas as\u00ed que debemos implementar nosotros la reacci\u00f3n que queremos que se produzca en el choque.<\/p>\n<p>Para ello activamos la opci\u00f3n isTrigger en los Colliders de las paredes de forma que lancen una se\u00f1al cuando se produzca una colisi\u00f3n sobre ellas, y adem\u00e1s debemos asignarles un script para implementar la respuesta a dicha se\u00f1al. La respuesta se especifica en la funci\u00f3n definida como <i>OnTriggerEnter(other:Collider).<\/i><\/p>\n<p>Si el objeto contra el que choca (dado en la variable other) es kinematic entonces no podemos aplicar f\u00edsicas sobre \u00e9l as\u00ed que simplemente lo trasladaremos con la funci\u00f3n Translate que ya vimos antes. Si queremos ir m\u00e1s all\u00e1 y hacer el rebote m\u00e1s realista podemos suavizar el movimiento utilizando la funci\u00f3n <i>Vector3.Lerp(ini,fin,t)<\/i> que interpola linealmente el movimiento entre la posici\u00f3n <i>ini<\/i> y la posici\u00f3n <i>fin<\/i>. Si t=0 la funci\u00f3n devuelve ini donde se encuentra en el momento del choque, si t=1 devuelve fin donde queremos que acabe el movimiento alej\u00e1ndose de la pared, si t=0.5 nos devuelve la posici\u00f3n intermedia y as\u00ed con cualquier valor entre 0 y 1.<\/p>\n<p>En el caso de que el objeto que ha chocado contra la pared no sea kinematic entonces s\u00ed podemos aplicar f\u00edsicas y por tanto usaremos la funci\u00f3n AddForce.<\/p>\n<pre>other.rigidbody.AddForce(-transform.up*force, ForceMode.Acceleration);\r\n<\/pre>\n<p>Esta funci\u00f3n aplica una aceleraci\u00f3n en este caso con la direcci\u00f3n y magnitud indicada en el primer par\u00e1metro. Tambi\u00e9n podr\u00edamos utilizar <i>ForceMode.Force <\/i>si nos interesa tener en cuenta la masa del objeto. En mi caso el vector &#8211;<i>transform.up <\/i>apunta hacia dentro de la sala pero eso depende en cada caso seg\u00fan c\u00f3mo tengamos rotado el objeto.<\/p>\n<p>Adem\u00e1s, para que el rebote sea m\u00e1s realista podemos reflejar la velocidad que ten\u00eda el objeto no kinematic antes de chocar contra la pared respecto a la normal de la pared.<\/p>\n<pre>Vector3.Reflect(other.rigidbody.velocity, -transform.up);\r\nVector3.Reflect(other.rigidbody.angularVelocity, -transform.up);\r\n<\/pre>\n<h3>Paso 5 \u2013 Instanciar<\/h3>\n<p>Ahora que nuestro personaje ya se comporta correctamente podemos centrarnos en lo divertido, \u00a1disparar pelotas!<\/p>\n<p>Para ello debemos primero crear una esfera y asignarle los componentes Collider y Rigidbody no kinematic. Como no queremos tenerla en la escena inicialmente sino que aparezca al disparar, arrastramos la esfera a la ventana Project para convertirla en lo que se llama un objeto Prefab, y a continuaci\u00f3n asignamos el Prefab al script del jugador que va a ser quien dispare.<\/p>\n<p>En el script simplemente debemos a\u00f1adir que cuando se pulse la tecla deseada cree una instancia de esa esfera usando la funci\u00f3n Instantiate, y adem\u00e1s aplicamos una fuerza hacia delante como vimos con la funci\u00f3n AddForce.<\/p>\n<pre>Instantiate(pelota, transform.position, Quaternion.identity );\r\n<\/pre>\n<p>Esta funci\u00f3n solo necesita el prefab de la pelota as\u00ed como posici\u00f3n y rotaci\u00f3n donde se va a crear en la escena.<\/p>\n<h3>Paso 6 \u2013 Destruir<\/h3>\n<p>Por \u00faltimo si hoy tenemos un d\u00eda malo y queremos romper algo bonito, podemos hacer que algunos objetos se destruyan cuando se les dispare.<\/p>\n<p>Solo necesitamos asignar a esos objetos un Collider activando su opci\u00f3n isTrigger, y asignarles un nuevo script con la funci\u00f3n <i>OnTriggerEnter(other:Collider) <\/i>tal y como hicimos anteriormente. La implementaci\u00f3n de esa funci\u00f3n se basa en comprobar si el objeto contra el que se ha producido la colisi\u00f3n es una pelota, y si es as\u00ed destruirlo. Para identificar un objeto se utiliza la propiedad <i>other.tag<\/i> que antes debemos asignar en la ventana Inspector del objeto, y para destruirlo se utiliza Destroy.<\/p>\n<pre>Destroy(gameObject);\r\n<\/pre>\n<p>Para dar m\u00e1s emoci\u00f3n al juego podemos crear efectos especiales importando el paquete de assets llamado Particles. De esta forma podemos instanciar un objeto fuego igual que hicimos con la pelota.<\/p>\n<h3>Conclusi\u00f3n<\/h3>\n<p>Unity es un motor de videojuegos con una curva de aprendizaje muy suave. Es muy sencillo comenzar a crear un juego b\u00e1sico como el que hemos visto, pero tambi\u00e9n nos da la posibilidad de crear aplicaciones complejas y con un buen acabado una vez conocemos a fondo la herramienta.<\/p>\n<p><a href=\"https:\/\/www.modelical.com\/wp-content\/uploads\/2014\/04\/Player.js\">Player<\/a><\/p>\n<pre class=\"lang:js decode:true\" title=\"Player.js\">#pragma strict\r\n\r\nvar trasSpeed:float = 10;\r\nvar rotSpeed:float = 2;\r\n\r\nvar pelota:GameObject;\r\nvar disparoSpeed:float = 200;\r\n\r\nfunction Start () {\r\n\r\n}\r\n\r\nfunction Update () {\r\n\r\n\tif(Input.GetKey(KeyCode.UpArrow))\r\n\t{\r\n\t\ttransform.Translate(Vector3.forward * trasSpeed * Time.deltaTime);\r\n\t}\r\n\telse if(Input.GetKey(KeyCode.DownArrow))\r\n\t{\r\n\t\ttransform.Translate(-Vector3.forward * trasSpeed * Time.deltaTime);\r\n\t}\r\n\r\n\tif(Input.GetKey(KeyCode.LeftArrow))\r\n\t{\r\n\t\ttransform.Rotate(Vector3.up, -rotSpeed * Time.deltaTime);\r\n\t}\r\n\telse if(Input.GetKey(KeyCode.RightArrow))\r\n\t{\r\n\t\ttransform.Rotate(Vector3.up, rotSpeed * Time.deltaTime);\r\n\t}\r\n\r\n\tif(Input.GetKey(KeyCode.Space))\r\n\t{\r\n\t\tvar clon:GameObject = Instantiate(pelota, transform.position + transform.forward - transform.right*0.1, Quaternion.identity );\r\n\t\tclon.rigidbody.AddForce(transform.forward*disparoSpeed, ForceMode.Acceleration);\r\n\t\tDestroy(clon,60);\r\n\t}\r\n\r\n\tif(Input.GetKey(KeyCode.Escape))\r\n\t{\r\n\t\tApplication.LoadLevel(0);\r\n\t}\r\n}<\/pre>\n<p><a href=\"https:\/\/www.modelical.com\/wp-content\/uploads\/2014\/04\/Player.js\">Pared<\/a><\/p>\n<pre class=\"lang:js decode:true\" title=\"Pared.js\">#pragma strict\r\n\r\nvar force:float = 100;\r\nvar speed:float = 0.5;\r\n\r\nprivate var lerp:boolean=false;\r\nprivate var ini:Vector3=Vector3.zero;\r\nprivate var fin:Vector3=Vector3.zero;\r\nprivate var t:float=0;\/\/0..1\r\nprivate var obj:Transform;\r\n\r\nfunction OnTriggerEnter(other:Collider)\r\n{\r\n\tif(other.rigidbody.isKinematic)\r\n\t{\r\n\t\t\/\/other.transform.Translate(-Vector3.up*speed);\r\n\t\tif(!lerp)\r\n\t\t{\r\n\t\t\tlerp=true;\r\n\t\t\tt=0;\r\n\t\t\tobj=other.transform;\r\n\t\t\tini=obj.position;\r\n\t\t\tfin=obj.position - transform.up*speed;\r\n\t\t}\r\n\t}\r\n\telse\r\n\t{\r\n\t\tother.rigidbody.velocity = Vector3.Reflect(other.rigidbody.velocity, -transform.up);\r\n\t\tother.rigidbody.angularVelocity = Vector3.Reflect(other.rigidbody.angularVelocity, -transform.up);\r\n\t\tother.rigidbody.AddForce(-transform.up*force, ForceMode.Acceleration);\r\n\t}\r\n}\r\n\r\nfunction Update()\r\n{\r\n\tif(lerp)\r\n\t{\r\n\t\tobj.transform.position = Vector3.Lerp(ini,fin,t);\r\n\t\tt+=0.1;\r\n\t\tif(t&gt;=1) lerp=false;\r\n\t}\r\n}<\/pre>\n<p><a href=\"https:\/\/www.modelical.com\/wp-content\/uploads\/2014\/04\/Player.js\">Objetivo<\/a><\/p>\n<pre class=\"lang:js decode:true\" title=\"Objetivo\">#pragma strict\r\n\r\nvar fuego:GameObject;\r\nvar fuego2:GameObject;\r\n\r\nfunction OnTriggerEnter(other:Collider)\r\n{\r\n\tif(other.tag==\"Pelota\")\r\n\t{\r\n\t\tDestroy(gameObject);\r\n\r\n\t\tvar clon:GameObject = Instantiate(fuego,transform.position, Quaternion.identity);\r\n\t\tDestroy(clon, 5);\r\n\r\n\t\tvar clon2:GameObject = Instantiate(fuego2,transform.position, Quaternion.identity);\r\n\t\tDestroy(clon2, 30);\r\n\t}\r\n}<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Uno puede pensar que comenzar a implementar un juego es un proceso muy complejo y hay que tener conocimientos altos de programaci\u00f3n. Lo cierto es que no estar\u00edas equivocado, sin embargo voy a demostrar con un ejemplo que tambi\u00e9n es posible hacer cosas sencillas y con resultados decentes en muy poco tiempo usando Unity. &nbsp; [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":27185,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[711],"tags":[762],"class_list":["post-19919","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-noticias","tag-tecnologia-unreal"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\u00bfC\u00f3mo hacer un juego simple en Unity? - Modelical<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u00bfC\u00f3mo hacer un juego simple en Unity? - Modelical\" \/>\n<meta property=\"og:description\" content=\"Uno puede pensar que comenzar a implementar un juego es un proceso muy complejo y hay que tener conocimientos altos de programaci\u00f3n. Lo cierto es que no estar\u00edas equivocado, sin embargo voy a demostrar con un ejemplo que tambi\u00e9n es posible hacer cosas sencillas y con resultados decentes en muy poco tiempo usando Unity. &nbsp; [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/\" \/>\n<meta property=\"og:site_name\" content=\"Modelical\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Modelical\/\" \/>\n<meta property=\"article:published_time\" content=\"2014-04-03T14:54:45+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-10-18T09:31:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.modelical.com\/wp-content\/uploads\/2014\/04\/JuegoEnUnity-400x250-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"400\" \/>\n\t<meta property=\"og:image:height\" content=\"250\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Juan Manuel Perez\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@modelical\" \/>\n<meta name=\"twitter:site\" content=\"@modelical\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Juan Manuel Perez\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/como-hacer-un-juego-simple-en-unity\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/como-hacer-un-juego-simple-en-unity\\\/\"},\"author\":{\"name\":\"Juan Manuel Perez\",\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/#\\\/schema\\\/person\\\/c9c2467429fc6feb888f8bd2300b70de\"},\"headline\":\"\u00bfC\u00f3mo hacer un juego simple en Unity?\",\"datePublished\":\"2014-04-03T14:54:45+00:00\",\"dateModified\":\"2024-10-18T09:31:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/como-hacer-un-juego-simple-en-unity\\\/\"},\"wordCount\":1130,\"image\":{\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/como-hacer-un-juego-simple-en-unity\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.modelical.com\\\/wp-content\\\/uploads\\\/2014\\\/04\\\/JuegoEnUnity-400x250-1.jpg\",\"keywords\":[\"Tec Unreal\"],\"articleSection\":[\"Noticias y eventos\"],\"inLanguage\":\"es\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/como-hacer-un-juego-simple-en-unity\\\/\",\"url\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/como-hacer-un-juego-simple-en-unity\\\/\",\"name\":\"\u00bfC\u00f3mo hacer un juego simple en Unity? - Modelical\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/como-hacer-un-juego-simple-en-unity\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/como-hacer-un-juego-simple-en-unity\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.modelical.com\\\/wp-content\\\/uploads\\\/2014\\\/04\\\/JuegoEnUnity-400x250-1.jpg\",\"datePublished\":\"2014-04-03T14:54:45+00:00\",\"dateModified\":\"2024-10-18T09:31:42+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/#\\\/schema\\\/person\\\/c9c2467429fc6feb888f8bd2300b70de\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.modelical.com\\\/es\\\/como-hacer-un-juego-simple-en-unity\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/como-hacer-un-juego-simple-en-unity\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.modelical.com\\\/wp-content\\\/uploads\\\/2014\\\/04\\\/JuegoEnUnity-400x250-1.jpg\",\"contentUrl\":\"https:\\\/\\\/www.modelical.com\\\/wp-content\\\/uploads\\\/2014\\\/04\\\/JuegoEnUnity-400x250-1.jpg\",\"width\":400,\"height\":250},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/#website\",\"url\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/\",\"name\":\"Modelical\",\"description\":\"We build information\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/#\\\/schema\\\/person\\\/c9c2467429fc6feb888f8bd2300b70de\",\"name\":\"Juan Manuel Perez\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/945465eff02d16d8d02a0853f9d484ad26660cf20c44978db2c7bae51957c5d0?s=96&d=initials&r=g&initials=ju\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/945465eff02d16d8d02a0853f9d484ad26660cf20c44978db2c7bae51957c5d0?s=96&d=initials&r=g&initials=ju\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/945465eff02d16d8d02a0853f9d484ad26660cf20c44978db2c7bae51957c5d0?s=96&d=initials&r=g&initials=ju\",\"caption\":\"Juan Manuel Perez\"},\"url\":\"https:\\\/\\\/www.modelical.com\\\/es\\\/author\\\/juanma\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u00bfC\u00f3mo hacer un juego simple en Unity? - Modelical","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/","og_locale":"es_ES","og_type":"article","og_title":"\u00bfC\u00f3mo hacer un juego simple en Unity? - Modelical","og_description":"Uno puede pensar que comenzar a implementar un juego es un proceso muy complejo y hay que tener conocimientos altos de programaci\u00f3n. Lo cierto es que no estar\u00edas equivocado, sin embargo voy a demostrar con un ejemplo que tambi\u00e9n es posible hacer cosas sencillas y con resultados decentes en muy poco tiempo usando Unity. &nbsp; [&hellip;]","og_url":"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/","og_site_name":"Modelical","article_publisher":"https:\/\/www.facebook.com\/Modelical\/","article_published_time":"2014-04-03T14:54:45+00:00","article_modified_time":"2024-10-18T09:31:42+00:00","og_image":[{"width":400,"height":250,"url":"https:\/\/www.modelical.com\/wp-content\/uploads\/2014\/04\/JuegoEnUnity-400x250-1.jpg","type":"image\/jpeg"}],"author":"Juan Manuel Perez","twitter_card":"summary_large_image","twitter_creator":"@modelical","twitter_site":"@modelical","twitter_misc":{"Escrito por":"Juan Manuel Perez","Tiempo de lectura":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/#article","isPartOf":{"@id":"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/"},"author":{"name":"Juan Manuel Perez","@id":"https:\/\/www.modelical.com\/es\/#\/schema\/person\/c9c2467429fc6feb888f8bd2300b70de"},"headline":"\u00bfC\u00f3mo hacer un juego simple en Unity?","datePublished":"2014-04-03T14:54:45+00:00","dateModified":"2024-10-18T09:31:42+00:00","mainEntityOfPage":{"@id":"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/"},"wordCount":1130,"image":{"@id":"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/#primaryimage"},"thumbnailUrl":"https:\/\/www.modelical.com\/wp-content\/uploads\/2014\/04\/JuegoEnUnity-400x250-1.jpg","keywords":["Tec Unreal"],"articleSection":["Noticias y eventos"],"inLanguage":"es"},{"@type":"WebPage","@id":"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/","url":"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/","name":"\u00bfC\u00f3mo hacer un juego simple en Unity? - Modelical","isPartOf":{"@id":"https:\/\/www.modelical.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/#primaryimage"},"image":{"@id":"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/#primaryimage"},"thumbnailUrl":"https:\/\/www.modelical.com\/wp-content\/uploads\/2014\/04\/JuegoEnUnity-400x250-1.jpg","datePublished":"2014-04-03T14:54:45+00:00","dateModified":"2024-10-18T09:31:42+00:00","author":{"@id":"https:\/\/www.modelical.com\/es\/#\/schema\/person\/c9c2467429fc6feb888f8bd2300b70de"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.modelical.com\/es\/como-hacer-un-juego-simple-en-unity\/#primaryimage","url":"https:\/\/www.modelical.com\/wp-content\/uploads\/2014\/04\/JuegoEnUnity-400x250-1.jpg","contentUrl":"https:\/\/www.modelical.com\/wp-content\/uploads\/2014\/04\/JuegoEnUnity-400x250-1.jpg","width":400,"height":250},{"@type":"WebSite","@id":"https:\/\/www.modelical.com\/es\/#website","url":"https:\/\/www.modelical.com\/es\/","name":"Modelical","description":"We build information","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.modelical.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/www.modelical.com\/es\/#\/schema\/person\/c9c2467429fc6feb888f8bd2300b70de","name":"Juan Manuel Perez","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/945465eff02d16d8d02a0853f9d484ad26660cf20c44978db2c7bae51957c5d0?s=96&d=initials&r=g&initials=ju","url":"https:\/\/secure.gravatar.com\/avatar\/945465eff02d16d8d02a0853f9d484ad26660cf20c44978db2c7bae51957c5d0?s=96&d=initials&r=g&initials=ju","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/945465eff02d16d8d02a0853f9d484ad26660cf20c44978db2c7bae51957c5d0?s=96&d=initials&r=g&initials=ju","caption":"Juan Manuel Perez"},"url":"https:\/\/www.modelical.com\/es\/author\/juanma\/"}]}},"_links":{"self":[{"href":"https:\/\/www.modelical.com\/es\/wp-json\/wp\/v2\/posts\/19919","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.modelical.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.modelical.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.modelical.com\/es\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.modelical.com\/es\/wp-json\/wp\/v2\/comments?post=19919"}],"version-history":[{"count":0,"href":"https:\/\/www.modelical.com\/es\/wp-json\/wp\/v2\/posts\/19919\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.modelical.com\/es\/wp-json\/wp\/v2\/media\/27185"}],"wp:attachment":[{"href":"https:\/\/www.modelical.com\/es\/wp-json\/wp\/v2\/media?parent=19919"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.modelical.com\/es\/wp-json\/wp\/v2\/categories?post=19919"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.modelical.com\/es\/wp-json\/wp\/v2\/tags?post=19919"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}