Package stephencarmody.random_rotating_triangles

Source Code of stephencarmody.random_rotating_triangles.FPSCounter

package stephencarmody.random_rotating_triangles;

import stephencarmody.k8.core.Logic;
import stephencarmody.k8.core.Application;
import stephencarmody.k8.core.TexturedTriangles;
import stephencarmody.k8.core.Triangle;
import stephencarmody.k8.text.Text;

public class FPSCounter extends Logic {
   
    private Text text;
    private long lastupdate;
    private long elapsed;
    private float secs;
    private float lastfps;
    private int fps;
    private Triangle t1, t2;
    private int x;
   
    /** Creates a new instance of FPSCounter */
    public FPSCounter() {
      setUpdateRate(1);
      text = new Text();
      x = -100;
    }
   
    public void update(long time) {
        // Calculate elapsed time
        elapsed = time - lastupdate;
        lastupdate = time;
       
        // Update Text
        secs = (float) elapsed / 1000000000;
        fps = Math.round((float)Application.frame()/secs);
        text.setText(TexturedTriangles.count + " @ " + fps + " fps");
       
        if ( fps != lastfps ) {
          t1 = new Triangle();
            t1.texture(Main.wood);
            t1.vertices(0, fps, 0, 0, 0, 0, 1, fps, 0);
            t1.texCoords(0,0,0,1,1,0);
            t2 = new Triangle();
            t2.texture(Main.wood);
            t2.vertices(0, 0, 0, 1, 0, 0, 1, fps, 0);
            t2.texCoords(0,1,1,1,1,0);
            t1.appendChild(t2);
            t1.moveRight(x);
            t1.moveForward(100);
            x++;
        }
       
        lastfps = fps;
    }
   
    public Text getText() {
      return text;
    }
   
}
TOP

Related Classes of stephencarmody.random_rotating_triangles.FPSCounter

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.