Skip to content

Get the full experience in the app More learning modes, track your progress, detailed topics

Start Now

Desarrollo WebXR

Construye experiencias inmersivas de VR y AR para el navegador usando WebXR, A-Frame, Three.js y Babylon.js. Aprende a crear aplicaciones XR multiplataforma sin requisitos de tienda de aplicaciones.

Intermediate
12 modules
420 min
4.7

Overview

Construye experiencias inmersivas de VR y AR para el navegador usando WebXR, A-Frame, Three.js y Babylon.js. Aprende a crear aplicaciones XR multiplataforma sin requisitos de tienda de aplicaciones.

What you'll learn

  • Understand the WebXR Device API and session management
  • Build VR experiences using A-Frame's declarative approach
  • Create custom XR applications with Three.js and WebXR
  • Implement hand tracking and controllers in browser XR
  • Deploy and optimize WebXR content for various devices

Course Modules

12 modules
1

Introducción a WebXR

Entendiendo VR/AR basado en navegador y la API de Dispositivos WebXR.

Key Concepts
WebXR immersive-vr immersive-ar XRSession XRFrame

Objetivos de Aprendizaje

Al finalizar este módulo, serás capaz de:

  • Definir y explicar WebXR
  • Definir y explicar immersive-vr
  • Definir y explicar immersive-ar
  • Definir y explicar XRSession
  • Definir y explicar XRFrame
  • Aplicar estos conceptos a ejemplos y escenarios del mundo real
  • Analizar y comparar los conceptos clave presentados en este módulo

Introducción

WebXR trae la realidad virtual y aumentada a los navegadores web, eliminando descargas de apps y aprobaciones de tiendas. La API de Dispositivos WebXR es un estándar W3C implementado en Chrome, Edge, Firefox y Safari, proporcionando acceso a visores VR y dispositivos con capacidad AR directamente desde páginas web. Los usuarios simplemente hacen clic en un enlace para entrar en experiencias inmersivas. WebXR maneja la gestión de sesiones, bucles de renderizado, dispositivos de entrada y seguimiento espacial. El ecosistema incluye frameworks como A-Frame (HTML declarativo), Three.js (biblioteca 3D de JavaScript) y Babylon.js (motor de juegos completo). WebXR democratiza el desarrollo XR—cualquiera con habilidades web puede crear contenido inmersivo que alcanza miles de millones de dispositivos.

En este módulo, exploraremos el fascinante mundo de Introducción a WebXR. Descubrirás conceptos clave que forman la base de este tema. Cada concepto se basa en el anterior, así que presta mucha atención y toma notas a medida que avanzas. Al final, tendrás una comprensión sólida de este importante tema.

Este tema es esencial para entender cómo funciona esta materia y cómo los expertos organizan su conocimiento. ¡Sumerjámonos y descubramos qué hace este tema tan importante!


WebXR

¿Qué es WebXR?

Definición: API del W3C para VR/AR en navegadores web

Cuando los expertos estudian webxr, descubren detalles fascinantes sobre cómo funcionan los sistemas. Este concepto se conecta con muchos aspectos del tema que los investigadores investigan todos los días. Comprender webxr nos ayuda a ver el panorama general. Piensa en ejemplos cotidianos para profundizar tu comprensión — podrías sorprenderte de cuán a menudo encuentras este concepto en el mundo que te rodea.

Punto Clave: WebXR es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


immersive-vr

¿Qué es immersive-vr?

Definición: Modo de sesión para experiencias VR completas

El concepto de immersive-vr ha sido estudiado durante muchas décadas, llevando a descubrimientos revolucionarios. La investigación en esta área continúa avanzando nuestra comprensión en cada escala. Al aprender sobre immersive-vr, estás construyendo una base sólida que respaldará tus estudios en temas más avanzados. Expertos de todo el mundo trabajan para descubrir nuevos conocimientos sobre immersive-vr cada día.

Punto Clave: immersive-vr es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


immersive-ar

¿Qué es immersive-ar?

Definición: Modo de sesión para AR con el mundo real

Para apreciar completamente immersive-ar, es útil considerar cómo funciona en aplicaciones del mundo real. Esta naturaleza universal es lo que lo convierte en un concepto tan fundamental en este campo. A medida que aprendas más, intenta identificar ejemplos de immersive-ar en diferentes contextos a tu alrededor.

Punto Clave: immersive-ar es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


XRSession

¿Qué es XRSession?

Definición: Conexión activa al dispositivo XR

Comprender xrsession nos ayuda a entender muchos procesos que afectan nuestra vida diaria. Los expertos usan su conocimiento de xrsession para resolver problemas, desarrollar nuevas soluciones y mejorar resultados. Este concepto tiene aplicaciones prácticas que van mucho más allá del aula.

Punto Clave: XRSession es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


XRFrame

¿Qué es XRFrame?

Definición: Cuadro único de datos de renderizado XR

El estudio de xrframe revela la elegante complejidad de cómo funcionan las cosas. Cada nuevo descubrimiento abre puertas para comprender otros aspectos y cómo el conocimiento en este campo ha evolucionado con el tiempo. Al explorar este concepto, intenta conectarlo con lo que ya sabes — descubrirás que todo está interconectado de maneras hermosas y sorprendentes.

Punto Clave: XRFrame es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


🔬 Profundización: Tipos de Sesión y Ciclo de Vida de WebXR

WebXR soporta múltiples modos de sesión: "immersive-vr" para visores VR con reemplazo completo del entorno, "immersive-ar" para AR con passthrough de cámara y comprensión del mundo, e "inline" para 3D no inmersivo en pantallas regulares. Solicita sesiones con navigator.xr.requestSession(modo, opciones). Los requisitos de características especifican necesidades como "local-floor" (seguimiento a escala de habitación), "hand-tracking", o "hit-test" (detección de superficies AR). El ciclo de vida de la sesión: solicitar sesión, configurar contexto de renderizado WebGL con xrCompatible: true, crear XRWebGLLayer, iniciar el bucle de renderizado con session.requestAnimationFrame(). Cada cuadro proporciona XRFrame con pose del visor, fuentes de entrada y espacios de referencia. Termina las sesiones elegantemente con session.end() y maneja eventos de terminación de sesión.

Este es un tema avanzado que va más allá del material central, pero comprenderlo te dará una apreciación más profunda del tema. Los investigadores continúan estudiando esta área, y se hacen nuevos descubrimientos todo el tiempo.

¿Sabías que? ¡WebXR evolucionó de WebVR, que Mozilla propuso por primera vez en 2014. El cambio de marca a "WebXR" en 2018 reflejó soporte expandido para AR, no solo VR!


Conceptos Clave de un Vistazo

Concepto Definición
WebXR API del W3C para VR/AR en navegadores web
immersive-vr Modo de sesión para experiencias VR completas
immersive-ar Modo de sesión para AR con el mundo real
XRSession Conexión activa al dispositivo XR
XRFrame Cuadro único de datos de renderizado XR

Preguntas de Comprensión

Pon a prueba tu comprensión respondiendo estas preguntas:

  1. Con tus propias palabras, explica qué significa WebXR y da un ejemplo de por qué es importante.

  2. Con tus propias palabras, explica qué significa immersive-vr y da un ejemplo de por qué es importante.

  3. Con tus propias palabras, explica qué significa immersive-ar y da un ejemplo de por qué es importante.

  4. Con tus propias palabras, explica qué significa XRSession y da un ejemplo de por qué es importante.

  5. Con tus propias palabras, explica qué significa XRFrame y da un ejemplo de por qué es importante.

Resumen

En este módulo, exploramos Introducción a WebXR. Aprendimos sobre webxr, immersive-vr, immersive-ar, xrsession, xrframe. Cada uno de estos conceptos juega un papel crucial en la comprensión del tema más amplio. Recuerda que estas ideas son bloques de construcción — cada módulo se conecta con el siguiente, ayudándote a construir una imagen completa. ¡Sigue repasando estos conceptos y estarás bien preparado para lo que viene!

2

Empezando con A-Frame

Construyendo experiencias VR con sintaxis declarativa similar a HTML.

Key Concepts
A-Frame a-scene Primitiva Componente Entidad

Objetivos de Aprendizaje

Al finalizar este módulo, serás capaz de:

  • Definir y explicar A-Frame
  • Definir y explicar a-scene
  • Definir y explicar Primitiva
  • Definir y explicar Componente
  • Definir y explicar Entidad
  • Aplicar estos conceptos a ejemplos y escenarios del mundo real
  • Analizar y comparar los conceptos clave presentados en este módulo

Introducción

A-Frame es un framework web para construir experiencias VR usando HTML. Creado por Mozilla, proporciona un enfoque declarativo donde las escenas 3D se construyen con elementos HTML personalizados como , , . ¡No se requiere JavaScript para escenas básicas—solo HTML! A-Frame está construido sobre Three.js, dando acceso a todo su poder cuando se necesita. Incluye una sola etiqueta de script para habilitar VR en cualquier sitio web. La arquitectura entidad-componente permite extender primitivas con componentes: . A-Frame maneja entrada VR, renderizado e input automáticamente. Es el camino más rápido de una idea a una experiencia inmersiva, perfecto para prototipado, educación y proyectos enfocados en contenido.

En este módulo, exploraremos el fascinante mundo de Empezando con A-Frame. Descubrirás conceptos clave que forman la base de este tema. Cada concepto se basa en el anterior, así que presta mucha atención y toma notas a medida que avanzas. Al final, tendrás una comprensión sólida de este importante tema.

Este tema es esencial para entender cómo funciona esta materia y cómo los expertos organizan su conocimiento. ¡Sumerjámonos y descubramos qué hace este tema tan importante!


A-Frame

¿Qué es A-Frame?

Definición: Framework HTML para construir experiencias VR

Cuando los expertos estudian a-frame, descubren detalles fascinantes sobre cómo funcionan los sistemas. Este concepto se conecta con muchos aspectos del tema que los investigadores investigan todos los días. Comprender a-frame nos ayuda a ver el panorama general. Piensa en ejemplos cotidianos para profundizar tu comprensión — podrías sorprenderte de cuán a menudo encuentras este concepto en el mundo que te rodea.

Punto Clave: A-Frame es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


a-scene

¿Qué es a-scene?

Definición: Elemento raíz que contiene la experiencia VR

