jueves, 21 de abril de 2016

UnrealEngine para desarrolladores de Unity3D II: De GameObject a Actor

Aquí la siguiente entrega de Unreal Engine, en esta aprenderemos las similitudes de los Actors en cuanto a los GameObjects de Unity3D.

En primer lugar para empezar este tutorial, aconsejo echar un vistazo al tutorial previo en el cual explico las diferencias entre los dos entornos de desarrollo.
¡De Unity3D a UnrealEngine!
En Unity3D, usamos "GameObjects" como objetos en la escena, estos objetos son tanto lo que vemos, como a su vez, sus componentes son lo que hacen que el juego se mueva, se escuche y en definitiva que formen todos lo que entenderíamos como objetos, personajes, escenario, etc...

En UnrealEngine, a estos objetos les llamaremos "Actors", Aquí podremos ver un vídeo de como añadir un "Actor" a nuestra escena.


Tu puedes construir un juego con Actors vacíos e ir rellenandolos como si fuese un GameObject vacío y añadirle tus propios componentes, pero UnrealEngine incluye varios tipos especiales de actors con ciertas funcionalidades prehechas, al igual que Unity3D trae ciertos objetos 3D, diferentes tipos de luces, etc, UnrealEngine trae muchos mas Actors por defecto con mas utilidades que GameObjects Unity3D.

Pero si lo prefieres, siempre puedes usar un Actor vacío e ir añadiendo componentes o bien uno prehecho e ir modificándolos y añadiendo o quitando componentes según necesites al igual que en Unity3D.

A diferencia de Unity3D, y como ventaja en UnrealEngine, disponemos de diferentes Actors con ciertos "problemas" ya resueltos, así como Pawn, para jugadores o inteligencias artificiales, Character para un personaje animado, Player Start para posicionar el personaje cuando el juego comience y muchos otros Actors que nos ahorrarán tiempo de programación al estar ya prefabricados.



Todos estos objetos los podemos encontrar en la misma  pestaña y además disponemos de un buscador como podemos ver en la imagen para facilitarnos encontrar estos Actors.

martes, 26 de enero de 2016

UnrealEngine para desarrolladores de Unity3D: Comparando IDE

