Mostrando entradas con la etiqueta tutorial udk. Mostrar todas las entradas
Mostrando entradas con la etiqueta tutorial udk. Mostrar todas las entradas

Partículas

Las partículas juegan un papel fundamental en todo juego, es un factor muy visual y que genera un atractivo agregado al escenario.

Las partículas comenzaron siendo imágenes simples que intercambiaban mediante programación, su imagen y su posición, obviamente las tecnologías van progresando y con ellas las aplicaciones. Los generadores de particulas, conocidos en muchos programas, after effects, flash, 3dmax, etc, tienen caracteristicas muy similares, pueden cambiar algunos parametros pero en todos la funcionabilidad y como se generan, es practicamente igual en todos.

Un punto de salida, cuantas particulas, hacia donde van, hacia donde caen, a que velocidad. La diferencia es en cada aplicación los nombre de estos parámetros y cuantas funciones más programadas disponen, esto les da de más efectos.

Las partículas las podemos utilizar para generar disparos, chistas, fuegos, efectos climatológicos y en UDK cada vez se pueden generar mayores y mas complejos efectos con el sistema de partículas, en algo que se caracterízan es en siempre disponer de lo mejor para poder crear así lo mejor.

En este vídeo muestro como generar algunos efectos, pero el tema de partículas es algo que aprender muy afondo no llegaríamos a creernos los efectos que se pueden lograr en este apartado.


Materiales Y Funciones

El editor de materiales contiene un elevado número de funciones que nos permiten con unas pocas texturas, realizar un sin fin de composiciones, permitiendonos generar diferentes materiales con las mismas texturas.

Las más conocidas ADD y Multiply que sirven para fusionar de distinto modo las texturas, estas funcionan como la trama y el multiply de Photoshop por poner un ejemplo.

 La función de estas es permitirnos fusionar de dos modos muy distintos, diferentes texturas o composiciones, para lograr unos efectos visuales muy interesante y complejos, que no solo sirven para las texturas difuse, si no que nos sirven para otro tipo de funciones, como por ejemplo fusionar distintos normals y lograr así un efecto de profundidad más intenso o un efecto que no se refleja en la propia textura a la hora de extraer el bump o también llamado normal. Otra posibilidad muy interesante es la de fusionar los mapa de luces (speculars) permitiendo oscurecer, aclarar o alterar el brillo del material con diferentes tonalidades.

Sine y cosine, en español seno y coseno son funciones propiamente matemáticas que aplicadas a las texturas nos devuelven un valor, en este caso sine a un valor bajo aclarara la textura que le estemos pasando y con un valor elevado, oscurece esta. Mientras que cosine ejerce otro tipo de resultados pero ambos muy parecidos. Juntos a la función de Time, estas generan un bucle de iluminación intermitente desde encendido a apagado como las luces de un árbol de navidad, según el parámetro que le pasemos estas parpadearan de forma distinta, siendo el valor más bajo el parpadeo más rápido.

LinearInterpolate, es una función perfecta para fusionar las texturas filtrandola a través de una máscara de opacidad, estás son de color blanco y negro, siendo blanco el transparente y negro el color a destacar, pero esta debe de seguir un patron en alguna de las dos texturas, siendo el oscuro el color que predomina, pues sino la que se ponga en A no captará la máscara de opacidad y no realizará o parecerá que no realiza la fusión como podréis observar en el vídeo de este tema.

Existen muchas más funciones y cada cual más compleja o determinada para una función en especifico.

En este vídeo podemos observar un ejemplo de una textura de lava solidificada, con movimiento.


Programación Kismet 2

Seguimos con una serie de programación en kismet, con este podemos programar como en cualquier lenguaje de programación, podemos realizar bucles de condición como el while o el Repeat que asta que no se cumpla una condición en particular, no finalizará.

Pero con estos bucles, los cuales veremos en el vídeo de una forma sencilla, utilizaremos la funcion teleport para hacer cambiar de lugar de forma instantánea un objeto insertado en el nivel, en este caso un tigger.

