three.js工作台

特别说明

初步实现了three.js的渲染流程,并使其结合div的属性拓展出各种流程,只要有驱动cpu侧的js代码和gpu侧的shader代码,再加上一些贴图和参数的路径即可。比如下方展区在本文章原始的.md文件中的书写如下,所有的js、shader、贴图等都通过div的属性的方式传递给js。

1
2
3
4
5
6
7
<div class="threejs"
js="/js/threejs/first.js"
ps="/shaders/threejs/first.ps"
time_rate=0.05
skycubemap="../cubemap_lake/lake.jpg"
texture0="grid.png"
></div>

目前已实现backbuffer的绘制,后续考虑接入framebuffer以完善更多的流程。

目前使用OrbitControls模式(轨迹模式)控制相机,如展区所示,相机可围绕原点进行旋转和拉伸远近。

在PC上可在画布内按住鼠标左键拖动以移动相机视角,鼠标右键以拉伸远近。

在手机上可直接用手指在画布内滑动控制视角。同时双指可拉伸远近及平移相机。