Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

webgl-2d

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

webgl-2d

Canvas to web-gl converter

  • 0.0.2
  • latest
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

WebGL-2D

HTML5 Canvas2D API in WebGL.

Authors:

  • Corban Brook @corban
  • Bobby Richter @secretrobotron
  • Charles J. Cliffe @ccliffe

This project aims to be a complete port of the Canvas2D API implemented in a WebGL context. WebGL-2D is a proof of concept and attempts to ascertain performance improvements over Canvas2D.

It should allow most Canvas2D applications to be switched to a WebGL context.

Check out a LIVE DEMO!

20110304-qfkhgf9hjin5uk3we9rmgpwtf8.jpg

Usage

Switching your Canvas2D sketch to a WebGL2D is very simple and only requires one additional line of code:

var cvs = document.getElementById("myCanvas");

WebGL2D.enable(cvs); // adds "webgl-2d" context to cvs

var ctx = cvs.getContext("webgl-2d"); // easily switch between "webgl-2d" and "2d" contexts

Supported Canvas2D Features

WebGL-2D is a work in progress and currently supports a very small subset of the Canvas2D API.

  • strokeStyle
  • fillStyle
  • strokeRect
  • fillRect
  • translate
  • rotate
  • scale
  • save
  • restore
  • lineWidth
  • drawImage
  • createImageData
  • getImageData
  • putImageData
  • beginPath
  • closePath
  • moveTo
  • lineTo
  • rect
  • fill*
  • stroke*

*fill and stroke only work on straight line paths supported above, arc, and curves are not yet supported.

All other properties or functions are currently stubbed. Properties are set to their defaults and functions are empty.

Benchmarks

WebGL-2D should be faster than Canvas2D at certain things and slower at others. It is important that you know what to expect when using WebGL-2D with your project.

The benchmarks directory contains benchmarks for testing performance

asteroidsbench/

Kevin Roast has graciously given permission to include this benchmark in the WebGL-2D project.

This benchmark is perfect for testing real world canvas usage in game engine. It relies heavily on 9 arg drawImage cropping to implement scrolling backgrounds and stripstrip animations.

Visit his website for other HTML5 canvas demos as well as the asteroids game

FAQs

Package last updated on 27 Jul 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc