Fundamentals
Core
Master
Shaders
Portafolio 3D
Hemos aprendido mucho hasta ahora, y ahora es el momento de juntar todo. En esta lecci贸n, 隆crearemos un portafolio atractivo y responsivo!
No te preocupes, tambi茅n aprenderemos cosas nuevas a lo largo del camino 馃槉
Lo que construiremos
Versi贸n de escritorio:
Versi贸n m贸vil:
No te limites a construir exactamente lo mismo. Si茅ntete libre de a帽adir tu propio toque.
隆Espero que est茅s emocionado! 隆Empecemos! 馃殌
Paquete inicial
Para concentrarnos en lo esencial, el paquete inicial para este proyecto final contiene todos los modelos 3D, animaciones, fuentes y texturas que utilizaremos. (Excepto por el avatar, llegaremos a eso en un momento)
Los componentes React para cada modelo han sido generados con gltfjsx.
Solo agregu茅 una l铆nea en el comentario para acreditar al autor y hacer un seguimiento del origen de cada modelo:
/* Auto-generated by: https://github.com/pmndrs/gltfjsx Command: npx [email protected] public/models/Balloon.glb -o src/components/Balloon.jsx -r public Balloon by Poly by Google [CC-BY] (https://creativecommons.org/licenses/by/3.0/) via Poly Pizza (https://poly.pizza/m/d1gDDhM7pTf) */
Por el momento, esto es lo que parece el paquete inicial cuando ejecutamos la aplicaci贸n:
Un cubo blanco y un fondo gris muy claro.
隆No perdamos m谩s tiempo y comencemos a construir nuestro portafolio!
Avatar 3D
Usaremos Ready Player Me para crear nuestro avatar. Es un servicio gratuito que permite a los desarrolladores a帽adir avatares a sus aplicaciones.
Ve a Ready Player Me, crea una cuenta o inicia sesi贸n si ya tienes una, y crea tu avatar.
Puedes usar una foto como referencia o crear un nuevo avatar desde cero.
El editor ofrece una amplia gama de opciones para que tu avatar se parezca a ti.
Una vez que est茅s satisfecho con tu avatar, haz clic en el bot贸n Enter Hub en la esquina superior derecha.
En el Hub, haz clic en el icono de descarga a la izquierda del bot贸n Customize look.
Y haz clic en Download Avatar as .glb file.
Deber铆as tener un archivo cuyo nombre comience con el id de tu avatar y termine con .glb
.
Por ejemplo, el m铆o es 646d9dcdc8a5f5bddbfac913.glb
Copia este archivo en la carpeta public/models
de tu proyecto.
Luego ejecuta el siguiente comando en tu terminal:
npx gltfjsx public/models/646d9dcdc8a5f5bddbfac913.glb -o src/components/Avatar.jsx -k -r public
Reemplaza 646d9dcdc8a5f5bddbfac913.glb
con el nombre de tu archivo de avatar.
Un recordatorio r谩pido de los par谩metros que usamos:
-o
para especificar el archivo de salida-k
para mantener los nombres de los nodos-r
para especificar la ruta ra铆z para el modelo
En el archivo src/components/Avatar.jsx
, renombra el componente a Avatar
:
// ... export function Avatar(props) { // ... }
Ahora podemos reemplazar el componente Cube
en src/Experience.jsx
con nuestro componente Avatar
:
import { Environment } from "@react-three/drei"; import { Avatar } from "./Avatar"; export const Experience = () => { return ( <> <Environment preset="sunset" /> <Avatar /> </> ); };
隆Ahora deber铆as ver tu elegante avatar en el centro de la escena!
Algunos estudiantes reportaron problemas con el archivo generado por el CLI local de
gltfjsx
. Si tienes alg煤n problema al intentar mostrar el Avatar, puedes usar la versi贸n en l铆nea para generar el componenteAvatar.jsx
.Aseg煤rate de renombrar el nombre del componente y de que la ruta del modelo sea correcta. Debes a帽adir
/models/
antes del nombre del modelo en el hookuseGLTF
y la funci贸n de pre-carga al final del archivo.Para mi avatar, ser铆a:
// ... export function Avatar(props) { const { nodes, materials } = useGLTF("/models/646d9dcdc8a5f5bddbfac913.glb"); // ...
y al final del archivo:
// ... useGLTF.preload("/models/646d9dcdc8a5f5bddbfac913.glb");
Animaci贸n de Mixamo
Usaremos Mixamo para a帽adir animaciones a nuestro avatar. Gracias a Ready Player Me, ya tenemos un avatar con rig, as铆 que el proceso ser谩 muy sencillo.
Ve a Mixamo, crea una cuenta o inicia sesi贸n si ya tienes una, y dir铆gete a animations.
Deber铆as ver animations a la izquierda, y una preview zone a la derecha.
Haz clic en el bot贸n Upload Character, se abrir谩 una ventana modal pero solo acepta archivos .fbx
, .obj
y .zip
. Necesitamos convertir nuestro archivo .glb
a .fbx
.
Ya he proporcionado una versi贸n .fbx
de mi avatar en la carpeta public/models
del paquete de inicio llamado avatar.fbx
. Si deseas usarlo, puedes omitir el siguiente paso.
End of lesson preview
To get access to the entire lesson, you need to purchase the course.