判断接口更改、新增FrameUpdated核心事件

This commit is contained in:
yhh
2020-11-24 12:15:20 +08:00
parent e67f568069
commit 5c0ee92d85
8 changed files with 14 additions and 15 deletions

View File

@@ -70,7 +70,8 @@ declare module es {
enum CoreEvents {
GraphicsDeviceReset = 0,
SceneChanged = 1,
OrientationChanged = 2
OrientationChanged = 2,
FrameUpdated = 3
}
}
declare module es {

View File

@@ -358,6 +358,7 @@ var es;
this.height = height;
Core._instance = this;
Core.emitter = new es.Emitter();
Core.emitter.addObserver(es.CoreEvents.FrameUpdated, this.update, this);
Core.registerGlobalManager(this._timerManager);
this.initialize();
}
@@ -510,6 +511,7 @@ var es;
CoreEvents[CoreEvents["GraphicsDeviceReset"] = 0] = "GraphicsDeviceReset";
CoreEvents[CoreEvents["SceneChanged"] = 1] = "SceneChanged";
CoreEvents[CoreEvents["OrientationChanged"] = 2] = "OrientationChanged";
CoreEvents[CoreEvents["FrameUpdated"] = 3] = "FrameUpdated";
})(CoreEvents = es.CoreEvents || (es.CoreEvents = {}));
})(es || (es = {}));
var es;
@@ -866,10 +868,6 @@ var es;
this.renderableComponents.updateList();
};
Scene.prototype.render = function () {
if (this._renderers.length == 0) {
console.error("场景中没有渲染器!");
return;
}
for (var i = 0; i < this._renderers.length; i++) {
this._renderers[i].render(this);
}
@@ -1351,7 +1349,7 @@ var es;
return IUpdatableComparer;
}());
es.IUpdatableComparer = IUpdatableComparer;
es.isIUpdatable = function (props) { return typeof props['js'] !== 'undefined'; };
es.isIUpdatable = function (props) { return typeof props['update'] !== 'undefined'; };
})(es || (es = {}));
var es;
(function (es) {
@@ -6286,7 +6284,7 @@ var es;
return Pool;
}());
es.Pool = Pool;
es.isIPoolable = function (props) { return typeof props['js'] !== 'undefined'; };
es.isIPoolable = function (props) { return typeof props['reset'] !== 'undefined'; };
})(es || (es = {}));
var RandomUtils = (function () {
function RandomUtils() {

File diff suppressed because one or more lines are too long

View File

@@ -17,5 +17,5 @@ module es {
}
}
export var isIUpdatable = (props: any): props is IUpdatable => typeof (props as IUpdatable)['js'] !== 'undefined';
export var isIUpdatable = (props: any): props is IUpdatable => typeof (props as IUpdatable)['update'] !== 'undefined';
}

View File

@@ -31,6 +31,7 @@ module es {
Core._instance = this;
Core.emitter = new Emitter<CoreEvents>();
Core.emitter.addObserver(CoreEvents.FrameUpdated, this.update, this);
Core.registerGlobalManager(this._timerManager);

View File

@@ -12,5 +12,9 @@ module es {
* 当设备方向改变时触发
*/
OrientationChanged,
/**
* 当每帧事件触发时
*/
FrameUpdated,
}
}

View File

@@ -124,11 +124,6 @@ module es {
}
public render() {
if (this._renderers.length == 0) {
console.error("场景中没有渲染器!");
return;
}
for (let i = 0; i < this._renderers.length; i++) {
this._renderers[i].render(this);
}

View File

@@ -65,5 +65,5 @@ module es {
reset();
}
export var isIPoolable = (props: any): props is IPoolable => typeof (props as IPoolable)['js'] !== 'undefined';
export var isIPoolable = (props: any): props is IPoolable => typeof (props as IPoolable)['reset'] !== 'undefined';
}