[page:Material] → [page:ShaderMaterial] →

# [name]

Cette classe fonctionne exactement comme [page:ShaderMaterial], sauf que les définitions des uniformes et les attributs intégrés ne sont pas automatiquement ajoutées au code du shader GLSL.

## Code Example

`const material = new THREE.RawShaderMaterial( { uniforms: { time: { value: 1.0 } }, vertexShader: document.getElementById( 'vertexShader' ).textContent, fragmentShader: document.getElementById( 'fragmentShader' ).textContent, } );`

## Exemples

[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]

## Constructeur

### [name]( [param:Object parameters] )

[page:Object parameters] - (optionnel) un objet avec une ou plusieurs propriétés définissant l'apparence du matériau. Toute propriété du matériau (y compris toute proprioété héritée de [page:Material] and [page:ShaderMaterial]) peut être passée dans l'objet.

## Propriétés

Voir la classe [page:Material] et [page:ShaderMaterial] pour les propriétés communes.

## Méthodes

Voir la classe [page:Material] et [page:ShaderMaterial] pour les méthodes communes.

## Source

[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]