Rating 5.0 out of 5 (1 ratings in Udemy)
What you'll learn
- Primeros pasos con Three js, conocer sus bases
- Crear elementos 3D en HTML
- Crear figuras, cámaras, escenas e iluminación
- Moverse en un entorno 3D
Description
En este curso aprenderás a trabajar con Three.js desde cero con JavaScript, cuando termines el curso podrás crear proyectos sencillos en base a figuras geométricas en 3D animados con iluminación, variados e interactivos.
El mundo 3D es fascinante, y esto lo demuestra la …
Rating 5.0 out of 5 (1 ratings in Udemy)
What you'll learn
- Primeros pasos con Three js, conocer sus bases
- Crear elementos 3D en HTML
- Crear figuras, cámaras, escenas e iluminación
- Moverse en un entorno 3D
Description
En este curso aprenderás a trabajar con Three.js desde cero con JavaScript, cuando termines el curso podrás crear proyectos sencillos en base a figuras geométricas en 3D animados con iluminación, variados e interactivos.
El mundo 3D es fascinante, y esto lo demuestra la cantidad de tecnologías digitales que existen hoy en día, desde variados juegos, hasta entornos completos para desarrollar proyectos en 3D como Blender, Unity, unreal y muchas más; ahora, adentrarte en este mundo está al alcance de tu mano poder empezar a crear tus primeros proyectos 3D.
¿Qué aprenderemos?
A nivel técnico aprenderás ha trabajar con las siguientes características en Three.js:
Sobre Three.js
Escena, cámaras, figuras e iluminación
Animar figuras aplicando operaciones geométricas y variar el color
Tipos de luces
Tipos de figuras geométricas soportadas
Interactuar con la escena
Obtener información sobre la escena
Trabajar con combinación de materiales
Aplicar sombras
Proyectos o aplicaciones
En cada clase o sección, vamos a ir creando proyectos sencillos variados para avanzar efectivamente:
Un sencillo jardín con iluminación
Escenas con figuras aleatorias
Escenas con figuras geométricas animadas
Escenas con figuras apiladas
Escenas aplicando materiales variados
Escenas aplicando iluminación variada
Escenas aplicando transformaciones geométricas
Escenas con interacción del usuario
****** Clases: ******
Primeros pasos
Preparar entorno
Vamos a preparar nuestro navegador e IDE para el desarrollo.
Primer ejemplo: un Cubo
Vamos a presentar los elementos básicos de three.js creando un cubo y todo lo que esto conlleva.
Demo: comparación de Three.js con otras herramientas 3D como Blender
Vamos a hacer una comparación entre herramientas 3D.
Ver el wireframe
Vamos a convocar una opción para ver el alambrado.
Generar una esfera
Vamos a generar nuestra siguiente figura geométrica, una esfera.
Ejercicio: Alinear una esfera y cubo y que sean del mismo tamaño
Vas a alinear ambas figuras geométricas y colocarles el mismo tamaño.
Ejercicio: Rotaciones
Veremos cómo usar las rotaciones.
Generar un plano
Vamos a generar un plano y ubicarlo debajo de nuestras figuras.
Generar axis
Vamos a generar un nuevo elemento, de ayuda esta vez, el eje cartesiano en 3D.
lookAt camera: Colocar la mira de la camara sobre la escena
Aprenderemos a configurar la cámara para que apunte a nuestra escena, en esencia a cualquier cosa que tenga un vector 3D.
Publicar en git
Proyecto: Jardín
Script esqueleto
Vamos a crear una plantilla para futuros proyectos.
Crear la base y barras
Vamos a crear la base y los lados del jardín.
Crear arbol
Vamos a crear un árbol el cual consta de una caja y una esfera.
Crear casa
Vamos a crear una casa la cual consta de un cilindro y un cono.
Refactorizar código
Vamos a organizar nuestra aplicación en funciones.
Pequeños detalles
Vamos a terminar la app adaptando pequeños detalles.
Aspectos Generales
Snippets para VSC
Vamos a instalar una extensión para trabajar con Three.js.
Primeros pasos con la iluminación: materiales, y helpers
Vamos a conocer el uso de los materiales que pueden trabajar con las luces.
Proyectar sombras
Aprenderemos a proyectar sombras.
Primeros pasos con las animaciones: Desplazamientos
Vamos a crear una animación en la cual haremos que una esfera rebote en el entorno 3D.
Primeros pasos con las animaciones: Rotaciones
Vamos a rotar el cubo en todos sus ejes.
Tarea: Adaptar luces a la escena con sombras
Vas a adaptar unas luces a la escena con sombra.
Primeros pasos con las animaciones: Escalado
Vamos a escalar el cubo en todos sus ejes.
Primeros pasos con las animaciones: Color, pruebas
Vamos a realizar algunas pruebas para cambiar el color de un objeto.
Primeros pasos con las animaciones: Color, tweenmax
Vamos a realizar una animación para cambiar los colores de un objeto.
Re-escalar ventana y escena
Aprenderemos a reescalar la escena cuando cambia el tamaño de la ventana.
GUI Hacer experimentos fácilmente
Vamos a agregar elementos de UI para variar valores de las variables fácilmente y aplicarlas en las animaciones.
Extra: Color del renderizado
Conoceremos la forma en la cual podemos cambiar el color del render.
Extra: Luz ambiental
Conoceremos cómo podemos habilitar una luz ambiental.
Proyecto: Interactuar con la escena
Interactuar con la escena con campos de formulario, cambiar color
Vamos a realizar algunas pruebas con los campos de formulario para interactuar con la escena.
Interactuar con la escena con campos de formulario, cambiar color parte 2
Vamos a cambiar el color de un cubo cada vez que seleccionemos un radios y aplicarle el valor que tenga establecido el radio.
Interactuar con la escena con campos de formulario, cambiar color parte 3
Vamos a cambiar el color de manera animada.
Interactuar con la escena, variar posicionamiento
Vamos a variar la posición del cubo con las flechas del teclado.
Interactuar con la escena, Crear un panel de opciones
Vamos a crear un banner para definir las opciones que vamos a poder realizar en la escena.
Interactuar con la escena, variar rotación
Vamos a colocar la opción de rotación en el panel.
Interactuar con la escena, variar escala
Vamos a colocar la opción de escala en el panel.
Interactuar con la escena, animar
Vamos a animar la escena para que los cambios no sean bruscos.
Interactuar con la escena, agregar luces y un plano
Vamos a agregar luces y sombras.
Mover la cámara, lookAt
Vamos a cambiar la invocación de la función lookAt para la cámara para que se actualice la posición cada vez que exista un cambio.
Mover la cámara, variar posición
Vamos a indicar la cámara como elemento desplazable.
Mover la luz
Con los mismos controles que usamos para mover la cámara, vamos a mover la luz.
Extra: TrackballControls
Vamos a conocer un paquete que nos permite hacer una interacción fácilmente con la escena.
Proyecto: Agregar figuras geométricas bajo demanda
Proyecto base
Vamos a crear un proyecto basado en otro anterior.
Agregar un cubo mediante un botón
Vamos a agregar un cubo mediante un botón.
Variar tamaño, color y posición Y del cubo
Vamos aspectos del cubo para que sea más dinámico.
Animar la escena con rotaciones
Vamos a adaptar las animaciones de rotaciones del cubo en la escena.
Agregar esferas o cubos en aleatorio
Vamos a agregar otro tipo de elementos geométricos.
Número de objetos
Vamos a agregar un escuchador para detectar cuantos elementos tenemos en la escena.
Remover cubos y esferas
Vamos a crear una función para remover figuras de la escena.
Publicar en Git
Proyectos
Escena caótica (Rotar escena) - modificar proyecto sección anterior
Seno y coseno - modificar proyecto sección anterior
Escena orden - modificar proyecto sección anterior
Neblina - modificar proyecto anterior
Proyecto: Luces
Configuraciones iniciales
Configuración inicial del proyecto que vamos a duplicar.
Luz Ambiental
Crearemos una configuración personalizable mediante la GUI de la luz ambiental.
Control Spotlight
Asignaremos una nueva fuente de luz con su controlador.
Control Point Light
Asignaremos una nueva fuente de luz con su controlador y una sencilla animación.
Regular la intensidad de la luces y suspender sombreado
Vamos a realizar una adaptación para apagar las sombras cuando no tenemos intensidad en la luz.
Point Light: decay, distance y MeshPhongMaterial
Vamos a crear un efecto de foco sobre una mesa empleando los elementos señalados anteriormente.
Control Directional Light
Vamos a crear la luz de tipo direccional.
Proyecto: Materiales
MeshDepthMaterial: Color basado en la cercanía
Presentaremos un material con el cual podemos variar la intensidad del color según la cercanía o lejanía de la cámara.
MultiMaterialObject: Combinar materiales
Aprenderemos a combinar materiales.
Geometría
Geometrías básicas
Veremos las geometrías básicas para nuestra escena.
Cámaras
Cámaras ortogonal y perspectiva
Veremos el uso de las configuraciones de las cámaras que podemos usar en Three.js.
Paid
Self paced
Beginner Level
Spanish (Spain)
25
Rating 5.0 out of 5 (1 ratings in Udemy)
Go to the Course