1. Trang chủ
  2. » Công Nghệ Thông Tin

Sách hướng dẫn Kỹ thuật lập trình đồ họa 3D sử dụng ngôn ngữ javascript trên môi trường WEB

13 308 6

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 13
Dung lượng 333,81 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Gráficos 3D – Three.js Programación Multimedia..  Cargadores de datos Blender, JSON, etc...  Animación: cinemática directa/inversa, morph... Animación  Uso de requestAnimationFrame… 

Trang 1

Gráficos 3D – Three.js

Programación Multimedia

G.I.M

Francisco Grimaldo, Inmaculada Coma

1

Trang 2

Índice

 Introducción a Three.js

 Características destacadas

 Plantilla básica

 Secuencia de creación

 Animación

 Ejemplos

2

Trang 3

Introducción a Three.js

 Motor 3D ligero y eficiente en JavaScript

 Renderers: WebGL, Canvas y SVG

 Ventajas:

 Oculta la complejidad de desarrollo de WebGL

 Permite escenas complejas que usan la GPU

 Sitio oficial: http://mrdoob.github.com/three.js/

Trang 4

Características destacadas

 Cámaras (perspectiva, ortográfica)

 Luces y sombras (emitida y arrojada)

 Materiales y texturas (Lambert y Phong)

 Objetos 3D (sprites, partículas, líneas)

 Cargadores de datos (Blender, JSON, etc.)

 Animación: cinemática directa/inversa, morph

Trang 5

Plantilla básica

<script src="js/Three.js"></script>

<script>

var camera, scene, renderer ;

init();

animate();

function init () { }

function animate () { requestAnimationFrame( animate ); render();

} function render () {

renderer.render( scene, camera ); }

</script>

Trang 6

Secuencia de creación

 Renderer: new THREE.WebGLRenderer()

 Cámara: new THREE.PerspectiveCamera(fov, aR, n, f)

 Escena: new THREE.Scene()

 Objetos: new THREE.Mesh(new THREE.CubeGeometry(w,h,d)

, new THREE.MeshBasicMaterial({color: 0x0000ff}))

 Añadir objetos: scene.add(mesh)

 Añadir renderer:

document.body.appendChild(renderer.domElement)

 Renderizar: renderer.render(scene, camera)

Trang 7

Animación

 Uso de requestAnimationFrame(…)

 Delega el frame rate:

 El navegador sabe cuándo debe dibujar el

siguiente frame

 El ratio de refresco puede ser mayor o menor que

el que se fijaría manualmente con setTimeout(…)

 Delega el dibujado:

 Sólo se ejecuta cuando la escena es visible

 No consume al minimizar o cambiar de pestaña

Trang 8

Ejemplos: Hola mundo

 Descarga los ejemplos:

 Analiza y modifica: Hello World

Trang 9

Ejemplos: Texturas

 Analiza/modifica: SkyBox y Video to Texture

Trang 10

Ejemplos: Luces y sombras

 Analiza/modifica: Shadow

Trang 11

Carga de modelos

 Loaders: Binary, Collada, JSON, UTF8, etc

 Analiza el siguiente cargador de Collada:

 http://www.antonionavajas.com/ejemplos/modelo/

 Muestra un modelo de la Galería 3D Google:

 http://sketchup.google.com/3dwarehouse/

Trang 12

Ejemplos: Animación

 Analiza: Animated Model with Controls

Trang 13

Referencias Three.js

Three.js: Sitio oficial Documentación, tutoriales y ejemplos

 http://mrdoob.github.com/three.js/

 http://mrdoob.github.com/three.js/docs/

 http://github.com/mrdoob/three.js/wiki

Three.js Examples: Conjunto de ejemplos instructivos

 http://stemkoski.github.com/Three.js/

Three.js Wikipedia: Historia, características y casos de uso

 http://en.wikipedia.org/wiki/Threejs

Learning Three.js: Blog de Jerome Etienne con buenos ejemplos

de aprendizaje

 http://learningthreejs.com/

Extensiones Three.js: Interacción (threex), interpolaciones(tween),

usabilidad (tQuery = Three.js+jQuery)

 https://github.com/jeromeetienne/threex

 https://github.com/sole/tween.js/

 http://jeromeetienne.github.com/tquery/

Ngày đăng: 23/05/2019, 16:38

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w