@luminocity/lemonate-engine 26.4.1 → 26.4.2

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.
@@ -8086,10 +8086,10 @@
8086
8086
  break;
8087
8087
  default:
8088
8088
  console.error("Unsupported render target type to grab from: " + targetTexture.type);
8089
- return null;
8089
+ return undefined;
8090
8090
  }
8091
8091
  renderer.readRenderTargetPixels(renderTarget, 0, 0, width, height, buffer);
8092
- return buffer;
8092
+ return { width, height, pixels: buffer };
8093
8093
  },
8094
8094
  grabFramebufferImage: function (renderer, rect) {
8095
8095
  const context = renderer.webGlRenderer.getContext();
@@ -11407,7 +11407,7 @@
11407
11407
  }
11408
11408
  }
11409
11409
 
11410
- var engine$1 = "26.4.0";
11410
+ var engine$1 = "26.4.2";
11411
11411
  var bullet = "3.26";
11412
11412
  var lua = "5.4.3";
11413
11413
  var packageVersionInfo = {
@@ -83646,8 +83646,7 @@
83646
83646
  rtCamera;
83647
83647
  rtScene;
83648
83648
  shader;
83649
- jpegData;
83650
- rootDiv;
83649
+ grabbedFrameBuffer;
83651
83650
  constructor(renderer, engine, id, size = 256, noiseStrength = 0.1, noiseFrequency = 1, noiseOctaves = 1) {
83652
83651
  this.renderer = renderer;
83653
83652
  this.engine = engine;
@@ -83700,32 +83699,14 @@
83700
83699
  this.renderer.render(this.rtScene, this.rtCamera);
83701
83700
  this.renderer.setRenderTarget(null);
83702
83701
  }
83703
- debug() {
83704
- console.log("Create Noise Texture debugger");
83705
- this.rootDiv = document.createElement("div");
83706
- this.rootDiv.style.position = "fixed";
83707
- this.rootDiv.style.bottom = "0";
83708
- this.rootDiv.style.background = "#000000";
83709
- this.rootDiv.style.border = "1px solid black";
83710
- this.rootDiv.style.overflow = "auto";
83711
- document.body.appendChild(this.rootDiv);
83712
- const el = document.createElement("img");
83713
- if (this.jpegData)
83714
- el.setAttribute("src", this.jpegData);
83715
- el.style.width = `${this.size}px`;
83716
- el.style.height = `${this.size}px`;
83717
- this.rootDiv.appendChild(el);
83718
- }
83719
83702
  async getTexture() {
83720
- const width = this.renderTarget.width;
83721
- const height = this.renderTarget.height;
83722
- const buffer = textureTools.grabRenderTargetImage(this.renderTarget, this.renderer);
83703
+ this.grabbedFrameBuffer = textureTools.grabRenderTargetImage(this.renderTarget, this.renderer);
83723
83704
  this.emitUpdateEvent();
83724
- return { width, height, buffer };
83705
+ return this.grabbedFrameBuffer;
83725
83706
  }
83726
83707
  emitUpdateEvent() {
83727
83708
  if (this.engine.eventBus.$hasListener(`particles:noiseTexData:${this.id}`)) {
83728
- this.engine.eventBus.$emit(`particles:noiseTexData:${this.id}`, this.jpegData);
83709
+ this.engine.eventBus.$emit(`particles:noiseTexData:${this.id}`, this.grabbedFrameBuffer);
83729
83710
  }
83730
83711
  }
83731
83712
  }
@@ -83864,7 +83845,7 @@
83864
83845
  rtCamera;
83865
83846
  rtScene;
83866
83847
  shader;
83867
- jpegData;
83848
+ grabbedFrameBuffer;
83868
83849
  constructor(renderer, engine, id, size = 256) {
83869
83850
  this.renderer = renderer;
83870
83851
  this.engine = engine;
@@ -83960,15 +83941,13 @@
83960
83941
  this.renderer.setRenderTarget(null);
83961
83942
  }
83962
83943
  async getTexture() {
83963
- const width = this.renderTarget.width;
83964
- const height = this.renderTarget.height;
83965
- const buffer = textureTools.grabRenderTargetImage(this.renderTarget, this.renderer);
83944
+ this.grabbedFrameBuffer = textureTools.grabRenderTargetImage(this.renderTarget, this.renderer);
83966
83945
  this.emitUpdateEvent();
83967
- return { width, height, buffer };
83946
+ return this.grabbedFrameBuffer;
83968
83947
  }
83969
83948
  emitUpdateEvent() {
83970
83949
  if (this.engine.eventBus.$hasListener(`particles:particlePreviewTexData:${this.id}`)) {
83971
- this.engine.eventBus.$emit(`particles:particlePreviewTexData:${this.id}`, this.jpegData);
83950
+ this.engine.eventBus.$emit(`particles:particlePreviewTexData:${this.id}`, this.grabbedFrameBuffer);
83972
83951
  }
83973
83952
  }