Los tigger como hemos podido observar funcionan de detectores de objetos o jugador, cuando este toca o colisiona con el ejecuta un aviso o mejor dicho activa una secuencia.

La función teleport, sirve también para generar por ejemplo una secuencia aleatoria de salida de enemigos o un tele-transporte para el jugador y hacer que este aparezca en otro nivel u otra habitación.

En el vídeo el ejemplo está realizado con los tigger para atender también una duda, para poder generar un movimiento de los mencionados tigger por el nivel cada vez que este toca uno de ellos. En vez de realizar el proceso tal cual, muestro como incrementar con una función de comparación, para ver como  realizar operaciones matemáticas simples y comparar los resultados. Al realizar un reinicio de la variable numérica, forzamos a que el bucle sea indefinido y este no cese nunca.


Programación Kismet

Con kismet se pueden programar muchas cosas, es un editor gráfico repleto de funciones prediseñadas para poder generar una programación tal cual se escribe.

Con está se puede generar muchísimas programaciones del juego ahorrándonos escribir los códigos y facilitando mucho la programación de ciertos elementos de un vídeo juego. Solo con kismet y el unreal se pueden generar mini-juegos completamente funcionales, un juego de naves, un árcade  la imaginación pone los limites efectivamente y el conocer las funciones y como utilizarlas, es lo que ara que podamos generar lo que deseemos.

Con ejemplos prácticos podemos aprender estas funciones y como operar con estas para generar eventos en el juego sin necesidad de acudir a la programación.

En este ejemplo vemos como generar un bucle indefinido de enemigos en una sala por la cual se moverán aleatoria-mente atacando al jugador. Tenemos que tener en cuenta que en el ini del defaultgame donde se almacena la información del juego hay un número máximo de muertes y cuando el jugador llega a eliminar a 25 enemigos el juego te declara el vencedor, por lo que tenemos que tener en cuenta este punto:

DefaultGame.ini

[UTGame.UTGame]
BotRatio=+1.0
GoalScore=25 <-- tener en cuenta este dato si pensáis que el jugador llegue a matar más

Podemos ampliarlo perfectamente y declarar el número más idóneo.
No recomiendo borrar la entrada pues esta afecta principalmente al juego ut y puede provocar fallos o problemas en su programación aun que no se aprecien.


Importar hightmaps

En una consulta, he podido ver que al importar un mapa de alturas a udk este no aparece, realmente si aparece no con las especificaciones que nos agradarían y mucho menos en la posición que deseamos que este se inserte. En el vídeo podemos ver como solventar el problema.

Sabías que se pueden generar mapas de alturas desde Photoshop, si efectivamente es factible aun que hay que tener un buen dominio para generar un buen mapa de alturas solo viendo tonos grisaceos. 

Para generar un mapa de alturas desde Photoshop, debemos de generar una imagen del tamaño que admite el editor de terrenos de udk, 128x128, 256x256, sucesivamente y con valores inferiores. Seleccionar modo escala de grises a 16 bits, también puede ser a 8bits. Guardar en formato RAW.

Con este generamos un mapa de alturas listo para ser importado a UDK. También admite formatos t3d con el cual podemos importarlos desde un editor externo a udk.

En el video veremos como importarlo, solventar este problema que surge por algún motivo y solventarlo, a demás de generar un material muy simple para el terreno el cual mejoraremos más adelante.


Kismet y matinee

Kismet y matinee son elementos fundamentales para la edición de nuestro juego pues con ellos crearemos la mayor parte de ínter-actividad de nuestro juego, salvo seamos programadores avanzados y sepamos programar todo por supuesto.

Kismet es la herramienta de programación visual de la que dispone udk, con ella se pueden programar juegos enteros sin ser demasiado exigentes pero es totalmente factible y su utilización se hace muy amena y similar permitiendo ser muy intuitivo a la hora de programar ciertas cosas.

