@leafer/renderer
Advanced tools
+3
-3
| { | ||
| "name": "@leafer/renderer", | ||
| "version": "1.9.7", | ||
| "version": "1.9.8", | ||
| "description": "@leafer/renderer", | ||
@@ -25,7 +25,7 @@ "author": "Chao (Leafer) Wan", | ||
| "dependencies": { | ||
| "@leafer/core": "1.9.7" | ||
| "@leafer/core": "1.9.8" | ||
| }, | ||
| "devDependencies": { | ||
| "@leafer/interface": "1.9.7" | ||
| "@leafer/interface": "1.9.8" | ||
| } | ||
| } |
+9
-4
@@ -36,2 +36,4 @@ import { ILeaf, ILeaferBase, ILeaferCanvas, IRenderer, IRendererConfig, IEventListenerId, IBounds, IFunction, IRenderOptions } from '@leafer/interface' | ||
| protected requestTime: number | ||
| protected frameTime: number | ||
| protected frames: number[] = [] | ||
| protected __eventIds: IEventListenerId[] | ||
@@ -229,12 +231,15 @@ | ||
| const requestTime = this.requestTime = Date.now() | ||
| this.requestTime = this.frameTime || Date.now() | ||
| const render = () => { | ||
| const nowFPS = 1000 / (Date.now() - requestTime) | ||
| const nowFPS = 1000 / ((this.frameTime = Date.now()) - this.requestTime) | ||
| const { maxFPS } = this.config | ||
| if (maxFPS && nowFPS > maxFPS - 0.5) return Platform.requestRender(render) | ||
| if (maxFPS && nowFPS > maxFPS) return Platform.requestRender(render) | ||
| this.FPS = Math.min(120, Math.ceil(nowFPS)) | ||
| const { frames } = this | ||
| if (frames.length > 30) frames.shift() | ||
| frames.push(nowFPS) | ||
| this.FPS = Math.round(frames.reduce((a, b) => a + b, 0) / frames.length) // 帧率采样 | ||
| this.requestTime = 0 | ||
@@ -241,0 +246,0 @@ |
+2
-0
@@ -22,2 +22,4 @@ import { IRenderer, ILeaf, ILeaferCanvas, IBounds, IRendererConfig, IRenderOptions, IEventListenerId, IFunction } from '@leafer/interface'; | ||
| protected requestTime: number; | ||
| protected frameTime: number; | ||
| protected frames: number[]; | ||
| protected __eventIds: IEventListenerId[]; | ||
@@ -24,0 +26,0 @@ protected get needFill(): boolean; |
13019
2.46%290
2.47%+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
Updated