Skip to content

Commit a77cf52

Browse files
committed
target-framerate: Move to TypeScript
1 parent 3054ada commit a77cf52

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

target-framerate.js renamed to target-framerate.ts

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import {Component, Type} from '@wonderlandengine/api';
2+
import {property} from '@wonderlandengine/api/decorators.js';
23

34
/**
45
* Sets the target framerate
@@ -18,23 +19,23 @@ import {Component, Type} from '@wonderlandengine/api';
1819
*/
1920
export class TargetFramerate extends Component {
2021
static TypeName = 'target-framerate';
21-
static Properties = {
22-
framerate: {type: Type.Float, default: 90.0},
23-
};
22+
23+
@property.float(90.0)
24+
framerate!: number;
2425

2526
onActivate() {
26-
this.engine.onXRSessionStart.add(this.onSessionStartCallback);
27+
this.engine.onXRSessionStart.add(this.setTargetFramerate);
2728
}
2829

2930
onDeactivate() {
30-
this.engine.onXRSessionStart.remove(this.onSessionStartCallback);
31+
this.engine.onXRSessionStart.remove(this.setTargetFramerate);
3132
}
3233

33-
setTargetFramerate = (s) => {
34-
if (s.supportedFrameRates && s.updateTargetFrameRate) {
35-
const a = this.engine.xr.session.supportedFrameRates;
34+
setTargetFramerate = (s: XRSession) => {
35+
if (s.supportedFrameRates) {
36+
const a = s.supportedFrameRates;
3637
a.sort((a, b) => Math.abs(a - this.framerate) - Math.abs(b - this.framerate));
37-
this.engine.xr.session.updateTargetFrameRate(a[0]);
38+
s.updateTargetFrameRate(a[0]);
3839
}
3940
};
4041
}

0 commit comments

Comments
 (0)