Comandos:
OVERLAY1 y OVERLAY0

Los 'overlays' son un sistema de capas que permite superponer imágenes 2D fijas en pantalla, mientras el desarrollo del juego en 3D transcurre detrás de las imágenes superpuestas.

Podrás utilizar imágenes de 24 bits de color y cargadas desde ficheros gráficos en formatos .BMP o .JPG independientes.

Esto te permitirá personalizar tu juego definiendo todo tipo de marcadores o HUD, indicadores, mensajes gráficos, ventanas, cuadros o lo que quieras presentar en pantalla según las situaciones que se produzcan en tu juego.

También te permite crear elementos que pueda pulsar el jugador usando el puntero del ratón.




Sintaxis del comando OVERLAY1 para presentar imágenes:


ACCI OVERLAY1 número_de_imagen tiempo x y escala selec rojo verde azul alpha



Sintaxis del comando OVERLAY0 para hacer desaparecer imágenes:


ACCI OVERLAY0 número_de_imagen



  • número_de_imagen:
  • Número de imagen (entre 1 y 64).

    Este número de imagen o 'overlay' lo asignaremos manualmente al utilizar este comando para superponer una imagen en pantalla. Podemos utilizar hasta 64 imágenes simultáneas en pantalla.

    Este número de imagen también será el que deberemos utilizar en el comando 'OVERLAY0' para referirnos a una imagen concreta para hacerla desaparecer de la pantalla.



  • tiempo:
  • Tiempo en segundos que deseamos que permanezca la imagen en pantalla, transcurrido ese tiempo la imagen desaparecerá automáticamente.

    Utiliza el valor 0 para no establecer ningún tiempo, de esta forma la imagen permanecerá indefinidamente, hasta que utilicemos el comando 'OVERLAY0' para hacerla desaparecer.



  • x:
  • Coordenada X para establecer, junto con la coordenada Y, la posición de la imagen en pantalla.

    Un valor 'x' positivo indicará que la coordenada de x se contará desde el margen izquierdo de la pantalla.

    Un valor 'x' negativo indicará que la coordenada de x se contará desde el margen derecho de la pantalla.

    Un valor 0 centrará la imagen horizontalmente.



  • y:
  • Coordenada Y para establecer, junto con la coordenada X, la posición de la imagen en pantalla.

    Un valor 'y' positivo indicará que la coordenada de y se contará desde la parte superior de la pantalla.

    Un valor 'y' negativo indicará que la coordenada de y se contará desde la parte inferior de la pantalla.

    Un valor 0 centrará la imagen verticalmente.



  • escala:
  • Permite modificar el tamaño original de la imagen en pantalla.

    El valor deber estar expresado en porcentaje, siendo 100 el valor que debes usar si no quieres modificar el tamaño original de la imagen (100% el tamaño original).

    Con valores inferiores a 100 reducirás la imagen, mientras que con valores superiores a 100 la aumentarás.

    Usa el valor 1000 para que la imagen se muestre a pantalla completa. Esto es ideal para mostrar al jugador información gráfica de gran tamaño, como planos o mapas.



  • selec:
  • Usar el valor 0 para que este 'overlay' no sea seleccionable por el jugador usando el puntero del ratón.

    Usar el valor 1 para que este 'overlay' sea seleccionable por el jugador usando el puntero del ratón.

    Para que el jugador pueda seleccionar estos 'overlays', previamente debes hacer aparecer el ratón en pantalla usando el comando ESTABLECER_VALOR_SISTEMA.

    Cuando el jugador seleccione un 'overlay' pulsando el botón izquierdo del ratón sobre el 'overlay', se procesará el fichero de comandos que hayas indicado en el parámetro FicheroComandosRatonIzq de la entidad Configuracion de tu nivel.

    Finalmente, para saber qué número de 'overlay' ha seleccionado el jugador sólo debes consultar el valor de la variable del sistema EVENTO_NUM_OVERLAY_SELECCIONADO usando algún comando en el interior del fichero de comandos citado anteriormente.

    Este parámetro te permite crear menús o elaborados interfaces para tu juego, ya que puedes establecer qué 'overlays' son seleccionables por el jugador (valor 1 para este parámetro) y cuales no (valor 0 para este parámetro).



  • rojo:
  • Nivel de color rojo que queremos aplicar a la imagen.

    Puedes usar valores de 1 a 255.

    Se usa para cambiar el color de la imagen. Usa el valor 255 para los parámetros 'rojo', 'verde' y 'azul' si no quieres alterar los colores de la imagen.

    El coloreado puede ser útil para indicar mediante colores el cambio de estado de un nivel de un marcador personalizado o el límite que esté alcanzando un contador, sin necesidad de usar diferentes 'overlays'.



  • verde:
  • Nivel de color verde que queremos aplicar a la imagen.

    Puedes usar valores de 1 a 255.

    Se usa para cambiar el color de la imagen. Usa el valor 255 para los parámetros 'rojo', 'verde' y 'azul' si no quieres alterar los colores de la imagen.



  • azul:
  • Nivel de color azul que queremos aplicar a la imagen.

    Puedes usar valores de 1 a 255.

    Se usa para cambiar el color de la imagen. Usa el valor 255 para los parámetros 'rojo', 'verde' y 'azul' si no quieres alterar los colores de la imagen.



  • alpha:
  • Nivel de transparencia de toda la imagen.

    Puedes usar valores de 1 a 255. A menor valor, mayor transparencia.




    Cada imagen que queramos superponer en pantalla debe estar en un fichero .BMP o .JPG con un nombre en concreto si se quiere usar para un juego en concreto.

    El formato del nombre de los ficheros debe ser:


    PrimerNivel_overlay_01.bmp ..... para la imagen número 1
    PrimerNivel_overlay_02.bmp ..... para la imagen número 2
    PrimerNivel_overlay_03.bmp ..... para la imagen número 3
    PrimerNivel_overlay_04.jpg ..... para la imagen número 4
    PrimerNivel_overlay_05.bmp ..... para la imagen número 5
    PrimerNivel_overlay_06.jpg ..... para la imagen número 6
    PrimerNivel_overlay_32.jpg ..... para la imagen número 32
    .
    .
    ... hasta un máximo de 64 imágenes.


    Si quieres usar mapas de transparencias, deberá existir también una imagen 'Alpha' de transparencia para cada imagen. El formato del nombre de estos ficheros 'Alpha' debe ser:


    PrimerNivel_a_overlay_01.bmp ..... para el fichero 'Alpha' de la imagen número 1
    PrimerNivel_a_overlay_02.bmp ..... para el fichero 'Alpha' de la imagen número 2
    PrimerNivel_a_overlay_03.bmp ..... para el fichero 'Alpha' de la imagen número 3
    .
    .
    ... hasta un máximo de 64 imágenes. En el caso de usar ficheros 'Alpha' no está soportado el uso de ficheros .JPG


    En principio los colores que debes utilizar para crear un fichero con 'Alpha' deben ser el blanco y el negro, siendo las zonas coloreadas con negro las que se considerarán transparentes en su imagen correspondiente (serán recortadas y eliminadas), mientras que las zonas con color blanco serán las que aparecerán en pantalla.

    Sin embargo, también se pueden usar colores grises en estos ficheros con 'Alpha' para crear semi-transparencias en toda o parte de la imagen.


    Tanto los ficheros .BMP de las imágenes como los que contienen la imagen en 'Alpha', han de estar en la carpeta "bmp\HUD\overlays\" de Entidad 3D, y deben cumplir las siguientes condiciones:

  • Deben ser de 24 bits de color RGB, incluidos los ficheros 'Alpha' correspondientes.

  • Las dimensiones de las imágenes deben ser alguna de las siguientes: 16x16, 32x32, 64x64, 128x128, 256x256, 512x512 o 1024x1024 para mantener la compatibilidad con tarjetas gráficas antiguas, aunque actualmente la mayoría de las tarjetas gráficas podrán usar sin problemas imágenes de cualquier tamaño. En ningún caso deben superar las dimensiones de 1024 x 1024.


  • Ejemplo 1:

    Situar una imagen de una fotografía de la cara de una persona, en la parte superior izquierda de la pantalla durante 5 segundos:


    Nuestro juego lo componen tres niveles distintos llamados: parque, calle y plaza, aunque sea cual sea el nivel donde queramos situar la imagen, el nombre del fichero .BMP necesario, para por ejemplo usar la imagen número 4, tendría que llamarse:

    parque_overlay_04.bmp



    parque_overlay_04.bmp (256x256 24bits)

    Esta sería la línea de comandos que situaría la imagen en pantalla:

    ACCI OVERLAY1 4 5 10 18 100 0 255 255 255 255


    Este ejemplo mostrará la imagen, en la coordenada situada 10 pixeles contados desde la izquierda de la pantalla y a 18 pixeles contados desde la parte superior de la pantalla. El 5 es para que el mensaje sólo permanezca 5 segundos en pantalla:


    Resultado final



    Ejemplo 2:

    Situar un título centrado en la parte superior de la pantalla durante un tiempo indefinido. La imagen tiene zonas transparentes y tiene un tamaño de 251x135 que no se adapta a los tamaños permitidos por el comando 'OVERLAY1':


    Siguiendo con los mismos nombres para los niveles del ejemplo anterior, los nombres de los ficheros .BMP necesarios, para por ejemplo usar la imagen número 2, tendrían que llamarse de la siguiente forma:

    parque_overlay_02.bmp
    parque_a_overlay_02.bmp



    Imagen original (251x135 24bits)


    Imagen con transparencia (251x135 24bits)


    parque_overlay_02.bmp (256x256 24bits)


    parque_a_overlay_02.bmp (256x256 24bits)

    Esta sería la línea de comandos que situaría la imagen en pantalla:

    ACCI OVERLAY1 2 0 0 5 100 0 255 255 255 255



    Resultado final


    ... y esta línea de comandos para hacer desaparecer la imagen:

    ACCI OVERLAY0 2





    Ejemplos usando cambios de color, transparencia y reducción


    Como ves, todo el trabajo de edición de estos gráficos para prepararlos para Entidad 3D no está explicado con detalle porque no es tarea de esta sección y varía de un editor gráfico a otro.



    Acerca de este comando:

    - Si quieres el mismo nivel de transparencia para una imagen y no necesitas recortar nada de la imagen, no necesitas crear el fichero .BMP 'Alpha'. Usa en su lugar el parámetro 'alpha' del comando para establecer el nivel de transparencia de toda la imagen.


    - Puedes usar ficheros gráficos .TGA (Targa) en lugar de ficheros .BMP, pero debes mantener la extensión .BMP en el fichero. Es decir, si creas un fichero 'overlay_05.tga' con tu editor gráfico, debes copiar ese fichero como 'overlay_05.bmp' en la carpeta de 'overlays' de Entidad 3D, aunque internamente sea un .TGA.

    Evidentemente nunca necesitarás el fichero .BMP 'Alpha' para este tipo de fichero gráfico .TGA, ya que si has creado correctamente el fichero habrás incluido un canal Alpha en el interior del fichero .TGA.

    Atención: Estos ficheros .TGA, si bien resultan muy útiles e incluso aumenta el nivel de calidad gráfica, debes tener en cuenta que no debes usar tamaños de imagen que no sean potencia de 2. Es decir, no sirve una imagen de 354 x 898, pero si una de 512 x 1024. De lo contrario la imagen podría aparecer distorsionada en pantalla.

    - Si usas el comando 'OVERLAY1' con un número de 'overlay' que ya se está mostrando en pantalla, redefinirás las características de ese 'overlay'. Esto es útil al poder modificar 'overlays' existentes para desplazarlos, redimensionarlos o colorearlos.


    - Consulta el apartado titulado 'Coordenadas x y relativas a los bordes de pantalla' de la sección del comando 'MSJ1' para saber como funciona el sistema de posicionamiento de elementos en pantalla usando coordenadas x y positivas y/o negativas.


    - Recuerda que todos los ficheros .BMP o .JPG que necesita el comando 'OVERLAY1' deben estar en la carpeta 'bmp\HUD\overlays'.


    - Usa el comando CAMBIAR_IMAGEN_OVERLAY para cambiar la imagen de un 'overlay' durante el transcurso de tu juego.


    - Nunca borres el fichero 'overlay_base.bmp' que hay en la carpeta 'bmp\HUD\overlays\'.



    Funcionamiento de los comandos en el modo de juego online

    Ámbito de actuación por defecto de los comandos:


    Los comandos soportan cambio de ámbito: