1 # Clase 25-3-24 2 3 ## BufferAttributes 4 5 - [BufferAttributes](https://threejs.org/docs/index.html?q=bufferat#api/en/core/BufferAttribute) 6 - El constructor debe ser un 7 (TypedArray)[https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray] 8 - Spread opearator (...) 9 - `Index buffer` para ahorrar memoria eliminando vertices redundantes 10 - `bufferGeometry.setIndex()` 11 - Los intex buffers tambien son Typed Arrays *verificar la precision* 12 - Modos de dibujo de WebGL 13 - Three.js solo soporta GL_TRIANGLES para dibujar triángulos 14 - WebGL permite utilizar un numero de vertices con un determinado material y 15 otro numero de vertices con otro. 16 - Regla de la mano derecha para determinar la cara frontal de un triangulo. 17 * Solo se dibujan la cara frontal de los triángulos 18 - `flatShading()` 19 - WebGL interpola las normales de los vertices 20 - La GPU interpola los vertices ya sea de colores, normales, etc. 21 - Three.js `side` permite seleccionar que cara del triangulo dibujar 22 23 ```js 24 const defaultMaterial = new THREE.MeshPhongMaterial({ 25 color: 0xff9900, 26 side: THREE.DoubleSide, 27 }); 28 ``` 29 30 - Los vectores normales deben tener norma `1` 31 32 ## Tarea 33 34 - 23 grados tierra