Matinee es el editor de cinemáticas de la que disponemos para generar animaciones o como no cinemáticas en nuestros niveles.

Una forma de aprender como funcionan ambos es trabajando con ellos y que mejor forma que generando puertas? si puertas, ¿ por que puertas? precisamente por que son unos de los elementos más cotidianos en los juegos y que precisan de ambos para funcionar, sin la programación no sabremos si precisa de ser abierta y sin la cinemática no podrá moverse y hacer la abertura o cierre de esta ¿verdad?

Veamos diferentes tipos de puerta que podemos generar con udk, eso no quiere decir que sean los únicos.



Niveles y subniveles


¿El gran talón de aquiles de UDK? ¿generar tremendos escenarios? por supuesto que se puede, solo basta conocer como agilizar las cargas para evitar el colapso, parece que un gran motor pueda crear grandes construcciones y ciudades megalíticas, pero en todo tiene que haber un orden y una organización.

En udk existen los niveles y al igual que los objetos que introducimos en el nivel se pueden configurar para agilizar sus cargas, ocurre lo mismo con los niveles.

¿Por que es importante este apartado?

Veamos lo del siguiente modo, vamos caminando por un pasadizo, en cada lado hay puertas, dentro de estas habitaciones con mas de 100 mallas estáticas, si todo está en el mismo nivel ¿que crees que ocurrirá? pues que o colapsamos la computadora o simplemente derrocharemos una cantidad de recursos innecesaria provocando un lag en el juego innecesario. Es más lógico que si el jugador va a entrar ha una habitación esta se cargue entonces y ahorramos el resto de habitaciones que sinceramente en ese momento ni va a ver.

Ocurre lo mismo con los grandes escenarios, ciudades, bosques, continentes? si también. No hay ninguna razón por la que debamos de generar un terreno de dimensiones impensables, cuando podemos es generar 100 terrenos y cargar solo los 5 que el jugador realmente va a ver. Simulando un nivel interminable para la visual pero fragmentado para ahorrar recursos.

En este vídeo vemos como fusiono dos niveles en uno y genero las cargas de estos de forma exagerada para ver como se carga y descarga los niveles conforme el jugador pasa por ellos.



Sonidos y particulas


Udk dispone de una gran librería de objetos, incluidas las partículas y los sonidos, veremos como adecuarlos a nuestros niveles, cada objeto que insertamos consume recursos de la computadora vale la pena saber como ponerlas bien sin derrochar estos recursos tan preciados.

Existen formatos distintos en udk de sonidos, unos son envolventes otros se ajustan a la zona donde los ponemos, pero debemos de saber que diferencia hay entre ellos y como ajustar estos parámetros.

También podemos importar nuestros propios sonidos, queremos poder ajustarlos bien al nivel de juego,  en este vídeo explico como ajustar los volúmenes y el radio, entre muchas otras funcionalidades que nos aporta el motor.

Algunos trucos para generar efectos al entrar y visuales para darle un poco de ficción a nuestros niveles o realismo según necesitemos.


La verdad es que a este apartado, muchas veces me he percatado que se le da poca importancia, cuando en realidad la tiene toda. Que seria de muchos juegos de terror sin esos sonidos que nos ponen los pelos de punta y esos efectos visuales que nos rizan el bello, pues no serian nada la verdad sea dicha, muchos juegos centran la mayor implicación en este apartado, pues es la que ara entrar al jugador más en énfasis o acercarse más a la historia del juego haciéndole vivir un sin fin de sensaciones.
Es la mejor herramienta de la que disponemos para ayudar al jugador a sentirse parte del juego.

Decoración estática



Bien sabemos que en este tipo de aplicaciones  se permite el insertar mallas 3D en el nivel que estemos generando, ya sean de su propio contenido o realizadas por uno mismo. Me agradaría decir que con un insertar ya hay más que suficiente, pero como insertarlas en el nivel , manipularlas correctamente y conocer bien como trabajar con las importaciones para evitar sobre cargar nuestro nivel es fundamental.

