LightGL輕量級的WebGL 3D渲染庫

jopen 9年前發布 | 55K 次閱讀 LightGL 多媒體處理

這個庫可以更容易地快速創建WebGL應用程序原型。它比許多其它的WebGL庫更底層,它不提供場景圖(scene graph),它重新實現了OpenGL的modelview/投影矩陣堆棧,并提供類似的功能。它還重新推出GLSL的一些內置服務(如 gl_Vertex和gl_ModelViewProjectionMatrix)和OpenGL的直接模式。

LightGL輕量級的WebGL 3D渲染庫

編繹這個庫

python build.py: 在src目錄構建 lightgl.js

python build.py debug:內容改變后將立即從src重新編繹

python build.py release:運行時需要使用谷歌JS編譯器,假設你已經安裝了 compiler.jar

docco的src / * JS: 這是在文檔生成目錄

示例代碼

<!DOCTYPE html>
<html><body>
  <script src="lightgl.js"></script>
  <script>

var angle = 0; var gl = GL.create(); var mesh = GL.Mesh.cube(); var shader = new GL.Shader('\ void main() {\ gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;\ }\ ', '\ void main() {\ gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);\ }\ ');

gl.onupdate = function(seconds) { angle += 45 * seconds; };

gl.ondraw = function() { gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT); gl.loadIdentity(); gl.translate(0, 0, -5); gl.rotate(30, 1, 0, 0); gl.rotate(angle, 0, 1, 0);

shader.draw(mesh); };

gl.fullscreen(); gl.animate();

</script> </body></html></pre>

例子:


簡單的旋轉立方體

多紋理

第一場景相機

現場操作

OpenGL的直接模式

渲染紋理

點光源陰影貼圖

實時光線追蹤

構造立體幾何

GPU發光源



原文地址: github.com


 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!