El concepto de a-scene ha sido estudiado durante muchas décadas, llevando a descubrimientos revolucionarios. La investigación en esta área continúa avanzando nuestra comprensión en cada escala. Al aprender sobre a-scene, estás construyendo una base sólida que respaldará tus estudios en temas más avanzados. Expertos de todo el mundo trabajan para descubrir nuevos conocimientos sobre a-scene cada día.

Punto Clave: a-scene es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Primitiva

¿Qué es Primitiva?

Definición: Entidad preconstruida como a-box, a-sphere

Para apreciar completamente primitiva, es útil considerar cómo funciona en aplicaciones del mundo real. Esta naturaleza universal es lo que lo convierte en un concepto tan fundamental en este campo. A medida que aprendas más, intenta identificar ejemplos de primitiva en diferentes contextos a tu alrededor.

Punto Clave: Primitiva es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Componente

¿Qué es Componente?

Definición: Comportamiento reutilizable adjunto a entidades

Comprender componente nos ayuda a entender muchos procesos que afectan nuestra vida diaria. Los expertos usan su conocimiento de componente para resolver problemas, desarrollar nuevas soluciones y mejorar resultados. Este concepto tiene aplicaciones prácticas que van mucho más allá del aula.

Punto Clave: Componente es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Entidad

¿Qué es Entidad?

Definición: Objeto de propósito general que aloja componentes

El estudio de entidad revela la elegante complejidad de cómo funcionan las cosas. Cada nuevo descubrimiento abre puertas para comprender otros aspectos y cómo el conocimiento en este campo ha evolucionado con el tiempo. Al explorar este concepto, intenta conectarlo con lo que ya sabes — descubrirás que todo está interconectado de maneras hermosas y sorprendentes.

Punto Clave: Entidad es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


🔬 Profundización: Primitivas y Componentes de A-Frame

Las primitivas de A-Frame envuelven objetos 3D comunes: , , , , , , , . Cada una acepta atributos para posición, rotación, escala y material. La posición usa formato "x y z": position="0 1.5 -3". El sistema de componentes añade comportamientos: animation, sound, look-controls, wasd-controls. Múltiples componentes se adjuntan como atributos: . El sistema de gestión de assets precarga recursos: contiene ,

Este es un tema avanzado que va más allá del material central, pero comprenderlo te dará una apreciación más profunda del tema. Los investigadores continúan estudiando esta área, y se hacen nuevos descubrimientos todo el tiempo.

¿Sabías que? ¡A-Frame fue creado durante un hackathon de Mozilla en 2015. El equipo quería hacer VR tan fácil como escribir HTML, y la primera versión se construyó en solo unos días!


Conceptos Clave de un Vistazo

Concepto Definición
A-Frame Framework HTML para construir experiencias VR
a-scene Elemento raíz que contiene la experiencia VR
Primitiva Entidad preconstruida como a-box, a-sphere
Componente Comportamiento reutilizable adjunto a entidades
Entidad Objeto de propósito general que aloja componentes

Preguntas de Comprensión

Pon a prueba tu comprensión respondiendo estas preguntas:

  1. Con tus propias palabras, explica qué significa A-Frame y da un ejemplo de por qué es importante.

  2. Con tus propias palabras, explica qué significa a-scene y da un ejemplo de por qué es importante.

  3. Con tus propias palabras, explica qué significa Primitiva y da un ejemplo de por qué es importante.

  4. Con tus propias palabras, explica qué significa Componente y da un ejemplo de por qué es importante.

  5. Con tus propias palabras, explica qué significa Entidad y da un ejemplo de por qué es importante.

Resumen

En este módulo, exploramos Empezando con A-Frame. Aprendimos sobre a-frame, a-scene, primitiva, componente, entidad. Cada uno de estos conceptos juega un papel crucial en la comprensión del tema más amplio. Recuerda que estas ideas son bloques de construcción — cada módulo se conecta con el siguiente, ayudándote a construir una imagen completa. ¡Sigue repasando estos conceptos y estarás bien preparado para lo que viene!

3

Interacciones y Eventos en A-Frame

Añadiendo interacción de usuario con mirada, controladores y seguimiento de manos.

Key Concepts
Cursor Raycaster Fuse laser-controls hand-tracking-controls

Objetivos de Aprendizaje

Al finalizar este módulo, serás capaz de:

  • Definir y explicar Cursor
  • Definir y explicar Raycaster
  • Definir y explicar Fuse
  • Definir y explicar laser-controls
  • Definir y explicar hand-tracking-controls
  • Aplicar estos conceptos a ejemplos y escenarios del mundo real
  • Analizar y comparar los conceptos clave presentados en este módulo

Introducción

A-Frame proporciona múltiples patrones de interacción para VR. La interacción basada en mirada usa el componente cursor: un raycaster desde la cámara que resalta y hace clic en objetos cuando se les mira. El soporte de controladores viene vía componentes laser-controls o hand-controls, creando rayos punteros desde controladores VR. El seguimiento de manos está disponible con el componente hand-tracking-controls. Los objetos interactuables escuchan eventos como click, mouseenter, mouseleave. El sistema de eventos sigue patrones DOM—addEventListener funciona como se espera. Los raycasters pueden personalizarse para interactuar solo con clases específicas. Combina métodos de entrada para accesibilidad: lo que funciona con mirada también debe funcionar con controladores y manos.

En este módulo, exploraremos el fascinante mundo de Interacciones y Eventos en A-Frame. Descubrirás conceptos clave que forman la base de este tema. Cada concepto se basa en el anterior, así que presta mucha atención y toma notas a medida que avanzas. Al final, tendrás una comprensión sólida de este importante tema.

Este tema es esencial para entender cómo funciona esta materia y cómo los expertos organizan su conocimiento. ¡Sumerjámonos y descubramos qué hace este tema tan importante!


Cursor

¿Qué es Cursor?

Definición: Puntero basado en mirada para selección

Cuando los expertos estudian cursor, descubren detalles fascinantes sobre cómo funcionan los sistemas. Este concepto se conecta con muchos aspectos del tema que los investigadores investigan todos los días. Comprender cursor nos ayuda a ver el panorama general. Piensa en ejemplos cotidianos para profundizar tu comprensión — podrías sorprenderte de cuán a menudo encuentras este concepto en el mundo que te rodea.

Punto Clave: Cursor es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Raycaster

¿Qué es Raycaster?

Definición: Rayo invisible detectando intersecciones

El concepto de raycaster ha sido estudiado durante muchas décadas, llevando a descubrimientos revolucionarios. La investigación en esta área continúa avanzando nuestra comprensión en cada escala. Al aprender sobre raycaster, estás construyendo una base sólida que respaldará tus estudios en temas más avanzados. Expertos de todo el mundo trabajan para descubrir nuevos conocimientos sobre raycaster cada día.

Punto Clave: Raycaster es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Fuse

¿Qué es Fuse?

Definición: Selección por tiempo de permanencia después de mirar

Para apreciar completamente fuse, es útil considerar cómo funciona en aplicaciones del mundo real. Esta naturaleza universal es lo que lo convierte en un concepto tan fundamental en este campo. A medida que aprendas más, intenta identificar ejemplos de fuse en diferentes contextos a tu alrededor.

Punto Clave: Fuse es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


laser-controls

¿Qué es laser-controls?

Definición: Componente para punteros de controlador VR

Comprender laser-controls nos ayuda a entender muchos procesos que afectan nuestra vida diaria. Los expertos usan su conocimiento de laser-controls para resolver problemas, desarrollar nuevas soluciones y mejorar resultados. Este concepto tiene aplicaciones prácticas que van mucho más allá del aula.

Punto Clave: laser-controls es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


hand-tracking-controls

¿Qué es hand-tracking-controls?

Definición: Componente para entrada de seguimiento de manos

El estudio de hand-tracking-controls revela la elegante complejidad de cómo funcionan las cosas. Cada nuevo descubrimiento abre puertas para comprender otros aspectos y cómo el conocimiento en este campo ha evolucionado con el tiempo. Al explorar este concepto, intenta conectarlo con lo que ya sabes — descubrirás que todo está interconectado de maneras hermosas y sorprendentes.

Punto Clave: hand-tracking-controls es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


🔬 Profundización: Implementando Componentes Interactivos

Añade cursor para interacción de mirada: . La opción fuse habilita clic por permanencia. Para controladores: . Maneja eventos en componentes: this.el.addEventListener("click", this.onClick). Crea interactividad personalizada con componentes: AFRAME.registerComponent("hover-color", {schema: {color: {default: "red"}}, init() {this.el.addEventListener("mouseenter", () => this.el.setAttribute("color", this.data.color))}}). Para seguimiento de manos: . Los eventos de pellizco (pinchstarted, pinchended) habilitan selección. La biblioteca Super Hands proporciona interacciones de agarrar, estirar y arrastrar listas para usar.

Este es un tema avanzado que va más allá del material central, pero comprenderlo te dará una apreciación más profunda del tema. Los investigadores continúan estudiando esta área, y se hacen nuevos descubrimientos todo el tiempo.

¿Sabías que? ¡La comunidad de A-Frame ha creado más de 200 componentes comunitarios en npm, desde motores de física hasta networking multijugador—puedes añadir características complejas con un solo atributo HTML!


Conceptos Clave de un Vistazo

Concepto Definición
Cursor Puntero basado en mirada para selección
Raycaster Rayo invisible detectando intersecciones
Fuse Selección por tiempo de permanencia después de mirar
laser-controls Componente para punteros de controlador VR
hand-tracking-controls Componente para entrada de seguimiento de manos

Preguntas de Comprensión

Pon a prueba tu comprensión respondiendo estas preguntas:

  1. Con tus propias palabras, explica qué significa Cursor y da un ejemplo de por qué es importante.

  2. Con tus propias palabras, explica qué significa Raycaster y da un ejemplo de por qué es importante.

  3. Con tus propias palabras, explica qué significa Fuse y da un ejemplo de por qué es importante.

  4. Con tus propias palabras, explica qué significa laser-controls y da un ejemplo de por qué es importante.

  5. Con tus propias palabras, explica qué significa hand-tracking-controls y da un ejemplo de por qué es importante.

Resumen

En este módulo, exploramos Interacciones y Eventos en A-Frame. Aprendimos sobre cursor, raycaster, fuse, laser-controls, hand-tracking-controls. Cada uno de estos conceptos juega un papel crucial en la comprensión del tema más amplio. Recuerda que estas ideas son bloques de construcción — cada módulo se conecta con el siguiente, ayudándote a construir una imagen completa. ¡Sigue repasando estos conceptos y estarás bien preparado para lo que viene!

