WebGL 浏览器函数
1.requestAnimationFrame(func)
请求浏览器在将来某时刻回调函数func以完成重绘。requestAnimationFrame()成功的一个关键是确定你在执行其他用户diamante之前就请求了下一帧,这对异常处理非常重要。如果你在动画回调函数中驱动你的整个3D应用,而代码在请求下一帧之前产生了一个异常,你的整个应用就会挂掉。如果你在做其他事情之前请求下一帧,那么至少还可以保证程序的持续运行。参数:
func:指定将来某时刻调用的函数。函数将来会接收到一个time参数,用来标明此次调用的时间戳。如下例子:
var tick = function(){ ... requestAnimationFrame(tick); }
由于requestAnimation最早是由浏览器提出来的函数,后来被定位HTML 5标准。所有存在浏览器兼容问题。解决兼容问题代码:
if(!window.requestAnimationFrame){ window.requestAnimationFrame = (function(){ return window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function (callback){ window.setTimeout(callback, 1000 / 60); } })(); }
2.cancelAnimationFrame(requestID)
取消由requestAnimationFrame()发起的请求。参数:
requestID:指定requestAnimationFrame()的返回值