Questa classe lavora in maniera simile a [page:ShaderMaterial], tranne per il fatto che le definizioni delle uniformi e degli attributi incorporati non vengono automaticamente anteposte al codice dello shader GLSL.
const material = new THREE.RawShaderMaterial( {
uniforms: {
time: { value: 1.0 }
},
vertexShader: document.getElementById( 'vertexShader' ).textContent,
fragmentShader: document.getElementById( 'fragmentShader' ).textContent,
} );
[example:webgl_buffergeometry_rawshader WebGL / buffergeometry / rawshader]
[example:webgl_buffergeometry_instancing_billboards WebGL / buffergeometry / instancing / billboards]
[example:webgl_buffergeometry_instancing WebGL / buffergeometry / instancing]
[example:webgl_raymarching_reflect WebGL / raymarching / reflect]
[example:webgl2_volume_cloud WebGL 2 / volume / cloud]
[example:webgl2_volume_instancing WebGL 2 / volume / instancing]
[example:webgl2_volume_perlin WebGL 2 / volume / perlin]
[page:Object parameters] - (opzionale) un oggetto con una o più proprietà che definiscono l'aspetto del materiale.
Qualsiasi proprietà del materiale (inclusa qualsiasi proprietà ereditata da [page:Material] e [page:ShaderMaterial]) può essere passata qui.
Vedi le classi base [page:Material] e [page:ShaderMaterial] per le proprietà comuni.
Vedi le classi base [page:Material] e [page:ShaderMaterial] per i metodi comuni.
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]