Merge branch 'master' into 889-ray-texture

This commit is contained in:
Michael Gevlich 2025-10-22 10:19:09 +04:00
commit c55eff653c
4 changed files with 28 additions and 24 deletions

View File

@ -1,6 +1,6 @@
{
"name": "@openglobus/og",
"version": "0.27.17",
"version": "0.27.19",
"description": "[openglobus](https://www.openglobus.org/) is a javascript/typescript library designed to display interactive 3d maps and planets with map tiles, imagery and vector data, markers, and 3D objects. It uses the WebGL technology, open source, and completely free.",
"main": "lib/og.es.js",
"types": "lib/index.d.ts",

View File

@ -373,30 +373,34 @@ export class InstanceData {
if (this._geoObjectHandler && this._geoObjectHandler._renderer) {
let h = this._geoObjectHandler._renderer.handler,
gl = h.gl!;
let h = this._geoObjectHandler._renderer.handler;
h.deleteTexture(this._colorTexture);
h.deleteTexture(this._normalTexture);
h.deleteTexture(this._metallicRoughnessTexture);
if (h) {
h.deleteTexture(this._colorTexture);
h.deleteTexture(this._normalTexture);
h.deleteTexture(this._metallicRoughnessTexture);
let gl = h.gl;
if (gl) {
gl.deleteBuffer(this._sizeBuffer!);
gl.deleteBuffer(this._translateBuffer!);
gl.deleteBuffer(this._vertexBuffer!);
gl.deleteBuffer(this._rtcPositionHighBuffer!);
gl.deleteBuffer(this._rtcPositionLowBuffer!);
gl.deleteBuffer(this._qRotBuffer!);
gl.deleteBuffer(this._rgbaBuffer!);
gl.deleteBuffer(this._normalsBuffer!);
gl.deleteBuffer(this._indicesBuffer!);
gl.deleteBuffer(this._pickingColorBuffer!);
gl.deleteBuffer(this._visibleBuffer!);
gl.deleteBuffer(this._texCoordBuffer!);
gl.deleteBuffer(this._localPositionBuffer!);
}
}
this._colorTexture = null;
this._normalTexture = null;
this._metallicRoughnessTexture = null;
gl.deleteBuffer(this._sizeBuffer!);
gl.deleteBuffer(this._translateBuffer!);
gl.deleteBuffer(this._vertexBuffer!);
gl.deleteBuffer(this._rtcPositionHighBuffer!);
gl.deleteBuffer(this._rtcPositionLowBuffer!);
gl.deleteBuffer(this._qRotBuffer!);
gl.deleteBuffer(this._rgbaBuffer!);
gl.deleteBuffer(this._normalsBuffer!);
gl.deleteBuffer(this._indicesBuffer!);
gl.deleteBuffer(this._pickingColorBuffer!);
gl.deleteBuffer(this._visibleBuffer!);
gl.deleteBuffer(this._texCoordBuffer!);
gl.deleteBuffer(this._localPositionBuffer!);
}
this._sizeBuffer = null;

View File

@ -1457,7 +1457,7 @@ class Renderer {
this.renderNodes = {};
//@ts-ignore
this.activeCamera = null;
//this.activeCamera = null;
this.controls = {};
@ -1493,7 +1493,7 @@ class Renderer {
this.handler.destroy();
// @ts-ignore
this.handler = null;
//this.handler = null;
this._initialized = false;
}

View File

@ -1305,8 +1305,8 @@ class Handler {
}
public deleteTexture(texture: WebGLTextureExt | null | undefined) {
if (texture && !texture.default) {
this.gl!.deleteTexture(texture);
if (texture && !texture.default && this.gl) {
this.gl.deleteTexture(texture);
}
}