4

Fundamentos de Three.js para WebXR

Entendiendo la biblioteca 3D que impulsa experiencias WebXR.

Key Concepts
Three.js Scene Mesh Geometry Material

Objetivos de Aprendizaje

Al finalizar este módulo, serás capaz de:

  • Definir y explicar Three.js
  • Definir y explicar Scene
  • Definir y explicar Mesh
  • Definir y explicar Geometry
  • Definir y explicar Material
  • Aplicar estos conceptos a ejemplos y escenarios del mundo real
  • Analizar y comparar los conceptos clave presentados en este módulo

Introducción

Three.js es la biblioteca 3D líder de JavaScript, impulsando tanto A-Frame como innumerables experiencias WebXR. Entender los fundamentos de Three.js desbloquea control total sobre el renderizado WebXR. Los conceptos centrales: Scene (contenedor para todos los objetos), Camera (punto de vista hacia la escena), Renderer (dibuja la escena), y Objects (meshes, luces, etc.). Los objetos combinan Geometry (vértices de forma) con Material (apariencia de superficie). El bucle de renderizado actualiza y dibuja la escena continuamente. Three.js abstrae la complejidad de WebGL mientras expone su poder. Para WebXR, Three.js proporciona WebXRManager manejando gestión de sesiones, configuración de renderizado y seguimiento de controladores automáticamente.

En este módulo, exploraremos el fascinante mundo de Fundamentos de Three.js para WebXR. Descubrirás conceptos clave que forman la base de este tema. Cada concepto se basa en el anterior, así que presta mucha atención y toma notas a medida que avanzas. Al final, tendrás una comprensión sólida de este importante tema.

Este tema es esencial para entender cómo funciona esta materia y cómo los expertos organizan su conocimiento. ¡Sumerjámonos y descubramos qué hace este tema tan importante!


Three.js

¿Qué es Three.js?

Definición: Biblioteca JavaScript para gráficos 3D

Cuando los expertos estudian three.js, descubren detalles fascinantes sobre cómo funcionan los sistemas. Este concepto se conecta con muchos aspectos del tema que los investigadores investigan todos los días. Comprender three.js nos ayuda a ver el panorama general. Piensa en ejemplos cotidianos para profundizar tu comprensión — podrías sorprenderte de cuán a menudo encuentras este concepto en el mundo que te rodea.

Punto Clave: Three.js es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Scene

¿Qué es Scene?

Definición: Contenedor que contiene todos los objetos 3D

El concepto de scene ha sido estudiado durante muchas décadas, llevando a descubrimientos revolucionarios. La investigación en esta área continúa avanzando nuestra comprensión en cada escala. Al aprender sobre scene, estás construyendo una base sólida que respaldará tus estudios en temas más avanzados. Expertos de todo el mundo trabajan para descubrir nuevos conocimientos sobre scene cada día.

Punto Clave: Scene es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Mesh

¿Qué es Mesh?

Definición: Objeto combinando geometría y material

Para apreciar completamente mesh, es útil considerar cómo funciona en aplicaciones del mundo real. Esta naturaleza universal es lo que lo convierte en un concepto tan fundamental en este campo. A medida que aprendas más, intenta identificar ejemplos de mesh en diferentes contextos a tu alrededor.

Punto Clave: Mesh es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Geometry

¿Qué es Geometry?

Definición: Definición de forma con vértices

Comprender geometry nos ayuda a entender muchos procesos que afectan nuestra vida diaria. Los expertos usan su conocimiento de geometry para resolver problemas, desarrollar nuevas soluciones y mejorar resultados. Este concepto tiene aplicaciones prácticas que van mucho más allá del aula.

Punto Clave: Geometry es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Material

¿Qué es Material?

Definición: Propiedades de apariencia de superficie

El estudio de material revela la elegante complejidad de cómo funcionan las cosas. Cada nuevo descubrimiento abre puertas para comprender otros aspectos y cómo el conocimiento en este campo ha evolucionado con el tiempo. Al explorar este concepto, intenta conectarlo con lo que ya sabes — descubrirás que todo está interconectado de maneras hermosas y sorprendentes.

Punto Clave: Material es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


🔬 Profundización: Configuración de Escena y Objetos en Three.js

Crea una escena: const scene = new THREE.Scene(). Añade una cámara: const camera = new THREE.PerspectiveCamera(75, width/height, 0.1, 1000). Configura el renderer: const renderer = new THREE.WebGLRenderer({antialias: true}); renderer.xr.enabled = true; document.body.appendChild(renderer.domElement). Crea objetos: const geometry = new THREE.BoxGeometry(); const material = new THREE.MeshStandardMaterial({color: 0xff0000}); const cube = new THREE.Mesh(geometry, material); scene.add(cube). Añade luces: scene.add(new THREE.AmbientLight(0xffffff, 0.5)); scene.add(new THREE.DirectionalLight(0xffffff, 1)). El bucle de renderizado: renderer.setAnimationLoop((time) => {cube.rotation.y += 0.01; renderer.render(scene, camera)}). Para XR, la cámara es gestionada por WebXRManager.

Este es un tema avanzado que va más allá del material central, pero comprenderlo te dará una apreciación más profunda del tema. Los investigadores continúan estudiando esta área, y se hacen nuevos descubrimientos todo el tiempo.

¿Sabías que? ¡Three.js fue creado por Ricardo Cabello (Mr.doob) en 2010 y se ha vuelto tan dominante que se descarga más de 1 millón de veces por semana en npm!


Conceptos Clave de un Vistazo

Concepto Definición
Three.js Biblioteca JavaScript para gráficos 3D
Scene Contenedor que contiene todos los objetos 3D
Mesh Objeto combinando geometría y material
Geometry Definición de forma con vértices
Material Propiedades de apariencia de superficie

Preguntas de Comprensión

Pon a prueba tu comprensión respondiendo estas preguntas:

  1. Con tus propias palabras, explica qué significa Three.js y da un ejemplo de por qué es importante.

  2. Con tus propias palabras, explica qué significa Scene y da un ejemplo de por qué es importante.

  3. Con tus propias palabras, explica qué significa Mesh y da un ejemplo de por qué es importante.

  4. Con tus propias palabras, explica qué significa Geometry y da un ejemplo de por qué es importante.

  5. Con tus propias palabras, explica qué significa Material y da un ejemplo de por qué es importante.

Resumen

En este módulo, exploramos Fundamentos de Three.js para WebXR. Aprendimos sobre three.js, scene, mesh, geometry, material. Cada uno de estos conceptos juega un papel crucial en la comprensión del tema más amplio. Recuerda que estas ideas son bloques de construcción — cada módulo se conecta con el siguiente, ayudándote a construir una imagen completa. ¡Sigue repasando estos conceptos y estarás bien preparado para lo que viene!

5

Integración de Three.js con WebXR

Construyendo aplicaciones VR/AR personalizadas con Three.js y WebXR.

Key Concepts
WebXRManager VRButton Controller Grip Space XRInputSource

Objetivos de Aprendizaje

Al finalizar este módulo, serás capaz de:

  • Definir y explicar WebXRManager
  • Definir y explicar VRButton
  • Definir y explicar Controller
  • Definir y explicar Grip Space
  • Definir y explicar XRInputSource
  • Aplicar estos conceptos a ejemplos y escenarios del mundo real
  • Analizar y comparar los conceptos clave presentados en este módulo

Introducción

El WebXRManager de Three.js proporciona una interfaz de alto nivel para desarrollo WebXR. Habilita XR con renderer.xr.enabled = true, luego añade un botón VR: document.body.appendChild(VRButton.createButton(renderer)) o ARButton para AR. El manager maneja solicitudes de sesión, espacios de referencia y renderizado estéreo. Accede a la sesión XR via renderer.xr.getSession(). Los controladores se obtienen con renderer.xr.getController(index)—son instancias Object3D a las que puedes adjuntar modelos. El bucle de renderizado recibe datos XRFrame automáticamente. Para AR, THREE.XREstimatedLight proporciona iluminación ambiental. Entender esta integración permite construir experiencias WebXR completamente personalizadas aprovechando el extenso conjunto de características de Three.js.

En este módulo, exploraremos el fascinante mundo de Integración de Three.js con WebXR. Descubrirás conceptos clave que forman la base de este tema. Cada concepto se basa en el anterior, así que presta mucha atención y toma notas a medida que avanzas. Al final, tendrás una comprensión sólida de este importante tema.

Este tema es esencial para entender cómo funciona esta materia y cómo los expertos organizan su conocimiento. ¡Sumerjámonos y descubramos qué hace este tema tan importante!


WebXRManager

¿Qué es WebXRManager?

Definición: Manejador de Three.js para sesiones WebXR

Cuando los expertos estudian webxrmanager, descubren detalles fascinantes sobre cómo funcionan los sistemas. Este concepto se conecta con muchos aspectos del tema que los investigadores investigan todos los días. Comprender webxrmanager nos ayuda a ver el panorama general. Piensa en ejemplos cotidianos para profundizar tu comprensión — podrías sorprenderte de cuán a menudo encuentras este concepto en el mundo que te rodea.

Punto Clave: WebXRManager es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


VRButton

¿Qué es VRButton?

Definición: Elemento UI para entrar en modo VR

El concepto de vrbutton ha sido estudiado durante muchas décadas, llevando a descubrimientos revolucionarios. La investigación en esta área continúa avanzando nuestra comprensión en cada escala. Al aprender sobre vrbutton, estás construyendo una base sólida que respaldará tus estudios en temas más avanzados. Expertos de todo el mundo trabajan para descubrir nuevos conocimientos sobre vrbutton cada día.

Punto Clave: VRButton es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Controller

¿Qué es Controller?

Definición: Representación de dispositivo de entrada VR

Para apreciar completamente controller, es útil considerar cómo funciona en aplicaciones del mundo real. Esta naturaleza universal es lo que lo convierte en un concepto tan fundamental en este campo. A medida que aprendas más, intenta identificar ejemplos de controller en diferentes contextos a tu alrededor.

Punto Clave: Controller es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Grip Space

¿Qué es Grip Space?

Definición: Posición donde se sostiene el controlador

Comprender grip space nos ayuda a entender muchos procesos que afectan nuestra vida diaria. Los expertos usan su conocimiento de grip space para resolver problemas, desarrollar nuevas soluciones y mejorar resultados. Este concepto tiene aplicaciones prácticas que van mucho más allá del aula.

