3Dparallax / insight

A helpful Chrome extension for WebGL development

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This project is DEPRECATED and no longer available on the Chrome Web Store.

WebGL Insight

About

Insight is a WebGL debugging toolkit providing a variety of capabilities enabling more productive WebGL development and more efficient WebGL applications.

Features

  • Chrome Extension embedded in the Chrome DevTools panel
  • Overdraw Inspector
  • Mipmap Inspector
  • Depth Inspector
  • Call Stack Timeline and Statistics
  • Program Usage Count
  • Duplicate Program Usage Detector
  • Program Viewer
  • Frame Control
  • State Variable Editor
  • Resource Viewer

Installation & Usage

Install Insight from the Chrome Web Store.

When the extension is installed, open up the Chrome DevTools panel, click on the "WebGL Insight" tab, and browse to a WebGL application.

Overdraw Inspector

Detects how how many times a pixel has been drawn. The color ranges from green to red. Red shows a pixel that has been overdrawn multiple times while green is drawn on clear.

Before After

Mipmap Inspector

Displays the mipmap levels for a selected texture in different colors. Depending on how many mipmap levels there are and the maximum mipmap level, the colors will vary. This can be used to show whether certain mipmap levels of a selected texture is used.

Before After

Depth Inspector

Displays the relative depths of the pixels being drawn. Lighter values are further away whereas darker values are closer.

Before After

Call Stack Timeline and Statistics

Collects WebGL calls in a timeline.

Call Timeline

Counts WebGL calls during that time and displays the result in a histogram.

Call Statistics

Program Usage Count

Record how many times each shader program has been called by useProgram.

Program Usage

Duplicate Program Usage Detection

Detects whether there are any duplicate useProgram calls on the same program.

Duplicate Usage

Program Viewer

Program View

Frame Control

Pauses and controls animated frames.

Frame Control

State Variable Editor

Edit WebGL states.

State Editor

Resource Viewer

View textures, buffers, frame buffers, and render buffers.

Resource Viewer

Known Issues

  • Unity Web Game support is limited

Development

Just load the folder as an unpacked Extension.

There are 3 possible DevTools to open to debug the extension.

  1. The extension's background page. This isn't useful.
  2. The DevTools you have open to inspect the page (and view the extension panel). Obviously neccessary, and since the instrumentation is injected into the page, much of the extension code is debuggable here.
  3. DevTools on DevTools. Much of the tricky stuff runs in this context, so you'll want to keep it open.

Releasing

(Guesses from a non-maintainer) Run build/build.sh, which should concatenate the src files and copy to your (Mac) clipboard. Then paste into the top of content_script_init.js.

About

A helpful Chrome extension for WebGL development

License:MIT License


Languages

Language:JavaScript 98.8%Language:CSS 1.0%Language:Shell 0.1%Language:HTML 0.1%