This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| es:orx:tutorials:scrolling [2012/03/05 15:48 (14 years ago)] – [Detalles] zera | es:orx:tutorials:scrolling [2020/08/20 04:14 (5 years ago)] (current) – Old content sausage | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Tutorial de Desplazamiento ====== | ||
| - | |||
| - | |||
| - | |||
| - | ===== Sumario ===== | ||
| - | |||
| - | Ver los anteriores [[main# | ||
| - | |||
| - | Este tutorial muestra como dibujar un [[http:// | ||
| - | |||
| - | Como puedes ver, no hay un código especial para el paralaje por movimiento en sí.\\ | ||
| - | Actualmente, | ||
| - | |||
| - | Por defecto en este tutorial, el atributo '' | ||
| - | Esto significa que un paralaje por movimiento sucederá en ambos ejes X y Y cuando se muevan las cámaras.\\ | ||
| - | Tú puedes probar a poner este valor a la X, Y o cuando lo remuevas. | ||
| - | |||
| - | Más allá del atributo '' | ||
| - | Este atributo es usado para automáticamente ajustar la escala de los objetos dependiendo en cuan lejos están de la cámara.\\ | ||
| - | La cámara truncada más pequeña es, a la que más rápido se le aplicará esta autoescala.\\ | ||
| - | Puedes probar y jugar con el posicionamiento de un objeto y los planos lejos & cerca de una cámara para lograr el desplazamiento deseado y frecuencias de escalado profundo que quieras. | ||
| - | |||
| - | Puedes cambiar la velocidad de desplazamiento (ej. la cámara se mueve rápido) en el fichero de configuración. Como es usual, puedes modificar su valor en tiempo real y hacer una recarga de la configuración histórica. | ||
| - | |||
| - | Como has podido ver, nuestra simple actualización de código mueve la cámara en el espacio 3D.\\ | ||
| - | Presionando las flechas se moverá a traves de los ejes X y Y, y presionando las teclas control & alt a través de la Z.\\ | ||
| - | Como dije anteriormente, | ||
| - | Tu código meramente necesita mover tu cámara en tu escenario, sin tener ninguna molestia con los efectos de desplazamiento.\\ | ||
| - | Esto te da un control total sobre tantos planos en desplazamiento quieras, y que objetos serán afectados por el.\\ | ||
| - | |||
| - | El último punto concierne al cielo.\\ | ||
| - | Como vimos en el [[frame|tutorial de fotogramas]], | ||
| - | Esto significa que la posición puesta por el objeto cielo en el fichero de configuración siempre será relativo a la cámara.\\ | ||
| - | En otras palabras, el cielo siempre seguirá la cámara.\\ | ||
| - | Como pusimos ahí, por defecto, a la profundidad de 1000 (ej. el mismo valor de un plano truncado de cámara alejada), el se mantendrá en el fondo(background). | ||
| - | ===== Detalles ===== | ||
| - | |||
| - | Como es usual, comenzaremos por cargar nuestro fichero de configuración, | ||
| - | Por último, creamos nuestro fondo '' | ||
| - | Por favor referirse a los [[main# | ||
| - | |||
| - | Veamos ahora nuestra función '' | ||
| - | |||
| - | <code c> | ||
| - | |||
| - | orxConfig_PushSection(" | ||
| - | |||
| - | orxConfig_GetVector(" | ||
| - | orxVector_Mulf(& | ||
| - | |||
| - | orxConfig_PopSection(); | ||
| - | </ | ||
| - | |||
| - | Nada realmente nuevo hasta el momento.\\ | ||
| - | Necesitamos ahora actualizar el vector de movimiento de nuestra cámara dependiendo en las entradas activas. | ||
| - | |||
| - | <code c> | ||
| - | { | ||
| - | vMove.fX += vScrollSpeed.fX; | ||
| - | } | ||
| - | if(orxInput_IsActive(" | ||
| - | { | ||
| - | vMove.fX -= vScrollSpeed.fX; | ||
| - | } | ||
| - | if(orxInput_IsActive(" | ||
| - | { | ||
| - | vMove.fY += vScrollSpeed.fY; | ||
| - | } | ||
| - | if(orxInput_IsActive(" | ||
| - | { | ||
| - | vMove.fY -= vScrollSpeed.fY; | ||
| - | } | ||
| - | if(orxInput_IsActive(" | ||
| - | { | ||
| - | vMove.fZ += vScrollSpeed.fZ; | ||
| - | } | ||
| - | if(orxInput_IsActive(" | ||
| - | { | ||
| - | vMove.fZ -= vScrollSpeed.fZ; | ||
| - | }</ | ||
| - | |||
| - | Por último apliquemos este movimiento a nuestra cámara. | ||
| - | |||
| - | <code c> | ||
| - | |||
| - | Como se dijo antes, no hay ni una sola línea de código para controlar nuestro Paralaje por movimiento.\\ | ||
| - | Todo está hecho en la parte de configuración. Simplemente movemos nuestra cámara en nuestro espacio '' | ||
| - | |||
| - | Echemos un vistazo a los datos de configuración. Primero nuestra sección '' | ||
| - | |||
| - | <code ini> | ||
| - | CloudNumber = 1000 | ||
| - | ScrollSpeed = (300.0, 300.0, 400.0)</ | ||
| - | |||
| - | Como puedes ver, tenemos nuestra '' | ||
| - | |||
| - | Veamos ahora nuestro objeto nube. | ||
| - | |||
| - | <code ini> | ||
| - | Texture = ../ | ||
| - | Pivot = center | ||
| - | |||
| - | [Cloud] | ||
| - | Graphic | ||
| - | Position | ||
| - | AutoScroll | ||
| - | DepthScale | ||
| - | Color = (180, 180, 180) ~ (220, 220, 220) | ||
| - | Alpha = 0.0 | ||
| - | Scale = 1.0 ~ 1.5 | ||
| - | FXList | ||
| - | |||
| - | Los dos atributos importantes aquí son '' | ||
| - | |||
| - | Primero, el atributo '' | ||
| - | Esto dice en que eje está el desplazamiento por paralaje esta ocurriendo para este objeto.\\ | ||
| - | El desplazamiento por paralaje será rendereado acorde a la coordenada ' | ||
| - | El objeto más cercano a la cámara en el eje ' | ||
| - | |||
| - | El atributo '' | ||
| - | El objeto más cercano a la cámara en el eje ' | ||
| - | |||
| - | Veamos nuestro objeto cielo. | ||
| - | |||
| - | <code ini> | ||
| - | Texture = ../ | ||
| - | Pivot = center | ||
| - | |||
| - | [Sky] | ||
| - | Graphic | ||
| - | Scale = (0.5, 0.004167, 1.0) | ||
| - | Position | ||
| - | ParentCamera | ||
| - | |||
| - | Como puedes ver, ponemos una '' | ||
| - | Ponemos su posición en '' | ||
| - | Disponemos de una '' | ||
| - | a menos que explícitamente se negaron poniendo '' | ||
| - | De ahí nuestro '' | ||
| - | Como nuestro '' | ||
| - | De la misma manera, como el mismo es de 240 pixels de largo en el eje Y, necesitamos una escala en Y de 1/240 = 0.004167. =) | ||
| - | ===== Recursos ===== | ||
| - | |||
| - | Código fuente: [[https:// | ||
| - | |||
| - | Fichero de configuración: | ||