Punto Clave: Grip Space es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


XRInputSource

¿Qué es XRInputSource?

Definición: Dispositivo de entrada WebXR con botones y pose

El estudio de xrinputsource revela la elegante complejidad de cómo funcionan las cosas. Cada nuevo descubrimiento abre puertas para comprender otros aspectos y cómo el conocimiento en este campo ha evolucionado con el tiempo. Al explorar este concepto, intenta conectarlo con lo que ya sabes — descubrirás que todo está interconectado de maneras hermosas y sorprendentes.

Punto Clave: XRInputSource es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


🔬 Profundización: Trabajando con Controladores e Entrada

Obtén controladores: const controller1 = renderer.xr.getController(0); scene.add(controller1). Añade representación visual: const grip = renderer.xr.getControllerGrip(0); grip.add(controllerModel); scene.add(grip). Maneja eventos: controller1.addEventListener("selectstart", onSelectStart); controller1.addEventListener("selectend", onSelectEnd). Accede a la entrada en el bucle de renderizado: const session = renderer.xr.getSession(); session.inputSources proporciona array XRInputSource con botones y ejes del gamepad. Para seguimiento de manos: const hand = renderer.xr.getHand(0); hand.add(handModel). Usa XRHandModelFactory para modelos visuales de manos. Las articulaciones de mano son accesibles como hand.joints[nombreArticulacion] proporcionando posición y rotación para cada una de las 25 articulaciones.

Este es un tema avanzado que va más allá del material central, pero comprenderlo te dará una apreciación más profunda del tema. Los investigadores continúan estudiando esta área, y se hacen nuevos descubrimientos todo el tiempo.

¿Sabías que? ¡El VRButton y ARButton de Three.js detectan automáticamente las capacidades del dispositivo y solo aparecen cuando WebXR es soportado—degradación elegante incorporada!


Conceptos Clave de un Vistazo

Concepto Definición
WebXRManager Manejador de Three.js para sesiones WebXR
VRButton Elemento UI para entrar en modo VR
Controller Representación de dispositivo de entrada VR
Grip Space Posición donde se sostiene el controlador
XRInputSource Dispositivo de entrada WebXR con botones y pose

Preguntas de Comprensión

Pon a prueba tu comprensión respondiendo estas preguntas:

  1. Con tus propias palabras, explica qué significa WebXRManager y da un ejemplo de por qué es importante.

  2. Con tus propias palabras, explica qué significa VRButton y da un ejemplo de por qué es importante.

  3. Con tus propias palabras, explica qué significa Controller y da un ejemplo de por qué es importante.

  4. Con tus propias palabras, explica qué significa Grip Space y da un ejemplo de por qué es importante.

  5. Con tus propias palabras, explica qué significa XRInputSource y da un ejemplo de por qué es importante.

Resumen

En este módulo, exploramos Integración de Three.js con WebXR. Aprendimos sobre webxrmanager, vrbutton, controller, grip space, xrinputsource. Cada uno de estos conceptos juega un papel crucial en la comprensión del tema más amplio. Recuerda que estas ideas son bloques de construcción — cada módulo se conecta con el siguiente, ayudándote a construir una imagen completa. ¡Sigue repasando estos conceptos y estarás bien preparado para lo que viene!

6

Cargando Modelos 3D

Importando y mostrando modelos GLTF en escenas WebXR.

Key Concepts
GLTF GLB GLTFLoader Draco AnimationMixer

Objetivos de Aprendizaje

Al finalizar este módulo, serás capaz de:

  • Definir y explicar GLTF
  • Definir y explicar GLB
  • Definir y explicar GLTFLoader
  • Definir y explicar Draco
  • Definir y explicar AnimationMixer
  • Aplicar estos conceptos a ejemplos y escenarios del mundo real
  • Analizar y comparar los conceptos clave presentados en este módulo

Introducción

GLTF (Formato de Transmisión GL) es el estándar para modelos 3D en la web, a menudo llamado el "JPEG del 3D." Empaqueta eficientemente geometría, materiales, texturas y animaciones en un solo archivo (.gltf con recursos separados o .glb como un binario único). El GLTFLoader de Three.js maneja la carga y parseo. Para A-Frame, el componente gltf-model carga modelos declarativamente. Los modelos pueden venir de Sketchfab, Poly Pizza, o ser creados en Blender. La optimización es crucial para WebXR—las GPUs móviles tienen límites estrictos. Usa compresión de texturas (Basis Universal), reduce conteos de polígonos, y combina meshes. Los modelos GLTF correctamente optimizados permiten escenas WebXR ricas y detalladas ejecutándose suavemente en todos los dispositivos.

En este módulo, exploraremos el fascinante mundo de Cargando Modelos 3D. Descubrirás conceptos clave que forman la base de este tema. Cada concepto se basa en el anterior, así que presta mucha atención y toma notas a medida que avanzas. Al final, tendrás una comprensión sólida de este importante tema.

Este tema es esencial para entender cómo funciona esta materia y cómo los expertos organizan su conocimiento. ¡Sumerjámonos y descubramos qué hace este tema tan importante!


GLTF

¿Qué es GLTF?

Definición: Formato de modelo 3D estándar para la web

Cuando los expertos estudian gltf, descubren detalles fascinantes sobre cómo funcionan los sistemas. Este concepto se conecta con muchos aspectos del tema que los investigadores investigan todos los días. Comprender gltf nos ayuda a ver el panorama general. Piensa en ejemplos cotidianos para profundizar tu comprensión — podrías sorprenderte de cuán a menudo encuentras este concepto en el mundo que te rodea.

Punto Clave: GLTF es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


GLB

¿Qué es GLB?

Definición: Formato GLTF binario en un solo archivo

El concepto de glb ha sido estudiado durante muchas décadas, llevando a descubrimientos revolucionarios. La investigación en esta área continúa avanzando nuestra comprensión en cada escala. Al aprender sobre glb, estás construyendo una base sólida que respaldará tus estudios en temas más avanzados. Expertos de todo el mundo trabajan para descubrir nuevos conocimientos sobre glb cada día.

Punto Clave: GLB es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


GLTFLoader

¿Qué es GLTFLoader?

Definición: Cargador de Three.js para modelos GLTF

Para apreciar completamente gltfloader, es útil considerar cómo funciona en aplicaciones del mundo real. Esta naturaleza universal es lo que lo convierte en un concepto tan fundamental en este campo. A medida que aprendas más, intenta identificar ejemplos de gltfloader en diferentes contextos a tu alrededor.

Punto Clave: GLTFLoader es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Draco

¿Qué es Draco?

Definición: Biblioteca de compresión para meshes 3D

Comprender draco nos ayuda a entender muchos procesos que afectan nuestra vida diaria. Los expertos usan su conocimiento de draco para resolver problemas, desarrollar nuevas soluciones y mejorar resultados. Este concepto tiene aplicaciones prácticas que van mucho más allá del aula.

Punto Clave: Draco es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


AnimationMixer

¿Qué es AnimationMixer?

Definición: Manejador de Three.js para animaciones de modelos

El estudio de animationmixer revela la elegante complejidad de cómo funcionan las cosas. Cada nuevo descubrimiento abre puertas para comprender otros aspectos y cómo el conocimiento en este campo ha evolucionado con el tiempo. Al explorar este concepto, intenta conectarlo con lo que ya sabes — descubrirás que todo está interconectado de maneras hermosas y sorprendentes.

Punto Clave: AnimationMixer es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


🔬 Profundización: Carga de GLTF e Integración en Escena

En Three.js: import {GLTFLoader} from "three/examples/jsm/loaders/GLTFLoader.js"; const loader = new GLTFLoader(); loader.load("model.glb", (gltf) => {scene.add(gltf.scene)}, (progress) => console.log(progress), (error) => console.error(error)). Añade soporte de compresión Draco: import {DRACOLoader} from "..."; const draco = new DRACOLoader(); draco.setDecoderPath("/draco/"); loader.setDRACOLoader(draco). En A-Frame: . Maneja animaciones: const mixer = new THREE.AnimationMixer(gltf.scene); gltf.animations.forEach((clip) => mixer.clipAction(clip).play()); actualiza mixer.update(delta) en el bucle de renderizado. Usa managers de carga para seguimiento de progreso y carga en lote.

Este es un tema avanzado que va más allá del material central, pero comprenderlo te dará una apreciación más profunda del tema. Los investigadores continúan estudiando esta área, y se hacen nuevos descubrimientos todo el tiempo.

¿Sabías que? ¡GLTF fue creado por el Grupo Khronos (quienes también hicieron WebGL y OpenGL) y se ha vuelto tan popular que Blender, Unity y Unreal tienen soporte de exportación nativo!


Conceptos Clave de un Vistazo

Concepto Definición
GLTF Formato de modelo 3D estándar para la web
GLB Formato GLTF binario en un solo archivo
GLTFLoader Cargador de Three.js para modelos GLTF
Draco Biblioteca de compresión para meshes 3D
AnimationMixer Manejador de Three.js para animaciones de modelos

Preguntas de Comprensión

Pon a prueba tu comprensión respondiendo estas preguntas:

  1. Con tus propias palabras, explica qué significa GLTF y da un ejemplo de por qué es importante.

  2. Con tus propias palabras, explica qué significa GLB y da un ejemplo de por qué es importante.

  3. Con tus propias palabras, explica qué significa GLTFLoader y da un ejemplo de por qué es importante.

  4. Con tus propias palabras, explica qué significa Draco y da un ejemplo de por qué es importante.

  5. Con tus propias palabras, explica qué significa AnimationMixer y da un ejemplo de por qué es importante.

Resumen

En este módulo, exploramos Cargando Modelos 3D. Aprendimos sobre gltf, glb, gltfloader, draco, animationmixer. Cada uno de estos conceptos juega un papel crucial en la comprensión del tema más amplio. Recuerda que estas ideas son bloques de construcción — cada módulo se conecta con el siguiente, ayudándote a construir una imagen completa. ¡Sigue repasando estos conceptos y estarás bien preparado para lo que viene!

7

WebXR para Realidad Aumentada

Construyendo experiencias AR con hit testing y comprensión del mundo.

Key Concepts
Hit Testing DOM Overlay Light Estimation Reference Space Retículo

Objetivos de Aprendizaje

Al finalizar este módulo, serás capaz de:

  • Definir y explicar Hit Testing
  • Definir y explicar DOM Overlay
  • Definir y explicar Light Estimation
  • Definir y explicar Reference Space
  • Definir y explicar Retículo
  • Aplicar estos conceptos a ejemplos y escenarios del mundo real
  • Analizar y comparar los conceptos clave presentados en este módulo

