fixing function

pull/18/head
Patricio Gonzalez Vivo 9 years ago
parent f90af2b3ef
commit 5d95a11cd0

@ -65,6 +65,9 @@
<canvas id="canvas" class="center" width="800" height="320"></canvas>
<div id="editor"></div>
<script type="text/javascript">
var billboard;
var editor;
// Graph plotter function take from
// From http://blog.hvidtfeldts.net/index.php/2011/07/plotting-high-frequency-functions-using-a-gpu/
var preFunction = "\n\
@ -139,6 +142,25 @@ void main(){\n\
gl_FragColor = vec4(color,1.0);\n\
}";
// Events
window.requestAnimFrame = (function() {
return window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.oRequestAnimationFrame ||
window.msRequestAnimationFrame ||
function(/* function FrameRequestCallback */ callback, /* DOMElement Element */ element) {
return window.setTimeout(callback, 1000/60);
};
})();
// Keep track of the mouse
var mouse = {x: 0, y: 0};
document.addEventListener('mousemove', function(e){
mouse.x = e.clientX || e.pageX;
mouse.y = e.clientY || e.pageY
}, false);
window.addEventListener("hashchange", function () {
loadFunction()
}, false);
@ -178,12 +200,12 @@ float function(in float x) {\n\
var demoCanvas = document.getElementById("canvas");
if(demoCanvas){
demoCanvas.setAttribute("data-fragment", preFunction + func + postFunction);
loadShaders();
billboard = new GlslCanvas(demoCanvas);
}
var demoEditor = document.getElementById("editor");
if(demoEditor){
var editor = CodeMirror(demoEditor,{
if (demoEditor) {
editor = CodeMirror(demoEditor,{
value: func,
lineNumbers: false,
matchBrackets: true,
@ -197,14 +219,20 @@ float function(in float x) {\n\
editor.on("change", function() {
demoCanvas.setAttribute("data-fragment", preFunction + editor.getValue() + postFunction);
loadShaders();
billboard.load(editor.getValue());
});
}
}
function render() {
billboard.setMouse(mouse)
billboard.render()
window.requestAnimFrame(render);
}
window.onload = function () {
loadFunction();
renderShaders();
render();
};
</script>
</body>

Loading…
Cancel
Save