mirror of
https://github.com/scratchfoundation/scratch-render.git
synced 2025-06-15 06:51:12 -04:00
WebGL-based rendering engine for Scratch 3.0
* Quick example of a collision test integration test * Add a test for ghost and hidden sprites * enable scratch/es6 which then had my lint error for `(param) => {}` arrows * cleanup npm test command * an a was an an but should have been an a * 2space tabs for the html doc * Add some comments in the integration index html * Add a few more comments about intentionally leaking variables into the global scope * add some more comments for the integration helper and add a timeout * 4 space tabs are actually correct * adding even more comments and improving readability a little * fix lint no-shadow rule * fix indentation on comment |
||
---|---|---|
.github | ||
src | ||
test | ||
.editorconfig | ||
.eslintignore | ||
.eslintrc.js | ||
.gitattributes | ||
.gitignore | ||
.jsdoc.json | ||
.npmignore | ||
.travis.yml | ||
LICENSE | ||
package.json | ||
README.md | ||
TRADEMARK | ||
webpack.config.js |
scratch-render
WebGL-based rendering engine for Scratch 3.0
Installation
npm install https://github.com/LLK/scratch-render.git
Setup
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Scratch WebGL rendering demo</title>
</head>
<body>
<canvas id="myStage"></canvas>
<canvas id="myDebug"></canvas>
</body>
</html>
var canvas = document.getElementById('myStage');
var debug = document.getElementById('myDebug');
// Instantiate the renderer
var renderer = new require('scratch-render')(canvas);
// Connect to debug canvas
renderer.setDebugCanvas(debug);
// Start drawing
function drawStep() {
renderer.draw();
requestAnimationFrame(drawStep);
}
drawStep();
// Connect to worker (see "playground" example)
var worker = new Worker('worker.js');
renderer.connectWorker(worker);
Standalone Build
npm run build
<script src="/path/to/render.js"></script>
<script>
var renderer = new window.RenderWebGLLocal();
// do things
</script>
Testing
npm test
Donate
We provide Scratch free of charge, and want to keep it that way! Please consider making a donation to support our continued engineering, design, community, and resource development efforts. Donations of any size are appreciated. Thank you!