Comparing version 0.0.92 to 0.0.93
{ | ||
"name": "ogl", | ||
"version": "0.0.92", | ||
"version": "0.0.93", | ||
"description": "WebGL Library", | ||
@@ -5,0 +5,0 @@ "main": "src/index.mjs", |
@@ -35,2 +35,4 @@ <p align="center"> | ||
⚠️ *Note: Typescript users may be interested in using a [TS fork of the library](https://github.com/nshen/ogl-typescript), kindly maintained by [nshen](https://github.com/nshen).* | ||
## Install | ||
@@ -232,31 +234,4 @@ | ||
Any additional layers of abstraction will be included as **Extras**, and not part of the core as to reduce bloat. These provide a wide breadth of functionality, ranging from simple to fairly advanced. | ||
Any additional layers of abstraction will be included as **Extras**, and not part of the core as to reduce bloat. These provide a wide breadth of functionality, ranging from simple to advanced. | ||
Below is an **Extras** wish-list, and is still a work-in-progress as examples are developed. | ||
- [x] Animation.js | ||
- [x] Box.js | ||
- [x] Curve.js | ||
- [x] Cylinder.js | ||
- [x] Flowmap.js | ||
- [x] GLTFLoader.js | ||
- [x] GLTFAnimation.js | ||
- [x] GLTFSkin.js | ||
- [x] GPGPU.js | ||
- [x] KTXTexture.js | ||
- [x] NormalProgram.js | ||
- [x] Orbit.js | ||
- [x] Plane.js | ||
- [x] Polyline.js | ||
- [x] Post.js | ||
- [x] Raycast.js | ||
- [x] Shadow.js | ||
- [x] Skin.js | ||
- [x] Sphere.js | ||
- [x] Text.js | ||
- [x] TextureLoader.js | ||
- [x] Torus.js | ||
- [x] Triangle.js | ||
- [ ] OBJLoader.js | ||
## Unlicense | ||
@@ -263,0 +238,0 @@ |
@@ -148,3 +148,3 @@ // TODO: upload empty texture if null ? maybe not | ||
let textureUnit = -1; | ||
const programActive = this.gl.renderer.currentProgram === this.id; | ||
const programActive = this.gl.renderer.state.currentProgram === this.id; | ||
@@ -154,3 +154,3 @@ // Avoid gl call if program already in use | ||
this.gl.useProgram(this.program); | ||
this.gl.renderer.currentProgram = this.id; | ||
this.gl.renderer.state.currentProgram = this.id; | ||
} | ||
@@ -157,0 +157,0 @@ |
@@ -71,2 +71,3 @@ import { Vec3 } from '../math/Vec3.js'; | ||
this.state.uniformLocations = new Map(); | ||
this.state.currentProgram = null; | ||
@@ -73,0 +74,0 @@ // store requested extensions |
@@ -32,3 +32,3 @@ // TODO: test stencil and depth | ||
this.target = target; | ||
this.gl.bindFramebuffer(this.target, this.buffer); | ||
this.gl.renderer.bindFramebuffer(this); | ||
@@ -105,3 +105,3 @@ this.textures = []; | ||
this.gl.bindFramebuffer(this.target, null); | ||
this.gl.renderer.bindFramebuffer({ target: this.target }); | ||
} | ||
@@ -114,3 +114,3 @@ | ||
this.height = height; | ||
this.gl.bindFramebuffer(this.target, this.buffer); | ||
this.gl.renderer.bindFramebuffer(this); | ||
@@ -148,4 +148,4 @@ for (let i = 0; i < this.textures.length; i++) { | ||
this.gl.bindFramebuffer(this.target, null); | ||
this.gl.renderer.bindFramebuffer({ target: this.target }); | ||
} | ||
} |
@@ -50,3 +50,3 @@ export function Text({ | ||
for (let i = 0; i < numChars; i++) { | ||
buffers.id[i] = i; | ||
buffers.id.set([i, i, i, i], i * 4); | ||
buffers.index.set([i * 4, i * 4 + 2, i * 4 + 1, i * 4 + 1, i * 4 + 2, i * 4 + 3], i * 6); | ||
@@ -53,0 +53,0 @@ } |
8084
291025
260