2
0

WebGLShader.html 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8" />
  5. <base href="../../../" />
  6. <script src="list.js"></script>
  7. <script src="page.js"></script>
  8. <link type="text/css" rel="stylesheet" href="page.css" />
  9. </head>
  10. <body>
  11. <h1>[name]</h1>
  12. <p class="desc">A lower level function to compile either a vertex or fragment shader.</p>
  13. <h2>Example</h2>
  14. <code>
  15. var gl = renderer.context;
  16. var glVertexShader = new THREE.WebGLShader( gl, gl.VERTEX_SHADER, vertexSourceCode );
  17. var glFragmentShader = new THREE.WebGLShader( gl, gl.FRAGMENT_SHADER, fragmentSourceCode );
  18. var program = gl.createProgram();
  19. gl.attachShader( program, glVertexShader );
  20. gl.attachShader( program, glFragmentShader );
  21. gl.linkProgram( program );
  22. </code>
  23. <h2>Function</h2>
  24. <h3>[page:WebGLShader objects]([page:WebGLContext gl], [page:WebGLEnum type], [page:String source])</h3>
  25. <p>
  26. gl -- The current WebGL context
  27. type -- The WebGL type, either gl.VERTEX_SHADER or gl.FRAGMENT_SHADER
  28. source -- The source code for the shader
  29. </p>
  30. <p>
  31. This will compile an individual shader, but won't link it to be a complete [page:WebGLProgram]. Note: this
  32. is a function so the new operator should not be used.
  33. </p>
  34. <h2>Source</h2>
  35. [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
  36. </body>
  37. </html>