Um Texture é uma imagem que você pode colocar em qualquer face de uma parte ou união que se repete horizontal e verticalmente no tamanho da superfície. Em contraste, um Decal é uma imagem que se estica para se ajustar à área da superfície de uma parte ou união. Depois de adicionar um objeto Texture ou Decal a uma parte ou união, você pode:
Alterar a propriedade Color3 da textura ou decalque para definir um tom de cor usando códigos de cor RGB.
Alterar a propriedade Transparency da textura ou decalque para um valor entre o padrão de 0 (totalmente visível) e 1 (invisível).




Criar texturas ou decalques
Para criar uma textura ou decalque, você deve adicionar um objeto Texture ou Decal a uma parte ou união. Você pode importar imagens para texturas e decalques no Studio para uso entre jogos, e distribuí-las para a Loja do Criador. Uma vez que você importa a imagem, o Studio atribui a ela um ID de ativo exclusivo.
Para adicionar uma textura ou decalque a uma parte ou união:
Na janela Properties, navegue até a propriedade Face e escolha uma face (Top, Bottom, Front, Back, Left ou Right).
- OPCIONALPara ajudar a escolher a face correta, clique com o botão direito na parte/união e selecione Mostrar Indicador de Orientação. Isso exibe um círculo 🅕, uma linha azul conectada à face frontal do objeto e uma seta verde que aponta na direção da face superior do objeto.

Selecione a propriedade ColorMapContent e aplique uma imagem através de qualquer um dos seguintes métodos:
- Selecione qualquer textura ou decalque que você tenha enviado anteriormente.
- Digite um ID de ativo no campo.
- OPCIONALDefina a propriedade Transparency para qualquer valor entre o padrão de 0 (totalmente visível) e 1 (invisível).

Transparency: 0 
Transparency: 0.6
Personalizar texturas
Diferente dos decalques, texturas fornecem funcionalidades adicionais para escalar, deslocar e animar a imagem fonte.
Escalar texturas
O tamanho da parte não afeta a textura. Em vez disso, escalar uma parte apenas aumenta ou diminui o número de vezes que a textura se repete.
As propriedades StudsPerTileU e StudsPerTileV determinam o tamanho de cada "tile" em studs. StudsPerTileU determina o tamanho horizontal da textura, enquanto StudsPerTileV determina o tamanho vertical da textura.

Deslocar texturas
Se você deseja mais controle sobre a posição de uma textura, desloque a textura ajustando as propriedades OffsetStudsU (horizontal) e OffsetStudsV (vertical). Isso também é útil para animação.

Animar texturas
Usando TweenService, você pode tweenar propriedades de textura como OffsetStudsU e StudsPerTileV para alcançar superfícies animadas. Por exemplo, se você aplicar duas texturas de névoa a um container e anima-las com o script a seguir, você pode conseguir a aparência de uma névoa em movimento em camadas.
local TweenService = game:GetService("TweenService")local texture1 = script.Parent.Texture1local texture2 = script.Parent.Texture2local tweenInfo1 = TweenInfo.new(8, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut, -1)local tween1 = TweenService:Create(texture1, tweenInfo1, {OffsetStudsV=50})local tweenInfo2 = TweenInfo.new(7, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut, -1, true)local tween2 = TweenService:Create(texture2, tweenInfo2, {OffsetStudsU=50, StudsPerTileU=55, StudsPerTileV=45})tween1:Play()tween2:Play()
Streaming de texturas
Streaming de texturas carrega dinamicamente texturas com base na distância e no ângulo de visão da câmera, o que permite que você use texturas com mais liberdade sem se preocupar com a escala entre dispositivos. O motor carrega primeiro texturas de qualidade básica, em ordem de importância, e então aumenta progressivamente a qualidade de cada textura até a memória disponível no dispositivo. O streaming de texturas é ativado automaticamente, então você não precisa tomar nenhuma providência para se beneficiar disso.

Benefícios
- Tempos de carregamento percebidos mais rápidos e downloads menores: Texturas aparecem quase imediatamente com uma qualidade básica, e o motor baixa apenas os detalhes que precisa, comprimindo-os tanto em trânsito quanto no cache de disco local.
- Maior qualidade onde importa: O motor estima continuamente quão importante cada objeto é, como pela quantidade de espaço na tela que ocupa, e usa o orçamento de memória nas texturas, para que os objetos mais proeminentes recebam o mais alto nível de detalhe.
- Menos falhas por falta de memória: Como o motor se mantém dentro de um orçamento de memória e pode reduzir a qualidade da textura quando a memória está baixa, os jogadores têm muito menos probabilidade de falhar devido a picos de memória de textura.
O streaming de texturas funciona com MeshPart (com e sem pele), SurfaceAppearance, Texture, Decal, MaterialVariant, Beam, ParticleEmitter e os materiais básicos aplicados às instâncias de PartOperation e BasePart.
Melhores práticas
- Prefira texturas únicas e individuais em vez de atlases de textura, a menos que o atlas seja aplicado a partes agrupáveis; solicitar uma resolução alta para uma textura em um atlas carrega o atlas inteiro naquela resolução.
- Use densidade de texel quase uniforme em seus meshes mapeados em UV para que o motor possa selecionar a melhor resolução para cada textura.
- Continue gerenciando a memória de textura cuidadosamente para tipos de instância que o streaming de texturas ainda não suporta.


