FPS counter for three.js that updates in the webgl canvas. Simple 2 digit renderer. Extends three-screen-quad. See this live.
-
index.js
main
-
fps.frag.js
frag shader
-
NumberTexture.js
generates the numbers texture
-
Stats.js
computes fps - Stripped down Stats.js
-
FPSCounter( renderer:[ THREE.WebGLRenderer ] , parameters )
A renderer from the main app has to be passed, along with parameters for three-screen-quad.
params: top: Number || String //default: null left: Number || String //default: 0 right: Number || String //default: null bottom: Number || String //default: 0 width: Number || String //default: '80px' height: Number || String //default: '40px'
extends three-screen-quad.
-
void setNumber( number:[int] )
sets the number between 00 and 99, refreshes the uniform
var FPSCounter = require('three-fps-counter')(THREE); //pass your instance of three
var myfps = new FPSCounter( renderer );
mainRenderLoop(){
renderer.render(mainScene, mainCamera);
myfps.render();
}
will draw the effect over a scene
npm install
npm start
You should see a cube spinning and the counter in the lower left corner.