Un nivel puede disponer de un sin fin de mallas, ¿cargar todas a la vez? espero que no! no solo consiste en insertar y ya está, los objetos insertados tienen sus propiedades y debemos de saber como ajustarlas para no colapsar nuestras cpu's o las del usuario/a a que lo va a utilizar en un futuro. Hay que saber como optimizar el contenido de nuestro nivel y muy importante si se trabaja con una aplicación donde su principal potencia está en la calidad gráfica que está otorga o da. 

UDK consume muchos recursos de nuestra tarjeta gráfica y por esa razón hay que ir con mucho cuidado a la hora de insertar objetos en UDK o en cualquier otro motor gráfico. 

En este vídeo veremos como insertar las mallas y como se ajustan los parámetros para una carga más agilizada en el juego.




Texturizar



Principalmente para texturizar un nivel en udk precisamos de Materiales, como pintar o mejor dicho como texturizar desde el editor es bastante complejo, pues dispone de su propia herramienta de texturizado. Es bastante sencilla de utilizar, pero si no se conoce, puede convertirse en un auténtico quebradero de cabeza.

Pero ¿por que es importante saber texturizar?

Pues ni más ni menos es fundamental para nuestra calidad visual. Por que para poder otorgar de una alta calidad, debemos de saber como cuadrar las texturas a nuestro nivel de juego, como ampliar y reducirlas, según donde las deseamos aplicar y para aprender este paso no precisamos de generar nuestros propios materiales.  Para texturizar correctamente un nivel, es mucho mejor utilizar materiales avanzados de gran calidad. 

Que mejor que los propios de utgame, calidad profesional a nuestro alcance sin coste alguno, con los cuales podremos practicar y ver que ocurre manipulando y tratando con esos materiales nuestras construcciones, de ese modo cuando generemos nuestros materiales sabremos aprovecharlos aun que no sean tan complejos como los de los diseñadores gráficos que realizaron los propios para el engine.

En este vídeo veremos como utilizar la herramienta de texturizado de la que dispone la aplicación.






Diseñar



¿Quien dice que todo lo que generemos debe de realizarse en una aplicación externa?

 UDK dispone de su propio editor gráfico, es muy flexible  y similar a un editor 3d del mercado actual. Como todas las aplicaciones hay que saber como agregar y manipular las mallas o en este caso los actores que podemos agregar a nuestros niveles y como para poder crear y generar así nuestros propias zonas de juego. 

Existen varias formas geométricas con las que construir en el editor de UDK y no solo eso, también 4 formatos distintos de trabajar con ellos. 

ADD CSG: Agregar actores, estos se agregaran siguiendo la forma del pincel rojo.

Substract CSG: Agrega un actor que substrae del actor con el que este en contacto generando un vacío en este siguiendo la forma del pincel rojo donde se adhiere.

Intersect: Tomará la forma de los actores en los que esté el pincel rojo en contacto.

Desintersect: Tomará la forma a la inversa que intersect, adopará la forma evitando los actores que estén en contacto con el pincel rojo.

En el siguiente vídeo veremos como generar un escenario utilizando distintas formas geométricas y viendo los 4 formatos de inserción de las que disponemos.





La Interfaz

Obviamente sin conocer como trabajar con la aplicación, se puede considerar una perdida de tiempo.

Debemos destinar tiempo y dedicación a conocer la interfaz y las herramientas de que dispone, a lo largo del tiempo y trabajar con este nos vamos familiarizando con sus funcionalidades y cuales nos serán más afines a la hora de desarrollar nuestros proyectos.

En el siguiente vídeo nos introduciremos en la interfaz de la aplicación para conocer las herramientas de las que dispone el Editor. es un paso un poco aburrido, pero esencial pues no se pueden elaborar niveles ni juegos si no se conoce el programaa con la que se va a trabajar. 

A demás aprenderéis algunos atajos de teclado muy útiles para trabajar de forma más cómoda.