Comando CTEX_TEXTO



Permite sustituir una textura del nivel por textos, números, datos o contenidos de variables.


Sintaxis del comando:


ACCI CTEX_TEXTO nombre_textura tamaño_textura tipo_letra tamaño_letra x y texto

  • nombre_textura:
  • Nombre de la textura que quieres sustituir en el nivel.

    Es el nombre de la textura que has utilizado en World Editor cuando creaste el nivel y que ahora deseas sustituir por un texto.

  • tamaño_textura:
  • Tamaño de la nueva textura que se creará para sustituir la anterior y que contendrá el texto a presentar.

    Puedes indicar un tamaño diferente al tamaño de la textura a sustituir, pero el ajuste de la textura deberás modificarlo desde World Editor seleccionando la cara donde aplicas la textura y usar la opción 'Face Attributes'.

    Los valores disponibles para este parámetro son:

    128 para un tamaño de 128 x 128 pixeles.

    256 para un tamaño de 256 x 256 pixeles.

    512 para un tamaño de 512 x 512 pixeles.

    (La nueva textura siempre se creará con un fondo transparente)


  • tipo_letra:
  • Tipo de letra que se usará para presentar el texto.

    Consulta la sección del comando MSJ1 para conocer los tipos y tamaños de letras disponibles.

    Los tipos de letra disponibles son:

    De 1 a 26 para los tamaños de letra 1 o 2.

    De 1 a 6 para el tamaño de letra 3.


  • tamaño_letra:
  • Tamaño de letra que se usará para presentar el texto.

    Consulta la sección del comando MSJ1 para conocer los tipos y tamaños de letras disponibles.

    Los tamaños de letra disponibles son:

    1 o 2 para los tipos de letra de 1 a 26.

    3 para los tipos de letra de 1 a 6.

    (El tamaño 2 es el grande, el 1 el mediano y el 3 el pequeño)


  • x y:
  • Coordenadas dentro de la nueva textura donde queremos que comience el texto a presentar.

    Normalmente se usa 0 0.


  • texto:
  • Texto que quieres presentar.

    Puedes incluir nombres de variables entre símbolos %

    Si quieres realizar un salto de línea en el texto, debes usar el símbolo @ en el punto que deseas el salto de línea.

    Usa también el símbolo @ como único símbolo de este parámetro para no presentar ningún texto pero dejando la textura limpia, transparente e invisible.



    El comando 'CTEX_TEXTO' se puede utilizar para presentar datos calculados durante el juego y que deseas mostrar en algún lugar del nivel.

    Algunos ejemplo pueden ser:

    - Datos en pantallas de monitores de computadora.

    - Paneles holográficos de datos.

    - Posiciones sobre un mapa.




    Ejemplo:


    Queremos presentar una serie de datos y textos en un monitor de computadora que se encuentra en el nivel. Los datos queremos extraerlos de las variables NIVELF y VARISTAT.


    En este ejemplo lo que debes entender es que las texturas del monitor de computadora no las vamos a alterar para nada, lo único que haremos será crear un nuevo bloque 'brush' en World Editor para usar una de sus caras para imprimir nuestros datos. El efecto de que los datos aparezcan en el monitor lo conseguiremos superponiendo ese bloque sobre la pantalla del monitor.


    Este es nuestro monitor en el nivel:




    En World Editor vamos a crear un bloque 'brush' tipo 'Solid Sheet', que dispone de una sola cara, para superponerlo delante de la pantalla del monitor:



    Es importante marcar como 'Transparent' la cara que vamos a cambiar su textura. Esto lo hacemos con la opción 'Face Attributes'.

    En principio le aplicamos la textura llamada metal62 que no será la textura definitiva, pero que nos servirá para ajustarla mejor al disponer esta textura de límites cuadrados bien definidos.


    Ahora vamos a realizar una prueba del comando 'CTEX_TEXTO' con cualquier tipo de dato para ver como se posicionan al sustituir la textura metal62.

    Usaremos esta línea de comando:


    ACCI CTEX_TEXTO metal62 256 15 1 0 0 123456789


    ... y observamos el resultado en Entidad 3D:



    Efectivamente nuestros datos de prueba no comienzan en la parte superior izquierda del monitor como cabría esperar. Pero esto es debido al ajuste de la textura metal62 en la cara. La ajustamos desde World Editor lo mejor que podamos, incluyendo su tamaño ...



    ... y volvemos a probar la misma línea de comando anterior:


    ! Esto ya es otra cosa !

    Ahora que tenemos la textura correctamente posicionada, volvemos a World Editor y cambiamos la textura de prueba metal62 por la que será la textura definitiva. Puede ser cualquier textura pero del mismo tamaño que la de la prueba, por ejemplo metal64. No importa el aspecto que tenga ya que la cambiaremos por nuestros datos durante el transcurso del juego:





    Ya podemos probar la línea de comandos definitiva que usaremos en nuestro juego:

    ACCI PONE NIVELF=45

    ACCI PONE VARISTAT=ALTO

    ACCI CTEX_TEXTO metal64 256 15 1 0 0 FUEL:%NIVELF% @STATUS:%VARISTAT% @FIN DE INFORME


    Los símbolos @ los usamos para realizar saltos de línea y los símbolos % son para referirnos a nuestras variables, el resto de texto lo presentará tal cual.


    Este sería el resultado final que mostraría nuestro monitor:




    Para que el monitor no muestre esa fea textura metal64 delante de la pantalla antes de que usemos la línea de comandos que muestra los datos superpuestos en pantalla, al inicio del nivel podemos ocultar la textura usando la línea de comandos siguiente:


    ACCI CTEX_TEXTO metal64 256 15 1 0 0 @




    Acerca de este comando:


  • Atención: El uso de este comando puede causar una pausa de unos pocos milisegundos en el motor 3D, por lo que no es conveniente usarlo de manera intensiva.

  • Debes tener en cuenta que el comando sustituirá la textura indicada en el parámetro nombre_textura en todas las caras donde se encuentre aplicada esa textura en tu nivel.

  • Puedes usar el comando sobre texturas en caras de bloques 'brush' que no sean necesariamente tipo 'Solid Sheet'.

  • Si bien puedes realizar sin problemas el cambio de texturas con tamaños que no coinciden con el indicado en el parámetro tamaño_textura asegúrate del correcto ajuste de la textura desde World Editor en 'Face Attributes'.

  • No se pueden usar diferentes tipos de letra para el texto a mostrar. Si quieres crear un panel de datos con letras y números de diferentes tamaños y colores, te recomiendo que combines varios paneles usando diferentes texturas para realizar los cambios en texturas independientes.

  • Para darle más transparencia al propio texto, reduce el valor de la caja 'Transparency Value' en la sección 'Face Attributes' de propiedades de la cara.

  • Recuerda que dispones de comandos para desplazar, animar, ocultar y mostrar bloques durante el transcurso de tu juego o aplicación multimedia interactiva 3D, por lo que la combinación de esos comandos con el propio comando CTEX_TEXTO te ofrece multitud de posibilidades para crear vistosos efectos.


  • Funcionamiento del comando en el modo de juego online

    Ámbito de actuación por defecto del comando:


    El comando soporta cambio de ámbito: