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.