Utilizando TLight – FireMonkey

Neste artigo aprenderemos a usar os componentes "TLight" e "TCube" do Firemonkey.

Hoje iremos realizar um efeito de iluminação com o componente TLight da biblioteca "FireMonkey", que suporta a criação de aplicativos facilmente e intuitivamente como temos visto no Delphi por anos. O FMX também é ideal para rápido desenvolvimento de software, com elementos tridimensionais. Apenas inserindo um objeto geométrico "TCube", alterando suas propriedades com o cursor do mouse, somos capazes de gerar bons efeitos facilmente.

Quando nos referimos a algum objeto em 3D, logo associamos a altura, largura e comprimento como parte do mesmo. O FMX possui dois tipos de projetos: o "FireMonkey 3D Application" e também o "FireMonkey HD Application"; os dois tipos de projetos dão-nos a possibilidade de trabalhar em 3D, sendo que os Forms do "FireMonkey 3D Application" já vem apto para cenas tridimensionais, e nos projetos "FireMonkey HD Application" é necessário adicionar um componente chamado "TViewport3D". Vou mostrar a estrutura dos dois tipos de projetos 3D e HD mais vamos criar um novo HD e inclua os seguintes componentes um TViewport3D e dentro dele um TCube um TLight e um TFloatAnimation dentro do TCube conforme estrutura abaixo:


Figura 1. Estrutura dos projetos

Alterando propriedades dos componentes:

Propriedades Cube1

Propriedades Light1

Propriedades FloatAnimation1

Depois de realizado o processo, teremos um resultado como este:


Figura 2. Posição dos Componentes

Agora, vamos fazer uma suposição, incluiremos um botão no Form e habilitaremos essa animação somente quando a opção for selecionada através do botão. Em um projeto HD você teria sucesso. Porém em um projeto 3D, não é possível a inclusão um botão diretamente no Form 3D. Segue detalhes na observação abaixo.

Observação Importante: em um aplicativo 3D é impossível usar diretamente componentes como botões, combobox, grid, etc... No entanto, há uma maneira muito simples para lidar com isso. Para isso teremos uma ligação entre as cenas 3D e 2D. O FireMonkey nos fornece o componente "TLayer3D", que foi projetado apenas para isso.

Para não estender muito o artigo, segue no código fonte projeto HD e 3D, facilitando o entendimento de como usar o componente TLayer3D.

Espero que tenham gostado, e que os códigos e dicas tenham facilitado o trabalho e estudo de vocês.

Muito obrigado. Fico por aqui, e espero por vocês na próxima! Grande abraço.

Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados