Close
    Search Search

    Tutorial: Todo sobre CFrames

    Página de tutoriales Este artículo es un tutorial avanzado.Todos los tutoriales · Tutoriales de secuencias de comandos

    ¡Hola! Con suerte, este tutorial le brindará una comprensión más profunda de CFrames.

    Tenga en cuenta que este tutorial se volverá muy técnico y requerirá una comprensión básica de las matemáticas.

    Contenido

    ¿Qué es un CFrame?

    Un CFrame, o marco de coordenadas, es un conjunto de 12 números que definen el posición y orientación de una parte. Notará que la propiedad CFrame de una pieza no está en la ventana Propiedades, sino que se reemplaza con Posición y Orientación para facilitar el movimiento y la rotación de una pieza.



    La matriz CFrame

    Organizamos los 12 números en un CFrame en un matriz. ¿Qué es una matriz? En matemáticas, es básicamente una forma de organizar un montón de números en una ordenada matriz. Un buen ejemplo de matriz es este:

    Cuadrado mágico
    6 1 8
    7 5 3
    2 9 4

    Por lo general, en una matriz, cada fila / columna debe tener algún tipo de relación. El caso anterior es un ejemplo de un "cuadrado mágico", lo que significa que cada línea horizontal, vertical y diagonal suma 15.



    Un CFrame también tiene una matriz, solo que es una matriz de 3x4, por lo tanto, hace 12 valores. Los valores en negrita a continuación son solo los títulos de las filas. Solo tenga en cuenta que no se pueden obtener valores multiplicando dos números. No intente encontrar xz multiplicando xy z.

    Matriz CFrame
    p px py pz
    x xx yx zx
    y xy yy zy
    z xz yz zz

    Tenga en cuenta que cada valor tiene nombres diferentes, como en lugar de xx, otros lo llamarían r11 o m01. Para este tutorial, usaré xx, yx, etc.

    Comencemos con la fila p. La fila P representa la posición en forma de (x, y, z). Es tan fácil como eso.

    Los aspectos rotacionales

    Las filas x, y y z representan la rotación del objeto. Aquí hay una muestra de tres de estos valores y cómo se calculan.

    Tutorial: Todo sobre CFrames

    Tutorial: Todo sobre CFrames

    Tutorial: Todo sobre CFrames

    Puede ver que estas ecuaciones son complicadas y requieren un conocimiento complejo de trigonometría. NO necesita calcular estos valores, esto es solo un tutorial para mostrarle cómo funciona la matriz.


    Vectores

    Ahora pasamos a los vectores.

    ¿Qué es un vector?

    Por definición, un vector es un objeto con dirección y magnitud. Para el propósito de este tutorial, asumiremos que un vector es como un rayo; una línea que comienza en un punto (la parte) y va infinitamente en una dirección. Por supuesto, no son lo mismo, pero esto es para ayudar a comprender qué es un vector.


    Ahora, si usa la herramienta Mover en una pieza, verá aparecer seis flechas: dos rojas, dos verdes y dos azules. Un desarrollador con menos experiencia puede pensar que cada color de flecha representa un eje, pero esto no es cierto, ya que si rotara la pieza, las flechas rotarían con ella. No. Cada flecha representa un vector.


    Verá, cada parte tiene seis caras, a todas las cuales se les asigna un nombre: frente, atrás, izquierda, derecha, arriba o abajo. Un vector es como las flechas en la herramienta Mover; es una línea que comienza en el centro de una cara y se extiende hacia afuera infinitamente.

    Cada parte tiene tres vectores con nombre:

    Un LookVector es el que se extiende desde la cara frontal y está representado por la flecha azul.

    Un RightVector es el vector que se extiende desde la cara Derecha y está representado por la flecha roja.

    Un UpVector se extiende desde la cara superior y está representado por la flecha verde.

    Relación con Matrix

    ¿Cómo se relaciona todo esto con la matriz? Bueno, un vector está representado por tres números en forma de . Entonces, los números de la fila X son los números del RightVector de la pieza, la fila Y para el UpVector yz para el LookVector.

    Añade un comentario de Tutorial: Todo sobre CFrames
    ¡Comentario enviado con éxito! Lo revisaremos en las próximas horas.

    End of content

    No more pages to load