G3D - 基于 WebGL 的 Javascript 3D 绘图引擎
Apache 2.0
跨平台
JavaScript
软件简介
G3D 是阿里巴巴开源的一款基于 WebGL 的 javascript 3D 绘图引擎。与其他的 WebGL 3D 引擎相比,G3D
是更加「纯粹」的渲染引擎,也就是说,它完全不依赖任何 DOM API,而是仅仅依赖一个 canvas 对象(或者类 canvas 对象)。该特性使得 G3D
不仅能够运行在浏览器环境中,也能够运行在一些非浏览器的 js 终端环境下(hybrid 环境),比如 GCanvas 环境(基于 Weex 或
ReactNative)。
Try play with G3D
function run(G3D, canvas){
// create 3d engine
const engine = new G3D.Engine(canvas); // create a scene
const scene = new G3D.Scene(engine);
// create camera
const camera = new G3D.ArcRotateCamera(scene);
camera.alpha = 45;
camera.beta = 30;
camera.radius = 12;
camera.fov = 60;
// create 3 lights
const light1 = new G3D.DirectionalLight(scene);
light1.direction.x = -1;
light1.direction.y = 0;
light1.direction.z = 1;
const light2 = new G3D.HemisphereLight(scene);
// create mesh
const mesh = G3D.MeshBuilder.createCube(scene, 6);
Object.assign(mesh.materials.default.diffuseColor, {r: 200, g: 100, b: 100}); Object.assign(mesh.materials.default.specularColor, {r: 200, g: 100, b: 100});
mesh.materials.default.glossiness = 10;
return function () {
mesh.rotation.y +=1;
scene.render();
}
}