https://github.com/prozi/gstats
fork of https://github.com/eXponenta/gstatsjs/
https://github.com/prozi/gstats
Last synced: 3 months ago
JSON representation
fork of https://github.com/eXponenta/gstatsjs/
- Host: GitHub
- URL: https://github.com/prozi/gstats
- Owner: Prozi
- License: gpl-3.0
- Created: 2021-04-06T02:20:47.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2024-07-23T23:29:08.000Z (11 months ago)
- Last Synced: 2024-07-25T10:28:51.427Z (11 months ago)
- Language: TypeScript
- Size: 51.8 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# gstatsjs
This is a fork of [eXponenta's gstatsjs](https://github.com/eXponenta/gstatsjs) that can be imported as a ES6 module. Additionally, it can be installed from [NPM](https://www.npmjs.com/package/gstats). More informations [here](https://github.com/eXponenta/gstatsjs/pull/2).
It also drops support of Pixi v4 in favor of v5.
```sh
# for npm users
npm install @pietal.dev/gstats --save
# alternatively, for yarn users
yarn add @pietal.dev/gstats --save
```Graphics statistics (Texture count, DrawPasses) for WebGL applications. Capability with [stats.js](https://github.com/mrdoob/stats.js)
# Remarks
~~Due to [bug of cacheAsBitmap on Graphics on PIXIv4](https://github.com/pixijs/pixi.js/issues/4692), TextureCounter incorrectly gets the number of textures.~~
Currently Draw Calls counter can't work on Phaser 3, because Phaser 3 use DrawArrays for rendering WebGL instead DrawElements.
Textures amount for Phaser 2 and 3 is relative value, and may be negative.# Examples
[PIXI Stats.js example](./exampless/pixi) - show PIXI game Draw Calls and Textures Count statistics by [Stas.js](https://github.com/mrdoob/stats.js/).
[Phaser 2 CE Stats.js example](./exampless/phaser2ce) - show Phaser 2 CE game Draw Calls and Textures Count statistics by [Stas.js](https://github.com/mrdoob/stats.js/).
Textures amount for Phaser is relative value, and may be negative.
[Phaser 3 Stats.js example](./exampless/phaser3) - show Phaser 3 Textures Count statistics by [Stas.js](https://github.com/mrdoob/stats.js/).
How i can destroy sprite in Phaser 3 with its texture ?
Currently DC can't work, because Phaser 3 use DrawArrays for rendering WebGL.
Textures amount for Phaser3 is relative value, and may be negative.# Using
### PIXI & Stats.js
```javascript
var app = new PIXI.Application(options);
var pixiHooks = new GStats.PIXIHooks(app);
var stats = new GStats.StatsJSAdapter(pixiHooks);
document.body.appendChild(stats.stats.dom || stats.stats.domElement);
app.ticker.add(stats.update);
```### Phaser 2/3 & Stats.js
```javascript
var game = new Phaser.Game(options);
var phaserHooks = new GStats.PhaserHooks(game);
var stats = new GStats.StatsJSAdapter(phaserHooks);
document.body.appendChild(stats.stats.dom || stats.stats.domElement);//or other update function
function update() {
stats.update();
}
```### PIXI/Phaser & Show stats in app context
coming soon...
### Raw WebGL & Stats.js
```javascript
var gl = // WebGL2RenderingContext;
var baseHooks = new GStats.BaseHooks();
baseHooks.attach(gl);
var stats = new GStats.StatsJSAdapter(baseHooks);document.body.appendChild(stats.stats.dom || stats.stats.domElement);
//or other update function
function update() {
stats.update();
}
```### TypeScript
Go to [index.d.ts](https://github.com/Prozi/gstats/blob/master/dist/index.d.ts)