Introducción

El modo AR de WebXR superpone contenido virtual en el mundo real a través de cámaras del dispositivo. Solicita sesiones "immersive-ar" con características como "hit-test" para detección de superficies, "dom-overlay" para UI HTML encima, y "light-estimation" para iluminación realista. El hit testing encuentra dónde un rayo intersecta superficies del mundo real—esencial para colocar objetos virtuales en el entorno. La transmisión de cámara se renderiza detrás de tu escena 3D automáticamente. Las experiencias AR pueden detectar planos (pisos, paredes, mesas), estimar iluminación para integración realista de objetos, y pronto soportarán detección de mesh para comprensión de geometría. Los navegadores móviles (Chrome Android, Safari iOS) proporcionan el soporte WebXR AR más amplio.

En este módulo, exploraremos el fascinante mundo de WebXR para Realidad Aumentada. Descubrirás conceptos clave que forman la base de este tema. Cada concepto se basa en el anterior, así que presta mucha atención y toma notas a medida que avanzas. Al final, tendrás una comprensión sólida de este importante tema.

Este tema es esencial para entender cómo funciona esta materia y cómo los expertos organizan su conocimiento. ¡Sumerjámonos y descubramos qué hace este tema tan importante!


Hit Testing

¿Qué es Hit Testing?

Definición: Detectando intersecciones de rayos con superficies reales

Cuando los expertos estudian hit testing, descubren detalles fascinantes sobre cómo funcionan los sistemas. Este concepto se conecta con muchos aspectos del tema que los investigadores investigan todos los días. Comprender hit testing nos ayuda a ver el panorama general. Piensa en ejemplos cotidianos para profundizar tu comprensión — podrías sorprenderte de cuán a menudo encuentras este concepto en el mundo que te rodea.

Punto Clave: Hit Testing es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


DOM Overlay

¿Qué es DOM Overlay?

Definición: UI HTML mostrada encima de AR

El concepto de dom overlay ha sido estudiado durante muchas décadas, llevando a descubrimientos revolucionarios. La investigación en esta área continúa avanzando nuestra comprensión en cada escala. Al aprender sobre dom overlay, estás construyendo una base sólida que respaldará tus estudios en temas más avanzados. Expertos de todo el mundo trabajan para descubrir nuevos conocimientos sobre dom overlay cada día.

Punto Clave: DOM Overlay es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Light Estimation

¿Qué es Light Estimation?

Definición: Detectando condiciones de iluminación del mundo real

Para apreciar completamente light estimation, es útil considerar cómo funciona en aplicaciones del mundo real. Esta naturaleza universal es lo que lo convierte en un concepto tan fundamental en este campo. A medida que aprendas más, intenta identificar ejemplos de light estimation en diferentes contextos a tu alrededor.

Punto Clave: Light Estimation es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Reference Space

¿Qué es Reference Space?

Definición: Sistema de coordenadas para seguimiento

Comprender reference space nos ayuda a entender muchos procesos que afectan nuestra vida diaria. Los expertos usan su conocimiento de reference space para resolver problemas, desarrollar nuevas soluciones y mejorar resultados. Este concepto tiene aplicaciones prácticas que van mucho más allá del aula.

Punto Clave: Reference Space es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Retículo

¿Qué es Retículo?

Definición: Indicador visual de posición de colocación

El estudio de retículo revela la elegante complejidad de cómo funcionan las cosas. Cada nuevo descubrimiento abre puertas para comprender otros aspectos y cómo el conocimiento en este campo ha evolucionado con el tiempo. Al explorar este concepto, intenta conectarlo con lo que ya sabes — descubrirás que todo está interconectado de maneras hermosas y sorprendentes.

Punto Clave: Retículo es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


🔬 Profundización: Implementando Hit Testing

Solicita fuente de hit test: const session = renderer.xr.getSession(); const referenceSpace = renderer.xr.getReferenceSpace(); const viewerSpace = await session.requestReferenceSpace("viewer"); const hitTestSource = await session.requestHitTestSource({space: viewerSpace}). En el bucle de renderizado, obtén resultados de hit test: const hitTestResults = frame.getHitTestResults(hitTestSource); if(hitTestResults.length > 0) {const hit = hitTestResults[0]; const pose = hit.getPose(referenceSpace); reticle.matrix.fromArray(pose.transform.matrix); reticle.visible = true}. Al toque del usuario, coloca objeto en posición del retículo. Limpia la fuente de hit test cuando la sesión termine. Combina con DOM overlay para UI: session.domOverlayState proporciona tipo de overlay y visibilidad.

Este es un tema avanzado que va más allá del material central, pero comprenderlo te dará una apreciación más profunda del tema. Los investigadores continúan estudiando esta área, y se hacen nuevos descubrimientos todo el tiempo.

¿Sabías que? ¡Safari de Apple añadió soporte WebXR AR en 2023, finalmente trayendo web AR multiplataforma a iOS después de años donde USDZ/Quick Look propietario era la única opción!


Conceptos Clave de un Vistazo

Concepto Definición
Hit Testing Detectando intersecciones de rayos con superficies reales
DOM Overlay UI HTML mostrada encima de AR
Light Estimation Detectando condiciones de iluminación del mundo real
Reference Space Sistema de coordenadas para seguimiento
Retículo Indicador visual de posición de colocación

Preguntas de Comprensión

Pon a prueba tu comprensión respondiendo estas preguntas:

  1. Con tus propias palabras, explica qué significa Hit Testing y da un ejemplo de por qué es importante.

  2. Con tus propias palabras, explica qué significa DOM Overlay y da un ejemplo de por qué es importante.

  3. Con tus propias palabras, explica qué significa Light Estimation y da un ejemplo de por qué es importante.

  4. Con tus propias palabras, explica qué significa Reference Space y da un ejemplo de por qué es importante.

  5. Con tus propias palabras, explica qué significa Retículo y da un ejemplo de por qué es importante.

Resumen

En este módulo, exploramos WebXR para Realidad Aumentada. Aprendimos sobre hit testing, dom overlay, light estimation, reference space, retículo. Cada uno de estos conceptos juega un papel crucial en la comprensión del tema más amplio. Recuerda que estas ideas son bloques de construcción — cada módulo se conecta con el siguiente, ayudándote a construir una imagen completa. ¡Sigue repasando estos conceptos y estarás bien preparado para lo que viene!

8

Babylon.js para WebXR

Usando el motor 3D completo para experiencias web inmersivas.

Key Concepts
Babylon.js Default XR Experience Inspector Playground WebXRFeatureManager

Objetivos de Aprendizaje

Al finalizar este módulo, serás capaz de:

  • Definir y explicar Babylon.js
  • Definir y explicar Default XR Experience
  • Definir y explicar Inspector
  • Definir y explicar Playground
  • Definir y explicar WebXRFeatureManager
  • Aplicar estos conceptos a ejemplos y escenarios del mundo real
  • Analizar y comparar los conceptos clave presentados en este módulo

Introducción

Babylon.js es un motor 3D completo para la web, ofreciendo física integrada, partículas, animaciones y soporte WebXR de primera clase. Creado por Microsoft, proporciona una abstracción de mayor nivel que Three.js con un editor visual (Babylon.js Editor y Playground). El helper WebXR Default Experience configura VR/AR completo con una línea, incluyendo teleportación, seguimiento de manos y renderizado de controladores. Babylon.js sobresale para experiencias tipo juego con su integración de física (Havok, Ammo.js), materiales avanzados (PBR, materiales de nodos), y sistema de animación robusto. El Inspector (depuración en navegador) y Playground (prueba de código instantánea) aceleran el desarrollo. El diseño TypeScript-first proporciona excelente soporte de IDE.

En este módulo, exploraremos el fascinante mundo de Babylon.js para WebXR. Descubrirás conceptos clave que forman la base de este tema. Cada concepto se basa en el anterior, así que presta mucha atención y toma notas a medida que avanzas. Al final, tendrás una comprensión sólida de este importante tema.

Este tema es esencial para entender cómo funciona esta materia y cómo los expertos organizan su conocimiento. ¡Sumerjámonos y descubramos qué hace este tema tan importante!


Babylon.js

¿Qué es Babylon.js?

Definición: Motor 3D completo para la web

Cuando los expertos estudian babylon.js, descubren detalles fascinantes sobre cómo funcionan los sistemas. Este concepto se conecta con muchos aspectos del tema que los investigadores investigan todos los días. Comprender babylon.js nos ayuda a ver el panorama general. Piensa en ejemplos cotidianos para profundizar tu comprensión — podrías sorprenderte de cuán a menudo encuentras este concepto en el mundo que te rodea.

Punto Clave: Babylon.js es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Default XR Experience

¿Qué es Default XR Experience?

Definición: Configuración WebXR completa de una línea

El concepto de default xr experience ha sido estudiado durante muchas décadas, llevando a descubrimientos revolucionarios. La investigación en esta área continúa avanzando nuestra comprensión en cada escala. Al aprender sobre default xr experience, estás construyendo una base sólida que respaldará tus estudios en temas más avanzados. Expertos de todo el mundo trabajan para descubrir nuevos conocimientos sobre default xr experience cada día.

Punto Clave: Default XR Experience es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Inspector

¿Qué es Inspector?

Definición: Herramienta de depuración en navegador

Para apreciar completamente inspector, es útil considerar cómo funciona en aplicaciones del mundo real. Esta naturaleza universal es lo que lo convierte en un concepto tan fundamental en este campo. A medida que aprendas más, intenta identificar ejemplos de inspector en diferentes contextos a tu alrededor.

Punto Clave: Inspector es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Playground

¿Qué es Playground?

Definición: Editor de código online para pruebas

Comprender playground nos ayuda a entender muchos procesos que afectan nuestra vida diaria. Los expertos usan su conocimiento de playground para resolver problemas, desarrollar nuevas soluciones y mejorar resultados. Este concepto tiene aplicaciones prácticas que van mucho más allá del aula.

Punto Clave: Playground es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


WebXRFeatureManager

¿Qué es WebXRFeatureManager?

Definición: Manejador para habilitar características XR

El estudio de webxrfeaturemanager revela la elegante complejidad de cómo funcionan las cosas. Cada nuevo descubrimiento abre puertas para comprender otros aspectos y cómo el conocimiento en este campo ha evolucionado con el tiempo. Al explorar este concepto, intenta conectarlo con lo que ya sabes — descubrirás que todo está interconectado de maneras hermosas y sorprendentes.

