18 lines
379 B
JavaScript
18 lines
379 B
JavaScript
|
import { Vec3 } from '../math/Vec3.js'
|
||
|
import { Mat4 } from '../math/Mat4.js'
|
||
|
|
||
|
export class Camera {
|
||
|
|
||
|
constructor() {
|
||
|
this.position = new Vec3()
|
||
|
this.rotation = new Vec3()
|
||
|
}
|
||
|
|
||
|
view() {
|
||
|
return new Mat4()
|
||
|
.identity()
|
||
|
.rot(this.rotation.clone().multS(Math.PI/180))
|
||
|
.pos(this.position.clone().multS(-1))
|
||
|
}
|
||
|
|
||
|
}
|