@onerjs/core 8.26.9 → 8.27.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Buffers/buffer.d.ts +4 -3
- package/Buffers/buffer.js +4 -3
- package/Buffers/buffer.js.map +1 -1
- package/Cameras/Inputs/BaseCameraPointersInput.js +2 -0
- package/Cameras/Inputs/BaseCameraPointersInput.js.map +1 -1
- package/Cameras/Inputs/geospatialCameraMouseWheelInput.d.ts +18 -0
- package/Cameras/Inputs/geospatialCameraMouseWheelInput.js +21 -0
- package/Cameras/Inputs/geospatialCameraMouseWheelInput.js.map +1 -0
- package/Cameras/Inputs/geospatialCameraPointersInput.d.ts +45 -0
- package/Cameras/Inputs/geospatialCameraPointersInput.js +119 -0
- package/Cameras/Inputs/geospatialCameraPointersInput.js.map +1 -0
- package/Cameras/Inputs/index.d.ts +2 -0
- package/Cameras/Inputs/index.js +2 -0
- package/Cameras/Inputs/index.js.map +1 -1
- package/Cameras/geospatialCamera.d.ts +89 -0
- package/Cameras/geospatialCamera.js +268 -0
- package/Cameras/geospatialCamera.js.map +1 -0
- package/Cameras/geospatialCameraInputsManager.d.ts +23 -0
- package/Cameras/geospatialCameraInputsManager.js +33 -0
- package/Cameras/geospatialCameraInputsManager.js.map +1 -0
- package/Cameras/index.d.ts +1 -0
- package/Cameras/index.js +1 -0
- package/Cameras/index.js.map +1 -1
- package/Engines/constants.d.ts +2 -0
- package/Engines/constants.js +2 -0
- package/Engines/constants.js.map +1 -1
- package/Events/pointerEvents.d.ts +4 -0
- package/Events/pointerEvents.js.map +1 -1
- package/Materials/PBR/openPbrMaterial.d.ts +3 -0
- package/Materials/PBR/openPbrMaterial.js +18 -8
- package/Materials/PBR/openPbrMaterial.js.map +1 -1
- package/Materials/PBR/pbrBaseMaterial.d.ts +3 -0
- package/Materials/PBR/pbrBaseMaterial.js +11 -2
- package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
- package/Meshes/geometry.js +26 -25
- package/Meshes/geometry.js.map +1 -1
- package/Rendering/geometryBufferRenderer.js +58 -0
- package/Rendering/geometryBufferRenderer.js.map +1 -1
- package/Shaders/geometry.fragment.js +14 -0
- package/Shaders/geometry.fragment.js.map +1 -1
- package/Shaders/geometry.vertex.js +20 -0
- package/Shaders/geometry.vertex.js.map +1 -1
- package/ShadersWGSL/geometry.fragment.js +14 -0
- package/ShadersWGSL/geometry.fragment.js.map +1 -1
- package/ShadersWGSL/geometry.vertex.js +20 -0
- package/ShadersWGSL/geometry.vertex.js.map +1 -1
- package/package.json +1 -1
package/Meshes/geometry.js
CHANGED
|
@@ -11,7 +11,7 @@ import { Tags } from "../Misc/tags.js";
|
|
|
11
11
|
import { extractMinAndMax } from "../Maths/math.functions.js";
|
|
12
12
|
import { EngineStore } from "../Engines/engineStore.js";
|
|
13
13
|
import { useOpenGLOrientationForUV } from "../Compat/compatibilityOptions.js";
|
|
14
|
-
import { CopyFloatData } from "../Buffers/bufferUtils.js";
|
|
14
|
+
import { CopyFloatData, GetTypedArrayData } from "../Buffers/bufferUtils.js";
|
|
15
15
|
/**
|
|
16
16
|
* Class used to store geometry data (vertex buffers + index buffer)
|
|
17
17
|
*/
|
|
@@ -815,36 +815,37 @@ export class Geometry {
|
|
|
815
815
|
* @returns a new geometry object
|
|
816
816
|
*/
|
|
817
817
|
copy(id) {
|
|
818
|
-
const
|
|
819
|
-
|
|
820
|
-
const indices = this.getIndices();
|
|
818
|
+
const geometry = new Geometry(id, this._scene);
|
|
819
|
+
const indices = this.getIndices(undefined, true);
|
|
821
820
|
if (indices) {
|
|
822
|
-
|
|
823
|
-
vertexData.indices.push(indices[index]);
|
|
824
|
-
}
|
|
821
|
+
geometry.setIndices(indices);
|
|
825
822
|
}
|
|
826
823
|
let updatable = false;
|
|
827
|
-
let stopChecking = false;
|
|
828
824
|
let kind;
|
|
829
825
|
for (kind in this._vertexBuffers) {
|
|
830
|
-
const
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
}
|
|
835
|
-
else {
|
|
836
|
-
vertexData.set(data.slice(0), kind);
|
|
837
|
-
}
|
|
838
|
-
if (!stopChecking) {
|
|
839
|
-
const vb = this.getVertexBuffer(kind);
|
|
840
|
-
if (vb) {
|
|
841
|
-
updatable = vb.isUpdatable();
|
|
842
|
-
stopChecking = !updatable;
|
|
843
|
-
}
|
|
844
|
-
}
|
|
826
|
+
const vb = this.getVertexBuffer(kind);
|
|
827
|
+
const bufferData = vb.getData();
|
|
828
|
+
if (!bufferData) {
|
|
829
|
+
continue;
|
|
845
830
|
}
|
|
846
|
-
|
|
847
|
-
|
|
831
|
+
const isUpdatable = vb.isUpdatable();
|
|
832
|
+
const size = vb.getSize();
|
|
833
|
+
const { type, byteOffset, byteStride, normalized } = vb;
|
|
834
|
+
updatable = updatable || isUpdatable;
|
|
835
|
+
const data = GetTypedArrayData(bufferData, size, type, byteOffset, byteStride, normalized, this._totalVertices, true);
|
|
836
|
+
const newVb = new VertexBuffer(this._engine, data, kind, {
|
|
837
|
+
updatable: isUpdatable,
|
|
838
|
+
useBytes: true,
|
|
839
|
+
stride: byteStride,
|
|
840
|
+
size: size,
|
|
841
|
+
offset: byteOffset,
|
|
842
|
+
type: type,
|
|
843
|
+
normalized: normalized,
|
|
844
|
+
takeBufferOwnership: true,
|
|
845
|
+
});
|
|
846
|
+
geometry.setVerticesBuffer(newVb, this._totalVertices);
|
|
847
|
+
}
|
|
848
|
+
geometry._updatable = updatable;
|
|
848
849
|
geometry.delayLoadState = this.delayLoadState;
|
|
849
850
|
geometry.delayLoadingFile = this.delayLoadingFile;
|
|
850
851
|
geometry._delayLoadingFunction = this._delayLoadingFunction;
|