diff options
| author | James Barnett <noreply@jamesbarnett.xyz> | 2025-07-26 11:17:10 +0100 |
|---|---|---|
| committer | James Barnett <noreply@jamesbarnett.xyz> | 2025-07-26 11:17:10 +0100 |
| commit | 10bfc58085c6ab7e62077a1a9b6a6d922fffb025 (patch) | |
| tree | 3e1d3ff39891c2c2408235c209566f4c51915859 /src/models/Colour.ts | |
| parent | ebc500c522e7233fbc6037bce0569edf3a0b5136 (diff) | |
| download | js-raytracer-10bfc58085c6ab7e62077a1a9b6a6d922fffb025.tar.xz js-raytracer-10bfc58085c6ab7e62077a1a9b6a6d922fffb025.zip | |
Rework multithreaded rendering
Render worker tasks are now split into chunks rather than row blocks for better thread utilisation
Diffstat (limited to 'src/models/Colour.ts')
| -rw-r--r-- | src/models/Colour.ts | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/models/Colour.ts b/src/models/Colour.ts new file mode 100644 index 0000000..3c9d8da --- /dev/null +++ b/src/models/Colour.ts @@ -0,0 +1,16 @@ +import {Vector} from './Vector'; +import 'reflect-metadata'; + +export class Colour extends Vector { + constructor(readonly r: number, readonly g: number, readonly b: number) { + super(r, g, b); + } + + static fromVector(vector: Vector): Colour { + return new Colour(vector.x, vector.y, vector.z); + } + + toVector(): Vector { + return new Vector(this.r, this.g, this.b); + } +} |