new features

This commit is contained in:
2025-07-05 00:55:57 +00:00
parent 083abb53d4
commit 9090ea4c10
5 changed files with 242 additions and 10 deletions

View File

@ -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();