Creando aplicaciones en 3D con Firemonkey

En este post vamos a ver lo fácil que es realizar una aplicación simple en 3D con Firemonkey.
Comenzamos desde el menú File - New - Multi Device Application Delphi - 3D Application


Añadimos un componente llamado tDummy que se comportará como un contenedor de otros componentes en Firemonkey 3D. Este componente es el equivalente al tLayout en el mundo de Firemonkey 2D.
Con tDummy podremos mover, girar, rotar y escalar los objetos que le asociemos y será el objeto del que descenderán casi todos los que coloquemos en el form, esto nos dará una forma muy sencilla de manipular una escena.


Ahora tenemos que seleccionar el componente tSphere y colocarlo de tal forma que cuelgue del componente tDummy.
Seleccionamos tDummy y cambiamos la propiedad Scale X,Y,Z al valor 5.
Desde la vista Structure tiene que quedar así:

Seguidamente seleccionamos el componente tTextureMaterialSource y lo colocamos en el form.
Después hacemos clic en tSphere y asociamos la propiedad "MaterialSource" al componente tTextureMaterialSource.


Ahora tenemos que crear un bitmap para la textura. Este puede ser una imagen en formato jpg, png, bmp, un color sólido, etc.
Pero para crear un efecto espectacular vamos a cargar la imagen de la tierra vista desde el espacio.
Para ello hay que seleccionar el componente tTextureMaterialSource1 y dentro de él hacer clic en Texture - Edit y seleccionar la imagen en formato *.jpg


 Yo la he descargado desde aquí: http://visibleearth.nasa.gov/
Ahora ya podremos ejecutar la aplicación y veremos  el globo terráqueo en 3D,
 
Pero para dar más realismo y hacer que gire  en 3D lo que hay que hacer es crear una animación, que se hace de una forma muy sencilla, añadiendo el componente tFloatAnimation y teniendo la precaución de quede "colgado" del tShpere en la vista de Structure.

Dentro del componente tFloatAnimation modificamos las propiedades que os he marcado en amarillo:
-Duration = 2
-Enabled = True
-Loop = true
-PropertyName = RotationAngle.Y
-StartValue=1
-StopValue=-360







No hay comentarios:

Publicar un comentario