2016-08-08 14:23:25 -04:00
## scratch-render
#### WebGL-based rendering engine for Scratch 3.0
2016-05-13 10:48:45 -07:00
2016-08-08 14:23:25 -04:00
[](https://travis-ci.org/LLK/scratch-render)
2017-02-10 11:35:18 -08:00
[](https://greenkeeper.io/)
2016-05-13 10:48:45 -07:00
## Installation
```bash
2016-08-08 14:23:25 -04:00
npm install https://github.com/LLK/scratch-render.git
2016-05-13 10:48:45 -07:00
```
## Setup
2016-08-08 14:23:25 -04:00
```html
<!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 >
```
```js
var canvas = document.getElementById('myStage');
2017-04-10 12:58:06 +08:00
var debug = document.getElementById('myDebug');
2016-08-08 14:23:25 -04:00
// Instantiate the renderer
var renderer = new require('scratch-render')(canvas);
// Connect to debug canvas
2017-04-10 12:58:06 +08:00
renderer.setDebugCanvas(debug);
2016-08-08 14:23:25 -04:00
// Start drawing
function drawStep() {
renderer.draw();
requestAnimationFrame(drawStep);
}
drawStep();
// Connect to worker (see "playground" example)
var worker = new Worker('worker.js');
renderer.connectWorker(worker);
```
2016-05-13 10:48:45 -07:00
## Standalone Build
```bash
2016-10-17 09:56:27 -04:00
npm run build
2016-05-13 10:48:45 -07:00
```
```html
2016-08-08 14:23:25 -04:00
< script src = "/path/to/render.js" > < / script >
2016-05-13 10:48:45 -07:00
< script >
2016-08-08 14:23:25 -04:00
var renderer = new window.RenderWebGLLocal();
2016-05-13 10:48:45 -07:00
// do things
< / script >
```
## Testing
```bash
2016-10-17 09:56:27 -04:00
npm test
2016-05-13 10:48:45 -07:00
```
2016-08-08 14:23:25 -04:00
## Donate
We provide [Scratch ](https://scratch.mit.edu ) free of charge, and want to keep it that way! Please consider making a [donation ](https://secure.donationpay.org/scratchfoundation/ ) to support our continued engineering, design, community, and resource development efforts. Donations of any size are appreciated. Thank you!