Punto Clave: WebXRFeatureManager es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


🔬 Profundización: Configurando WebXR en Babylon.js

Configuración básica: const canvas = document.getElementById("canvas"); const engine = new BABYLON.Engine(canvas); const scene = new BABYLON.Scene(engine); const camera = new BABYLON.FreeCamera("camera", new BABYLON.Vector3(0, 1.6, 0), scene); const light = new BABYLON.HemisphericLight("light", new BABYLON.Vector3(0, 1, 0), scene). Habilita WebXR: const xr = await scene.createDefaultXRExperienceAsync({floorMeshes: [ground]}). Esta única línea añade: UI de entrada VR/AR, locomoción por teleportación, modelos de controladores, soporte de seguimiento de manos, y manejo apropiado del espacio de referencia. Accede a componentes: xr.baseExperience proporciona sesión y cámara; xr.teleportation configura movimiento; xr.input maneja controladores. El bucle de renderizado: engine.runRenderLoop(() => scene.render()). Babylon.js maneja la complejidad mientras expone personalización completa.

Este es un tema avanzado que va más allá del material central, pero comprenderlo te dará una apreciación más profunda del tema. Los investigadores continúan estudiando esta área, y se hacen nuevos descubrimientos todo el tiempo.

¿Sabías que? ¡Babylon.js fue creado dentro de Microsoft para impulsar sus experiencias web de realidad mixta, incluyendo demos para HoloLens. Ahora es uno de los motores 3D más completos para cualquier plataforma!


Conceptos Clave de un Vistazo

Concepto Definición
Babylon.js Motor 3D completo para la web
Default XR Experience Configuración WebXR completa de una línea
Inspector Herramienta de depuración en navegador
Playground Editor de código online para pruebas
WebXRFeatureManager Manejador para habilitar características XR

Preguntas de Comprensión

Pon a prueba tu comprensión respondiendo estas preguntas:

  1. Con tus propias palabras, explica qué significa Babylon.js y da un ejemplo de por qué es importante.

  2. Con tus propias palabras, explica qué significa Default XR Experience y da un ejemplo de por qué es importante.

  3. Con tus propias palabras, explica qué significa Inspector y da un ejemplo de por qué es importante.

  4. Con tus propias palabras, explica qué significa Playground y da un ejemplo de por qué es importante.

  5. Con tus propias palabras, explica qué significa WebXRFeatureManager y da un ejemplo de por qué es importante.

Resumen

En este módulo, exploramos Babylon.js para WebXR. Aprendimos sobre babylon.js, default xr experience, inspector, playground, webxrfeaturemanager. Cada uno de estos conceptos juega un papel crucial en la comprensión del tema más amplio. Recuerda que estas ideas son bloques de construcción — cada módulo se conecta con el siguiente, ayudándote a construir una imagen completa. ¡Sigue repasando estos conceptos y estarás bien preparado para lo que viene!

9

Optimización de Rendimiento

Logrando tasas de cuadros suaves para experiencias WebXR cómodas.

Key Concepts
Draw Call Instancing LOD Compresión de Texturas Escala de Framebuffer

Objetivos de Aprendizaje

Al finalizar este módulo, serás capaz de:

  • Definir y explicar Draw Call
  • Definir y explicar Instancing
  • Definir y explicar LOD
  • Definir y explicar Compresión de Texturas
  • Definir y explicar Escala de Framebuffer
  • Aplicar estos conceptos a ejemplos y escenarios del mundo real
  • Analizar y comparar los conceptos clave presentados en este módulo

Introducción

WebXR demanda tasas de cuadros altas consistentes—90fps para Quest, 72fps mínimo para la mayoría de visores. Las caídas de cuadros causan incomodidad y mareo. Áreas clave de optimización: draw calls (combinar meshes, usar instancing), texturas (comprimir, usar atlas, limitar resolución), geometría (reducir polígonos, usar LOD), shaders (simplificar materiales, evitar transparencia), y JavaScript (minimizar recolección de basura, optimizar bucles). Usa herramientas de perfilado del navegador y el emulador WebXR para pruebas. VR móvil (Quest, Pico) corre en arquitectura de GPU móvil con límites estrictos de energía/temperatura. Perfila temprano y frecuentemente—la optimización debe ser continua, no una ocurrencia tardía. Apunta a 72fps con margen para escenas complejas.

En este módulo, exploraremos el fascinante mundo de Optimización de Rendimiento. Descubrirás conceptos clave que forman la base de este tema. Cada concepto se basa en el anterior, así que presta mucha atención y toma notas a medida que avanzas. Al final, tendrás una comprensión sólida de este importante tema.

Este tema es esencial para entender cómo funciona esta materia y cómo los expertos organizan su conocimiento. ¡Sumerjámonos y descubramos qué hace este tema tan importante!


Draw Call

¿Qué es Draw Call?

Definición: Comando de renderizado único de GPU

Cuando los expertos estudian draw call, descubren detalles fascinantes sobre cómo funcionan los sistemas. Este concepto se conecta con muchos aspectos del tema que los investigadores investigan todos los días. Comprender draw call nos ayuda a ver el panorama general. Piensa en ejemplos cotidianos para profundizar tu comprensión — podrías sorprenderte de cuán a menudo encuentras este concepto en el mundo que te rodea.

Punto Clave: Draw Call es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Instancing

¿Qué es Instancing?

Definición: Renderizando múltiples copias en una llamada

El concepto de instancing ha sido estudiado durante muchas décadas, llevando a descubrimientos revolucionarios. La investigación en esta área continúa avanzando nuestra comprensión en cada escala. Al aprender sobre instancing, estás construyendo una base sólida que respaldará tus estudios en temas más avanzados. Expertos de todo el mundo trabajan para descubrir nuevos conocimientos sobre instancing cada día.

Punto Clave: Instancing es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


LOD

¿Qué es LOD?

Definición: Nivel de Detalle para calidad basada en distancia

Para apreciar completamente lod, es útil considerar cómo funciona en aplicaciones del mundo real. Esta naturaleza universal es lo que lo convierte en un concepto tan fundamental en este campo. A medida que aprendas más, intenta identificar ejemplos de lod en diferentes contextos a tu alrededor.

Punto Clave: LOD es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Compresión de Texturas

¿Qué es Compresión de Texturas?

Definición: Reduciendo memoria y ancho de banda de texturas

Comprender compresión de texturas nos ayuda a entender muchos procesos que afectan nuestra vida diaria. Los expertos usan su conocimiento de compresión de texturas para resolver problemas, desarrollar nuevas soluciones y mejorar resultados. Este concepto tiene aplicaciones prácticas que van mucho más allá del aula.

Punto Clave: Compresión de Texturas es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Escala de Framebuffer

¿Qué es Escala de Framebuffer?

Definición: Ajustando resolución de renderizado para rendimiento

El estudio de escala de framebuffer revela la elegante complejidad de cómo funcionan las cosas. Cada nuevo descubrimiento abre puertas para comprender otros aspectos y cómo el conocimiento en este campo ha evolucionado con el tiempo. Al explorar este concepto, intenta conectarlo con lo que ya sabes — descubrirás que todo está interconectado de maneras hermosas y sorprendentes.

Punto Clave: Escala de Framebuffer es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


🔬 Profundización: Técnicas de Optimización en Detalle

Reduce draw calls: usa BufferGeometryUtils.mergeBufferGeometries() para combinar meshes estáticos; usa InstancedMesh para objetos repetidos; agrupa materiales. Optimización de texturas: comprime con Basis Universal (1/6 del tamaño, nativo de GPU); usa tamaños potencia de dos; genera mipmaps; limita a resolución 1K-2K. Geometría: apunta a 50K-100K triángulos total para VR móvil; usa LOD (Nivel de Detalle) para objetos distantes; considera impostores para meshes complejos distantes. Renderizado: evita sombras en tiempo real (hornéalas en su lugar); minimiza objetos transparentes; usa shaders sin iluminación o simples donde sea posible. JavaScript: agrupa objetos para evitar asignación; usa typed arrays; evita closures en caminos críticos. Habilita renderer.xr.setFramebufferScaleFactor(0.75) para reducir resolución en escenas críticas de rendimiento.

Este es un tema avanzado que va más allá del material central, pero comprenderlo te dará una apreciación más profunda del tema. Los investigadores continúan estudiando esta área, y se hacen nuevos descubrimientos todo el tiempo.

¿Sabías que? ¡La GPU de Quest 2 está basada en hardware de smartphone—la misma clase de chip que un teléfono de 2019. Lograr 90fps VR en este hardware es un testimonio de las técnicas de optimización!


Conceptos Clave de un Vistazo

Concepto Definición
Draw Call Comando de renderizado único de GPU
Instancing Renderizando múltiples copias en una llamada
LOD Nivel de Detalle para calidad basada en distancia
Compresión de Texturas Reduciendo memoria y ancho de banda de texturas
Escala de Framebuffer Ajustando resolución de renderizado para rendimiento

Preguntas de Comprensión

Pon a prueba tu comprensión respondiendo estas preguntas:

  1. Con tus propias palabras, explica qué significa Draw Call y da un ejemplo de por qué es importante.

  2. Con tus propias palabras, explica qué significa Instancing y da un ejemplo de por qué es importante.

  3. Con tus propias palabras, explica qué significa LOD y da un ejemplo de por qué es importante.

  4. Con tus propias palabras, explica qué significa Compresión de Texturas y da un ejemplo de por qué es importante.

  5. Con tus propias palabras, explica qué significa Escala de Framebuffer y da un ejemplo de por qué es importante.

Resumen

En este módulo, exploramos Optimización de Rendimiento. Aprendimos sobre draw call, instancing, lod, compresión de texturas, escala de framebuffer. Cada uno de estos conceptos juega un papel crucial en la comprensión del tema más amplio. Recuerda que estas ideas son bloques de construcción — cada módulo se conecta con el siguiente, ayudándote a construir una imagen completa. ¡Sigue repasando estos conceptos y estarás bien preparado para lo que viene!

10

Multijugador y Networking

Construyendo experiencias WebXR compartidas con sincronización en tiempo real.

Key Concepts
WebSocket WebRTC Interpolación Autoridad Networked-Aframe

Objetivos de Aprendizaje

