Fundamentals
Core
Master
Shaders
Texturas
Una textura es una imagen que se usa para colorear la superficie de un mesh. Se puede usar para agregar detalles a un objeto 3D.
Una textura se aplica a un mesh usando un material. El material define c贸mo se aplica la textura al mesh y c贸mo interact煤a con la luz.
useTexture
El hook useTexture
de Drei se utiliza para cargar una textura desde un archivo. Devuelve un objeto Texture
que se puede usar en un material.
Vamos a cargar el archivo de textura desde el pack de inicio ubicado en public/textures/
:
import { useTexture } from "@react-three/drei"; export const Experience = () => { const texture = useTexture("textures/PavingStones130_1K_Color.jpg"); return ( <> <mesh> <boxGeometry /> <meshStandardMaterial map={texture} /> </mesh> </> ); };
La textura se aplica al mesh usando la propiedad map
del material.
Nuestra textura de adoquines se aplica al cubo.
Como hemos visto con useGLTF
, useTexture
utiliza internamente useLoader
con TextureLoader
para cargar la textura.
Si queremos escalar la textura, podemos usar la propiedad repeat
de la textura:
import { useTexture } from "@react-three/drei"; import * as THREE from "three"; export const Experience = () => { const texture = useTexture("textures/PavingStones130_1K_Color.jpg"); texture.repeat.set(3, 3); texture.wrapS = texture.wrapT = THREE.RepeatWrapping; // ... };
Las propiedades wrapS
y wrapT
definen c贸mo se repite la textura en el mesh. Por defecto, la textura se clampa al borde del mesh. Aqu铆 usamos RepeatWrapping
para repetir la textura.
Nuestra textura se repite 3 veces en el cubo.
Si por el contrario queremos estirar la textura, podemos disminuir el valor de repeat
:
End of lesson preview
To get access to the entire lesson, you need to purchase the course.