new features
This commit is contained in:
@ -5,6 +5,7 @@ interface WorkerMessage {
|
||||
width?: number;
|
||||
height?: number;
|
||||
time?: number;
|
||||
renderMode?: string;
|
||||
}
|
||||
|
||||
interface WorkerResponse {
|
||||
@ -25,6 +26,7 @@ export class FakeShader {
|
||||
private isCompiled: boolean = false;
|
||||
private isRendering: boolean = false;
|
||||
private pendingRenders: string[] = [];
|
||||
private renderMode: string = 'classic';
|
||||
|
||||
// Frame rate limiting
|
||||
private targetFPS: number = 30;
|
||||
@ -111,7 +113,8 @@ export class FakeShader {
|
||||
type: 'render',
|
||||
width: this.canvas.width,
|
||||
height: this.canvas.height,
|
||||
time: currentTime
|
||||
time: currentTime,
|
||||
renderMode: this.renderMode
|
||||
} as WorkerMessage);
|
||||
}
|
||||
|
||||
@ -179,6 +182,10 @@ export class FakeShader {
|
||||
this.frameInterval = 1000 / this.targetFPS;
|
||||
}
|
||||
|
||||
setRenderMode(mode: string): void {
|
||||
this.renderMode = mode;
|
||||
}
|
||||
|
||||
destroy(): void {
|
||||
this.stopAnimation();
|
||||
this.worker.terminate();
|
||||
|
||||
Reference in New Issue
Block a user