Al finalizar este módulo, serás capaz de:

  • Definir y explicar WebSocket
  • Definir y explicar WebRTC
  • Definir y explicar Interpolación
  • Definir y explicar Autoridad
  • Definir y explicar Networked-Aframe
  • Aplicar estos conceptos a ejemplos y escenarios del mundo real
  • Analizar y comparar los conceptos clave presentados en este módulo

Introducción

Las experiencias WebXR compartidas conectan múltiples usuarios en el mismo espacio virtual. WebSockets proporcionan comunicación bidireccional en tiempo real, mientras WebRTC habilita peer-to-peer para latencia reducida. Desafíos clave de sincronización: actualizaciones de posición/rotación de avatar, sincronización de estado de objetos, integración de chat de voz, y manejo de latencia de red. Frameworks como Networked-Aframe, Croquet y Colyseus simplifican WebXR multijugador. Datos a sincronizar: transformaciones de cabeza y manos (30-60 veces/segundo), estados de objetos (cuando cambian), y streams de audio. La interpolación suaviza el movimiento entre actualizaciones. Los sistemas de autoridad determinan qué cliente controla cada objeto. VR social en la web habilita experiencias de unión instantánea sin descargas.

En este módulo, exploraremos el fascinante mundo de Multijugador y Networking. Descubrirás conceptos clave que forman la base de este tema. Cada concepto se basa en el anterior, así que presta mucha atención y toma notas a medida que avanzas. Al final, tendrás una comprensión sólida de este importante tema.

Este tema es esencial para entender cómo funciona esta materia y cómo los expertos organizan su conocimiento. ¡Sumerjámonos y descubramos qué hace este tema tan importante!


WebSocket

¿Qué es WebSocket?

Definición: Comunicación bidireccional en tiempo real

Cuando los expertos estudian websocket, descubren detalles fascinantes sobre cómo funcionan los sistemas. Este concepto se conecta con muchos aspectos del tema que los investigadores investigan todos los días. Comprender websocket nos ayuda a ver el panorama general. Piensa en ejemplos cotidianos para profundizar tu comprensión — podrías sorprenderte de cuán a menudo encuentras este concepto en el mundo que te rodea.

Punto Clave: WebSocket es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


WebRTC

¿Qué es WebRTC?

Definición: Protocolo de comunicación peer-to-peer

El concepto de webrtc ha sido estudiado durante muchas décadas, llevando a descubrimientos revolucionarios. La investigación en esta área continúa avanzando nuestra comprensión en cada escala. Al aprender sobre webrtc, estás construyendo una base sólida que respaldará tus estudios en temas más avanzados. Expertos de todo el mundo trabajan para descubrir nuevos conocimientos sobre webrtc cada día.

Punto Clave: WebRTC es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Interpolación

¿Qué es Interpolación?

Definición: Suavizando movimiento entre actualizaciones de red

Para apreciar completamente interpolación, es útil considerar cómo funciona en aplicaciones del mundo real. Esta naturaleza universal es lo que lo convierte en un concepto tan fundamental en este campo. A medida que aprendas más, intenta identificar ejemplos de interpolación en diferentes contextos a tu alrededor.

Punto Clave: Interpolación es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Autoridad

¿Qué es Autoridad?

Definición: Qué cliente controla un objeto

Comprender autoridad nos ayuda a entender muchos procesos que afectan nuestra vida diaria. Los expertos usan su conocimiento de autoridad para resolver problemas, desarrollar nuevas soluciones y mejorar resultados. Este concepto tiene aplicaciones prácticas que van mucho más allá del aula.

Punto Clave: Autoridad es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Networked-Aframe

¿Qué es Networked-Aframe?

Definición: Framework multijugador de A-Frame

El estudio de networked-aframe revela la elegante complejidad de cómo funcionan las cosas. Cada nuevo descubrimiento abre puertas para comprender otros aspectos y cómo el conocimiento en este campo ha evolucionado con el tiempo. Al explorar este concepto, intenta conectarlo con lo que ya sabes — descubrirás que todo está interconectado de maneras hermosas y sorprendentes.

Punto Clave: Networked-Aframe es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


🔬 Profundización: Implementando WebXR en Red

Usando Networked-Aframe: . Configura: NAF.schemas.add({template: "#avatar-template", components: ["position", "rotation"]}). Marca entidades sincronizadas: . Para implementaciones personalizadas: usa Socket.io o WebSocket crudo para señalización; envía actualizaciones de posición a intervalo fijo: socket.emit("pose", {head: camera.matrixWorld.toArray(), leftHand: ..., rightHand: ...}). Al recibir: interpola entre posición actual y objetivo a través de múltiples cuadros para movimiento suave. Añade voz con WebRTC: navigator.mediaDevices.getUserMedia({audio: true}) para stream local; crea conexiones peer para cada usuario remoto. Considera audio espacial—atenúa voces por distancia para inmersión.

Este es un tema avanzado que va más allá del material central, pero comprenderlo te dará una apreciación más profunda del tema. Los investigadores continúan estudiando esta área, y se hacen nuevos descubrimientos todo el tiempo.

¿Sabías que? ¡Mozilla Hubs, construido sobre Networked-Aframe, hospedó conferencias virtuales durante la pandemia con miles de usuarios simultáneos en salas VR basadas en navegador!


Conceptos Clave de un Vistazo

Concepto Definición
WebSocket Comunicación bidireccional en tiempo real
WebRTC Protocolo de comunicación peer-to-peer
Interpolación Suavizando movimiento entre actualizaciones de red
Autoridad Qué cliente controla un objeto
Networked-Aframe Framework multijugador de A-Frame

Preguntas de Comprensión

Pon a prueba tu comprensión respondiendo estas preguntas:

  1. Con tus propias palabras, explica qué significa WebSocket y da un ejemplo de por qué es importante.

  2. Con tus propias palabras, explica qué significa WebRTC y da un ejemplo de por qué es importante.

  3. Con tus propias palabras, explica qué significa Interpolación y da un ejemplo de por qué es importante.

  4. Con tus propias palabras, explica qué significa Autoridad y da un ejemplo de por qué es importante.

  5. Con tus propias palabras, explica qué significa Networked-Aframe y da un ejemplo de por qué es importante.

Resumen

En este módulo, exploramos Multijugador y Networking. Aprendimos sobre websocket, webrtc, interpolación, autoridad, networked-aframe. Cada uno de estos conceptos juega un papel crucial en la comprensión del tema más amplio. Recuerda que estas ideas son bloques de construcción — cada módulo se conecta con el siguiente, ayudándote a construir una imagen completa. ¡Sigue repasando estos conceptos y estarás bien preparado para lo que viene!

11

Mejora Progresiva y Accesibilidad

Haciendo que las experiencias WebXR funcionen en todos los dispositivos y habilidades.

Key Concepts
Mejora Progresiva Detección de Características Alternativa Configuraciones de Confort Accesibilidad XR

Objetivos de Aprendizaje

Al finalizar este módulo, serás capaz de:

  • Definir y explicar Mejora Progresiva
  • Definir y explicar Detección de Características
  • Definir y explicar Alternativa
  • Definir y explicar Configuraciones de Confort
  • Definir y explicar Accesibilidad XR
  • Aplicar estos conceptos a ejemplos y escenarios del mundo real
  • Analizar y comparar los conceptos clave presentados en este módulo

Introducción

La mejora progresiva asegura que el contenido WebXR funcione para todos, desde pantallas planas hasta visores VR de alta gama. Verifica capacidades: navigator.xr?.isSessionSupported("immersive-vr"). Proporciona alternativas: controles de ratón/táctil para no-VR, visualización 360° para móvil, y VR completo para visores. La accesibilidad en XR incluye: múltiples métodos de entrada (mirada, controladores, voz), locomoción ajustable (teleportación, suave con opciones de confort), texto legible (tamaño y contraste suficientes), descripciones de audio, y opciones de sensibilidad al movimiento. El documento de Requisitos de Accesibilidad de Usuario XR del W3C guía las mejores prácticas. Hacer XR accesible expande tu audiencia y mejora la calidad de experiencia para todos.

En este módulo, exploraremos el fascinante mundo de Mejora Progresiva y Accesibilidad. Descubrirás conceptos clave que forman la base de este tema. Cada concepto se basa en el anterior, así que presta mucha atención y toma notas a medida que avanzas. Al final, tendrás una comprensión sólida de este importante tema.

Este tema es esencial para entender cómo funciona esta materia y cómo los expertos organizan su conocimiento. ¡Sumerjámonos y descubramos qué hace este tema tan importante!


Mejora Progresiva

¿Qué es Mejora Progresiva?

Definición: Funcionando en todos los niveles de capacidad

Cuando los expertos estudian mejora progresiva, descubren detalles fascinantes sobre cómo funcionan los sistemas. Este concepto se conecta con muchos aspectos del tema que los investigadores investigan todos los días. Comprender mejora progresiva nos ayuda a ver el panorama general. Piensa en ejemplos cotidianos para profundizar tu comprensión — podrías sorprenderte de cuán a menudo encuentras este concepto en el mundo que te rodea.

Punto Clave: Mejora Progresiva es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Detección de Características

¿Qué es Detección de Características?

Definición: Verificando capacidades del navegador/dispositivo

El concepto de detección de características ha sido estudiado durante muchas décadas, llevando a descubrimientos revolucionarios. La investigación en esta área continúa avanzando nuestra comprensión en cada escala. Al aprender sobre detección de características, estás construyendo una base sólida que respaldará tus estudios en temas más avanzados. Expertos de todo el mundo trabajan para descubrir nuevos conocimientos sobre detección de características cada día.

Punto Clave: Detección de Características es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Alternativa

¿Qué es Alternativa?

Definición: Alternativa para características no soportadas

Para apreciar completamente alternativa, es útil considerar cómo funciona en aplicaciones del mundo real. Esta naturaleza universal es lo que lo convierte en un concepto tan fundamental en este campo. A medida que aprendas más, intenta identificar ejemplos de alternativa en diferentes contextos a tu alrededor.

Punto Clave: Alternativa es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Configuraciones de Confort

¿Qué es Configuraciones de Confort?

Definición: Opciones que reducen mareo por movimiento

Comprender configuraciones de confort nos ayuda a entender muchos procesos que afectan nuestra vida diaria. Los expertos usan su conocimiento de configuraciones de confort para resolver problemas, desarrollar nuevas soluciones y mejorar resultados. Este concepto tiene aplicaciones prácticas que van mucho más allá del aula.