Al fín, después de bastante tiempo, voy a añadir una serie de tutoriales que tenía pendiente.
Vamos a ver, desde el punto de vista de alguien que está acostumbrado a Unity3D, la adaptación para UnrealEngine 4 de la manera menos agresiva posible y paso a paso.
¡De Unity3D a UnrealEngine!
Los motivos para dejar Unity3D atrás y dedicarse a usar UnrealEngine depende de cada uno, en mi caso no dejaré atrás Unity3D ya que creo que cada vez está haciendo una competencia más fuerte a UnrealEngine (como podréis ver en una entrada mas antigua, la cual recomiendo leer antes para valorar si realmente merece la pena el cambio o no: UnrealEngine VS Unity3D

Dicho esto, voy a desglosarlo en diferentes entradas.
En esta primera veremos la interfaz de UnrealEngine y a qué corresponde cada parte respecto a Unity3D. Como podremos ver más adelante, son bastante similares obviando que usen nombres diferentes y que, estéticamente, UnrealEngine mantenga una interfaz un poco más obsoleta, en mi humilde opinión.

Para empezar vamos a ver las dos interfaces divididas por secciones, y los colores que representan su equivalente en ambos entornos.
Ambos entornos divididos en secciones
Iremos parte por parte, en primer lugar y más visible, la parte morada que representa en Unity3D el visor de escena y en UnrealEngine Viewport para visualizar el nivel. Estos se controlan de manera diferente, ya que para moverte por el entorno en UnrealEngine necesitas usar las teclas WASD y en Unity3D se usan las flechas direccionales, pero fuera de esto, obviando atajos de teclado que son de uso más avanzado, lo demás podemos usarlo de manera bastante similar.
Al pulsar en un objeto podemos moverlo, rotarlo o escalarlo sobre sus ejes, y una ventaja respecto a Unity3D es la posibilidad de pulsar con el botón derecho en un objeto y poder ver las diferentes opciones para ese objeto, además de ser muchas más opciones de las que Unity3D ofrece normalmente.


En segundo lugar, en rosa, el margen superior a la izquierda de Unity3D y en el caso de UnrealEngine dentro del Viewport, las opciones del visor y de edición de objetos. Una vez más, en el caso de las opciones del visor, es considerablemente más completo que Unity3D, ya que te permite ver de muchas mas formas el escenario, pudiendo observar cómo se aplican las luces, el antialising, etc... y cada una por separado.

Continuamos con la zona roja, en la cual en Unity3D tenemos una barra de herramientas lo justo para poder probar en editor, play, pause y stop; en el caso de UnrealEngine, tenemos más herramientas, aunque muchas de estas se acceden desde la barra de tareas en Unity3D, Unity3D puede prescindir de algunos de estos botones ya que lo automatiza como el botón para compilar (en caso de que se quiera, puede no automatizarlo pero, sinceramente, no veo ninguna pega en ello) al contrario, creo que el simple hecho de que lo haga automáticamente, hace que no se me olvide dar a dicho botón, ya que no es necesario.
Por lo demás, he de decir que esta barra en UnrealEngine tiene demasiados botones, en Unity3D todas estas funcionalidades las tiene en la barra de herramientas.

Después podemos ver en azul la jerarquía de objetos en la escena/nivel en Unity3D y UnrealEngine respectivamente. Ambos tienen herramienta de búsqueda aunque la de Unity3D me parece más completa, ya que puedes buscar un componente y ver qué objetos lo tienen, o al menos en UnrealEngine no he visto como hacerlo. Como punto a favor de UnrealEngine, tenemos la opción de meter los objetos en carpetas, aunque en Unity3D podemos tener unos objetos dentro de otros, así que tampoco es una ventaja en toda regla.

Seguimos con el color verde, donde tenemos el visor de proyecto en Unity3D o visor de contenido en UnrealEngine. En este caso, de nuevo, Unity3D tiene un buscador bastante más práctico, y UnrealEngine tiene más opciones filtrando por código por un lado y el contenido por otro, aunque con los filtros y favoritos de Unity3D no sólo es sencillo, sino que además podremos personalizar nuestros propios filtros.

Por último, destacar en amarillo el inspector de Unity3D y la pestaña de detalle en UnrealEngine. En este caso, están bastante empatados en funcionalidad, salvo que Unity3D da la opción de resetear los valores por defecto con una función que programemos nosotros a través del componente que queramos resetear, y en UnrealEngine nos permite resetear cada valor individualmente, pero en principio, a la hora de mostrar valores y personalizar este apartado, ambos son bastante similares.

Antes de terminar, remarcar en gris una pestaña exclusiva de UnrealEngine, realmente la mayor similitud sería la pestaña GameObject, que podemos encontrar en la barra de tareas de Unity3D, de manera más visual en el caso de UnrealEngine. En este apartado podremos instanciar objetos básicos nuevos, luces, sonidos, partículas, etc…

Hasta aquí la comparación de la interfaz, si hay conceptos erróneos por favor, avisadme y lo corregiré encantado, de momento estoy empezando con UnrealEngine y podría estar equivocado en algún punto.

viernes, 1 de enero de 2016

¡Feliz año nuevo!

Para mi es un momento especial este día, no solo por felicitaros a todos los que me leéis, comentais e incluso aportais, si no también por ser el aniversario de esta página, siendo este mismo día de hace dos años el momento en el que me decidí a crear esta web y con la que, creo que una parte de mí ha crecido.
¡Feliz año nuevo!
 Hay muchas cosas que creo que este año han sido importantes para mi reflejadas aquí y me gustaría recapitularlas un poco como resumen del año.

Las gamejams a las que he asistido, en las que precisamente las que he asistido este año han sido probablemente las que mas me han hecho aprender y que una vez mas, aconsejo participar a todo el que no lo haya hecho y quiera hacer videojuegos.

Hay algunas de las entradas que parece que han sido bastante interesantes para los lectores de la web como por ejemplo en la que he hablado de las ventajas y desventajas entre Unreal Engine y Unity3D, el cual quizás haga alguna entrada donde haga una comparativa mas exaustiva entre estos y otros motores.

Durante este año he tenido muchos comentarios de agradecimientos, creo que ahora me toca a mi agradeceros a todos los que me habéis agradecido mis aportaciones, los ánimos que me habeis dado han sido una gran motivación.

También siento mucho el no haber podido hacer muchas cosas que tengo en mente para la web este año, pero espero que aun aplazando algunas ideas para este año, se puedan cumplir a lo largo de estos primeros meses del año.

Antes de despedir esta breve entrada felicitando el año, me gustaría también pedir a los que leáis esto que si tenéis alguna idea para añadir a la web la pongáis en los comentarios, ¡Es vuestra oportunidad de aportar! 

Dicho esto, ¡Feliz año a todos! ¡Feliz segundo aniversario www.hagamosvideojuegos.com!