83974
83953
  destroy() {
@@ -84078,7 +84057,6 @@
84078
84057
  prewarmAmount = 0;
84079
84058
  emitterType = "point";
84080
84059
  _initialVelocity = new THREE.Vector3();
84081
- _finalVelocity = new THREE.Vector3();
84082
84060
  constructor(container, // TODO
84083
84061
  renderer, particleCount, engine, id) {
84084
84062
  this.renderer = renderer;
package/dist/player.zip CHANGED
Binary file
@@ -1,5 +1,6 @@
1
1
  import { WebGLRenderer } from "three";
2
2
  import { Engine } from "../../Engine";
3
+ import { FrameBufferResult } from "@/Renderer";
3
4
  export declare class CurlNoiseTexturePreview {
4
5
  private renderer;
5
6
  private engine;
@@ -10,8 +11,7 @@ export declare class CurlNoiseTexturePreview {
10
11
  private rtCamera;
11
12
  private rtScene;
12
13
  private shader;
13
- private jpegData?;
14
- private rootDiv?;
14
+ private grabbedFrameBuffer?;
15
15
  constructor(renderer: WebGLRenderer, engine: Engine, id: string, size?: number, noiseStrength?: number, noiseFrequency?: number, noiseOctaves?: number);
16
16
  get noiseStrength(): number;
17
17
  set noiseStrength(v: number);
@@ -20,11 +20,6 @@ export declare class CurlNoiseTexturePreview {
20
20
  get noiseOctaves(): number;
21
21
  set noiseOctaves(v: number);
22
22
  render(): void;
23
- debug(): void;
24
- getTexture(): Promise<{
25
- width: number;
26
- height: number;
27
- buffer: Uint8Array;
28
- }>;
23
+ getTexture(): Promise<FrameBufferResult | undefined>;
29
24
  emitUpdateEvent(): void;
30
25
  }
@@ -2,6 +2,7 @@ import { BlendingEnum } from "./Visualization";
2
2
  import { Vector3, Vector2, Vector4, Quaternion, WebGLRenderer, PerspectiveCamera, OrthographicCamera } from "three";
3
3
  import { Engine } from "../../Engine";
4
4
  import { Emitter, EmissionType, EmitterShape, EmitterConfig } from "./Emitters/Emitter";
5
+ import { FrameBufferResult } from "@/Renderer";
5
6
  export declare enum VelocityModeEnum {
6
7
  Constant = 0,
7
8
  Variable = 1
@@ -65,7 +66,6 @@ export declare class ParticleSystem {
65
66
  prewarmAmount: number;
66
67
  emitterType: string;
67
68
  private _initialVelocity;
68
- private _finalVelocity;
69
69
  constructor(container: any, // TODO
70
70
  renderer: WebGLRenderer, particleCount: number, engine: Engine, id: string);
71
71
  destroy(): void;
@@ -223,16 +223,8 @@ export declare class ParticleSystem {
223
223
  rotation: Quaternion;
224
224
  scale: Vector3;
225
225
  }): void;
226
- generateNoisePreview(): Promise<{
227
- width: number;
228
- height: number;
229
- buffer: Uint8Array;
230
- } | undefined>;
231
- generateParticlePreview(): Promise<{
232
- width: number;
233
- height: number;
234
- buffer: Uint8Array;
235
- } | undefined>;
226
+ generateNoisePreview(): Promise<FrameBufferResult | undefined>;
227
+ generateParticlePreview(): Promise<FrameBufferResult | undefined>;
236
228
  setSize(width: number, height: number): void;
237
229
  setCamera(camera: PerspectiveCamera | OrthographicCamera): void;
238
230
  restart(): void;
@@ -1,5 +1,6 @@
1
1
  import { WebGLRenderer, Texture, Vector2, Vector4 } from "three";
2
2
  import { Engine } from "../../Engine";
3
+ import { FrameBufferResult } from "@/Renderer";
3
4
  export declare class ParticleTexturePreview {
4
5
  private renderer;
5
6
  private engine;
@@ -9,7 +10,7 @@ export declare class ParticleTexturePreview {
9
10
  private rtCamera;
10
11
  private rtScene;
11
12
  private shader;
12
- private jpegData?;
13
+ private grabbedFrameBuffer?;
13
14
  constructor(renderer: WebGLRenderer, engine: Engine, id: string, size?: number);
14
15
  get lifeRatio(): number;
15
16
  set lifeRatio(v: number);
@@ -44,11 +45,7 @@ export declare class ParticleTexturePreview {
44
45
  set fadeFinalOpacity(v: number);
45
46
  private handleSetLifeRatio;
46
47
  render(): void;
47
- getTexture(): Promise<{
48
- width: number;
49
- height: number;
50
- buffer: Uint8Array;
51
- }>;
48
+ getTexture(): Promise<FrameBufferResult | undefined>;
52
49
  emitUpdateEvent(): void;
53
50
  destroy(): void;
54
51
  }
@@ -1,5 +1,5 @@
1
1
  import { PlaneGeometry, Mesh, Scene, CanvasTexture, Vector2, WebGLRenderer, Camera, Texture, WebGLRenderTarget } from "three";
2
- import { Renderer } from "../Renderer";
2
+ import { FrameBufferResult, Renderer } from "../Renderer";
3
3
  export type BlitScene = {
4
4
  scene: Scene;
5
5
  geometry: PlaneGeometry;
@@ -11,7 +11,7 @@ declare const _default: {
11
11
  dispose: () => void;
12
12
  renderManyTexturesToScreen: (renderer: WebGLRenderer, callback: Function) => void;
13
13
  renderTextureToScreen: (renderer: WebGLRenderer, tex: Texture, position?: Vector2, size?: Vector2, withTonemappingAndColorspace?: boolean) => void;
14
- grabRenderTargetImage: (renderTarget: WebGLRenderTarget, renderer: WebGLRenderer, useDepthTexture?: boolean) => any;
14
+ grabRenderTargetImage: (renderTarget: WebGLRenderTarget, renderer: WebGLRenderer, useDepthTexture?: boolean) => FrameBufferResult | undefined;
15
15
  grabFramebufferImage: (renderer: any, rect: any) => {
16
16
  width: any;
17
17
  height: any;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luminocity/lemonate-engine",
3
- "version": "26.4.1",
3
+ "version": "26.4.2",
4
4
  "productName": "Lemonate Engine",
5
5
  "repository": "https://codeberg.org/Luminocity/lemonate-engine",
6
6
  "homepage": "https://lemonate.io",