Punto Clave: Configuraciones de Confort es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Accesibilidad XR

¿Qué es Accesibilidad XR?

Definición: Haciendo XR usable para todas las habilidades

El estudio de accesibilidad xr revela la elegante complejidad de cómo funcionan las cosas. Cada nuevo descubrimiento abre puertas para comprender otros aspectos y cómo el conocimiento en este campo ha evolucionado con el tiempo. Al explorar este concepto, intenta conectarlo con lo que ya sabes — descubrirás que todo está interconectado de maneras hermosas y sorprendentes.

Punto Clave: Accesibilidad XR es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


🔬 Profundización: Implementando Mejora Progresiva

Patrón de detección de características: if(navigator.xr) {navigator.xr.isSessionSupported("immersive-vr").then((supported) => {if(supported) showVRButton(); else showFallback()})} else {showFallback()}. Para A-Frame, el modo embebido funciona sin VR: . Proporciona controles de ratón: . Para Three.js, OrbitControls habilita navegación de escritorio. Implementa configuraciones de confort: viñeta durante movimiento, giro instantáneo vs suave, modos sentado vs de pie. Subtitula audio con alternativas de texto. Permite ajuste de punto de teleportación para usuarios de silla de ruedas. Prueba con lectores de pantalla—anuncia cambios de estado importantes. Documenta atajos de teclado. Estas prácticas aseguran que ningún usuario sea excluido de tu experiencia.

Este es un tema avanzado que va más allá del material central, pero comprenderlo te dará una apreciación más profunda del tema. Los investigadores continúan estudiando esta área, y se hacen nuevos descubrimientos todo el tiempo.

¿Sabías que? ¡Los estudios muestran que 30-40% de los usuarios de VR experimentan alguna incomodidad por movimiento. Las buenas opciones de confort no solo son accesibles—son esenciales para la adopción masiva!


Conceptos Clave de un Vistazo

Concepto Definición
Mejora Progresiva Funcionando en todos los niveles de capacidad
Detección de Características Verificando capacidades del navegador/dispositivo
Alternativa Alternativa para características no soportadas
Configuraciones de Confort Opciones que reducen mareo por movimiento
Accesibilidad XR Haciendo XR usable para todas las habilidades

Preguntas de Comprensión

Pon a prueba tu comprensión respondiendo estas preguntas:

  1. Con tus propias palabras, explica qué significa Mejora Progresiva y da un ejemplo de por qué es importante.

  2. Con tus propias palabras, explica qué significa Detección de Características y da un ejemplo de por qué es importante.

  3. Con tus propias palabras, explica qué significa Alternativa y da un ejemplo de por qué es importante.

  4. Con tus propias palabras, explica qué significa Configuraciones de Confort y da un ejemplo de por qué es importante.

  5. Con tus propias palabras, explica qué significa Accesibilidad XR y da un ejemplo de por qué es importante.

Resumen

En este módulo, exploramos Mejora Progresiva y Accesibilidad. Aprendimos sobre mejora progresiva, detección de características, alternativa, configuraciones de confort, accesibilidad xr. Cada uno de estos conceptos juega un papel crucial en la comprensión del tema más amplio. Recuerda que estas ideas son bloques de construcción — cada módulo se conecta con el siguiente, ayudándote a construir una imagen completa. ¡Sigue repasando estos conceptos y estarás bien preparado para lo que viene!

12

Despliegue y Distribución

Publicando contenido WebXR para máximo alcance y rendimiento.

Key Concepts
CDN PWA KTX2 Service Worker Tree Shaking

Objetivos de Aprendizaje

Al finalizar este módulo, serás capaz de:

  • Definir y explicar CDN
  • Definir y explicar PWA
  • Definir y explicar KTX2
  • Definir y explicar Service Worker
  • Definir y explicar Tree Shaking
  • Aplicar estos conceptos a ejemplos y escenarios del mundo real
  • Analizar y comparar los conceptos clave presentados en este módulo

Introducción

La ventaja clave de WebXR es la distribución web—sin tiendas de apps, acceso instantáneo vía URLs. Optimiza la entrega: sirve assets desde CDN, habilita compresión (gzip/brotli), cachea agresivamente. HTTPS es requerido para WebXR. Considera opciones de hosting: hosting estático (Netlify, Vercel, GitHub Pages) para experiencias simples, o servidores dedicados para multijugador. Habilita características PWA (Progressive Web App) para acceso offline e instalación en pantalla de inicio. Prueba en navegadores y dispositivos—el comportamiento varía. Comparte vía enlaces, códigos QR, o embebe en iframes. Rastrea analíticas para entender el comportamiento del usuario. La distribución web significa actualizaciones instantáneas—sin esperar aprobación de tienda de apps.

En este módulo, exploraremos el fascinante mundo de Despliegue y Distribución. Descubrirás conceptos clave que forman la base de este tema. Cada concepto se basa en el anterior, así que presta mucha atención y toma notas a medida que avanzas. Al final, tendrás una comprensión sólida de este importante tema.

Este tema es esencial para entender cómo funciona esta materia y cómo los expertos organizan su conocimiento. ¡Sumerjámonos y descubramos qué hace este tema tan importante!


CDN

¿Qué es CDN?

Definición: Red de Entrega de Contenido para servir assets rápidamente

Cuando los expertos estudian cdn, descubren detalles fascinantes sobre cómo funcionan los sistemas. Este concepto se conecta con muchos aspectos del tema que los investigadores investigan todos los días. Comprender cdn nos ayuda a ver el panorama general. Piensa en ejemplos cotidianos para profundizar tu comprensión — podrías sorprenderte de cuán a menudo encuentras este concepto en el mundo que te rodea.

Punto Clave: CDN es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


PWA

¿Qué es PWA?

Definición: Progressive Web App para offline e instalación

El concepto de pwa ha sido estudiado durante muchas décadas, llevando a descubrimientos revolucionarios. La investigación en esta área continúa avanzando nuestra comprensión en cada escala. Al aprender sobre pwa, estás construyendo una base sólida que respaldará tus estudios en temas más avanzados. Expertos de todo el mundo trabajan para descubrir nuevos conocimientos sobre pwa cada día.

Punto Clave: PWA es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


KTX2

¿Qué es KTX2?

Definición: Formato de textura optimizado para GPU

Para apreciar completamente ktx2, es útil considerar cómo funciona en aplicaciones del mundo real. Esta naturaleza universal es lo que lo convierte en un concepto tan fundamental en este campo. A medida que aprendas más, intenta identificar ejemplos de ktx2 en diferentes contextos a tu alrededor.

Punto Clave: KTX2 es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Service Worker

¿Qué es Service Worker?

Definición: Script que habilita funcionalidad offline

Comprender service worker nos ayuda a entender muchos procesos que afectan nuestra vida diaria. Los expertos usan su conocimiento de service worker para resolver problemas, desarrollar nuevas soluciones y mejorar resultados. Este concepto tiene aplicaciones prácticas que van mucho más allá del aula.

Punto Clave: Service Worker es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


Tree Shaking

¿Qué es Tree Shaking?

Definición: Eliminando código no usado de bundles

El estudio de tree shaking revela la elegante complejidad de cómo funcionan las cosas. Cada nuevo descubrimiento abre puertas para comprender otros aspectos y cómo el conocimiento en este campo ha evolucionado con el tiempo. Al explorar este concepto, intenta conectarlo con lo que ya sabes — descubrirás que todo está interconectado de maneras hermosas y sorprendentes.

Punto Clave: Tree Shaking es un concepto fundamental que encontrarás a lo largo de tus estudios. ¡Asegúrate de poder explicarlo con tus propias palabras!


🔬 Profundización: Mejores Prácticas de Optimización y Hosting

Optimización de bundle: usa rollup/webpack para tree-shake imports de Three.js; divide código para carga perezosa. Optimización de assets: convierte texturas a formato KTX2 con Basis Universal; usa compresión de mesh Draco; implementa carga progresiva (baja resolución primero). Estrategia de caché: caché largo para assets versionados (/model.v1.glb), caché corto para HTML. Service worker habilita offline: cachea assets críticos al instalar. Manifest PWA: {"name": "Mi App XR", "display": "fullscreen", "orientation": "any"}. Para navegador Quest, habilita contenido web inmersivo en configuraciones del visor. Prueba con emulación de dispositivo de Chrome DevTools y extensión del emulador WebXR. Usa analíticas (Google Analytics, Plausible) con eventos personalizados para inicios de sesión VR, completaciones e interacciones.

Este es un tema avanzado que va más allá del material central, pero comprenderlo te dará una apreciación más profunda del tema. Los investigadores continúan estudiando esta área, y se hacen nuevos descubrimientos todo el tiempo.

¿Sabías que? ¡El contenido WebXR puede compartirse vía etiquetas NFC—toca tu teléfono a un póster e instantáneamente entra en una experiencia VR. Sin descarga de app, sin fricción, solo inmersión instantánea!


Conceptos Clave de un Vistazo

Concepto Definición
CDN Red de Entrega de Contenido para servir assets rápidamente
PWA Progressive Web App para offline e instalación
KTX2 Formato de textura optimizado para GPU
Service Worker Script que habilita funcionalidad offline
Tree Shaking Eliminando código no usado de bundles

Preguntas de Comprensión

Pon a prueba tu comprensión respondiendo estas preguntas:

  1. Con tus propias palabras, explica qué significa CDN y da un ejemplo de por qué es importante.

  2. Con tus propias palabras, explica qué significa PWA y da un ejemplo de por qué es importante.

  3. Con tus propias palabras, explica qué significa KTX2 y da un ejemplo de por qué es importante.

  4. Con tus propias palabras, explica qué significa Service Worker y da un ejemplo de por qué es importante.

  5. Con tus propias palabras, explica qué significa Tree Shaking y da un ejemplo de por qué es importante.

Resumen

En este módulo, exploramos Despliegue y Distribución. Aprendimos sobre cdn, pwa, ktx2, service worker, tree shaking. Cada uno de estos conceptos juega un papel crucial en la comprensión del tema más amplio. Recuerda que estas ideas son bloques de construcción — cada módulo se conecta con el siguiente, ayudándote a construir una imagen completa. ¡Sigue repasando estos conceptos y estarás bien preparado para lo que viene!

Ready to master Desarrollo WebXR?

Get personalized AI tutoring with flashcards, quizzes, and interactive exercises in the Eludo app

Personalized learning
Interactive exercises
Offline access

Related Topics