demo 更新
This commit is contained in:
Vendored
+2444
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Vendored
+1
File diff suppressed because one or more lines are too long
Vendored
+19
@@ -328,6 +328,7 @@ declare module es {
|
||||
onAddedToScene(): void;
|
||||
onRemovedFromScene(): void;
|
||||
update(): void;
|
||||
debugRender(): void;
|
||||
addComponent<T extends Component>(component: T): T;
|
||||
getComponent<T extends Component>(type: any): T;
|
||||
hasComponent<T extends Component>(type: any): boolean;
|
||||
@@ -923,6 +924,7 @@ declare module es {
|
||||
onEntityTransformChanged(comp: transform.Component): void;
|
||||
onEntityEnabled(): void;
|
||||
onEntityDisabled(): void;
|
||||
debugRender(): void;
|
||||
}
|
||||
}
|
||||
declare module es {
|
||||
@@ -1008,6 +1010,7 @@ declare module es {
|
||||
isVisible: boolean;
|
||||
isVisibleFromCamera(camera: Camera): any;
|
||||
render(camera: Camera): any;
|
||||
debugRender(): any;
|
||||
}
|
||||
class RenderableComparer {
|
||||
compare(self: IRenderable, other: IRenderable): number;
|
||||
@@ -1152,6 +1155,9 @@ declare module es {
|
||||
abstract class Renderer {
|
||||
camera: Camera;
|
||||
readonly renderOrder: number;
|
||||
renderTexture: egret.RenderTexture;
|
||||
shouldDebugRender: boolean;
|
||||
readonly wantsToRenderToSceneRenderTarget: boolean;
|
||||
protected constructor(renderOrder: number, camera?: Camera);
|
||||
onAddedToScene(scene: Scene): void;
|
||||
unload(): void;
|
||||
@@ -1160,6 +1166,7 @@ declare module es {
|
||||
compareTo(other: Renderer): number;
|
||||
protected beginRender(cam: Camera): void;
|
||||
protected renderAfterStateCheck(renderable: IRenderable, cam: Camera): void;
|
||||
protected debugRender(scene: Scene, cam: Camera): void;
|
||||
}
|
||||
}
|
||||
declare module es {
|
||||
@@ -1168,9 +1175,21 @@ declare module es {
|
||||
render(scene: Scene): void;
|
||||
}
|
||||
}
|
||||
declare module es {
|
||||
class RenderLayerExcludeRenderer extends Renderer {
|
||||
excludedRenderLayers: number[];
|
||||
constructor(renderOrder: number, ...excludedRenderLayers: number[]);
|
||||
render(scene: es.Scene): void;
|
||||
protected debugRender(scene: es.Scene, cam: es.Camera): void;
|
||||
}
|
||||
}
|
||||
declare module es {
|
||||
class ScreenSpaceRenderer extends Renderer {
|
||||
renderLayers: number[];
|
||||
constructor(renderOrder: number, ...renderLayers: number[]);
|
||||
render(scene: Scene): void;
|
||||
protected debugRender(scene: es.Scene, cam: es.Camera): void;
|
||||
onSceneBackBufferSizeChanged(newWidth: number, newHeight: number): void;
|
||||
}
|
||||
}
|
||||
declare module es {
|
||||
|
||||
@@ -1536,6 +1536,9 @@ var es;
|
||||
Entity.prototype.update = function () {
|
||||
this.components.update();
|
||||
};
|
||||
Entity.prototype.debugRender = function () {
|
||||
this.components.debugRender();
|
||||
};
|
||||
Entity.prototype.addComponent = function (component) {
|
||||
component.entity = this;
|
||||
this.components.add(component);
|
||||
@@ -2712,6 +2715,8 @@ var es;
|
||||
this._areBoundsDirty = true;
|
||||
};
|
||||
RenderableComponent.prototype.isVisibleFromCamera = function (camera) {
|
||||
if (!camera)
|
||||
return false;
|
||||
this.isVisible = camera.bounds.intersects(this.displayObject.getBounds().union(this.bounds));
|
||||
return this.isVisible;
|
||||
};
|
||||
@@ -4230,6 +4235,12 @@ var es;
|
||||
for (var i = 0; i < this._components.length; i++)
|
||||
this._components[i].onDisabled();
|
||||
};
|
||||
ComponentList.prototype.debugRender = function () {
|
||||
for (var i = 0; i < this._components.length; i++) {
|
||||
if (this._components[i].enabled)
|
||||
this._components[i].debugRender();
|
||||
}
|
||||
};
|
||||
ComponentList.compareUpdatableOrder = new es.IUpdatableComparer();
|
||||
return ComponentList;
|
||||
}());
|
||||
@@ -5444,9 +5455,17 @@ var es;
|
||||
function Renderer(renderOrder, camera) {
|
||||
if (camera === void 0) { camera = null; }
|
||||
this.renderOrder = 0;
|
||||
this.shouldDebugRender = true;
|
||||
this.camera = camera;
|
||||
this.renderOrder = renderOrder;
|
||||
}
|
||||
Object.defineProperty(Renderer.prototype, "wantsToRenderToSceneRenderTarget", {
|
||||
get: function () {
|
||||
return !!this.renderTexture;
|
||||
},
|
||||
enumerable: true,
|
||||
configurable: true
|
||||
});
|
||||
Renderer.prototype.onAddedToScene = function (scene) {
|
||||
};
|
||||
Renderer.prototype.unload = function () {
|
||||
@@ -5461,6 +5480,13 @@ var es;
|
||||
Renderer.prototype.renderAfterStateCheck = function (renderable, cam) {
|
||||
renderable.render(cam);
|
||||
};
|
||||
Renderer.prototype.debugRender = function (scene, cam) {
|
||||
for (var i = 0; i < scene.entities.count; i++) {
|
||||
var entity = scene.entities.buffer[i];
|
||||
if (entity.enabled)
|
||||
entity.debugRender();
|
||||
}
|
||||
};
|
||||
return Renderer;
|
||||
}());
|
||||
es.Renderer = Renderer;
|
||||
@@ -5486,13 +5512,85 @@ var es;
|
||||
es.DefaultRenderer = DefaultRenderer;
|
||||
})(es || (es = {}));
|
||||
var es;
|
||||
(function (es) {
|
||||
var RenderLayerExcludeRenderer = (function (_super) {
|
||||
__extends(RenderLayerExcludeRenderer, _super);
|
||||
function RenderLayerExcludeRenderer(renderOrder) {
|
||||
var excludedRenderLayers = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
excludedRenderLayers[_i - 1] = arguments[_i];
|
||||
}
|
||||
var _this = _super.call(this, renderOrder, null) || this;
|
||||
_this.excludedRenderLayers = excludedRenderLayers;
|
||||
return _this;
|
||||
}
|
||||
RenderLayerExcludeRenderer.prototype.render = function (scene) {
|
||||
var cam = this.camera ? this.camera : scene.camera;
|
||||
this.beginRender(cam);
|
||||
for (var i = 0; i < scene.renderableComponents.count; i++) {
|
||||
var renderable = scene.renderableComponents.buffer[i];
|
||||
if (!this.excludedRenderLayers.contains(renderable.renderLayer) && renderable.enabled &&
|
||||
renderable.isVisibleFromCamera(cam))
|
||||
this.renderAfterStateCheck(renderable, cam);
|
||||
}
|
||||
if (this.shouldDebugRender && es.Core.debugRenderEndabled)
|
||||
this.debugRender(scene, cam);
|
||||
};
|
||||
RenderLayerExcludeRenderer.prototype.debugRender = function (scene, cam) {
|
||||
for (var i = 0; i < scene.renderableComponents.count; i++) {
|
||||
var renderable = scene.renderableComponents.buffer[i];
|
||||
if (!this.excludedRenderLayers.contains(renderable.renderLayer) && renderable.enabled &&
|
||||
renderable.isVisibleFromCamera(cam))
|
||||
renderable.debugRender();
|
||||
}
|
||||
_super.prototype.debugRender.call(this, scene, cam);
|
||||
};
|
||||
return RenderLayerExcludeRenderer;
|
||||
}(es.Renderer));
|
||||
es.RenderLayerExcludeRenderer = RenderLayerExcludeRenderer;
|
||||
})(es || (es = {}));
|
||||
var es;
|
||||
(function (es) {
|
||||
var ScreenSpaceRenderer = (function (_super) {
|
||||
__extends(ScreenSpaceRenderer, _super);
|
||||
function ScreenSpaceRenderer() {
|
||||
return _super !== null && _super.apply(this, arguments) || this;
|
||||
function ScreenSpaceRenderer(renderOrder) {
|
||||
var renderLayers = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
renderLayers[_i - 1] = arguments[_i];
|
||||
}
|
||||
var _this = _super.call(this, renderOrder, null) || this;
|
||||
renderLayers.sort();
|
||||
renderLayers.reverse();
|
||||
_this.renderLayers = renderLayers;
|
||||
return _this;
|
||||
}
|
||||
ScreenSpaceRenderer.prototype.render = function (scene) {
|
||||
this.beginRender(this.camera);
|
||||
for (var i = 0; i < this.renderLayers.length; i++) {
|
||||
var renderables = scene.renderableComponents.componentsWithRenderLayer(this.renderLayers[i]);
|
||||
for (var j = 0; j < renderables.length; j++) {
|
||||
var renderable = renderables[j];
|
||||
if (renderable.enabled && renderable.isVisibleFromCamera(this.camera))
|
||||
this.renderAfterStateCheck(renderable, this.camera);
|
||||
}
|
||||
}
|
||||
if (this.shouldDebugRender && es.Core.debugRenderEndabled)
|
||||
this.debugRender(scene, this.camera);
|
||||
};
|
||||
ScreenSpaceRenderer.prototype.debugRender = function (scene, cam) {
|
||||
for (var i = 0; i < this.renderLayers.length; i++) {
|
||||
var renderables = scene.renderableComponents.componentsWithRenderLayer(this.renderLayers[i]);
|
||||
for (var j = 0; j < renderables.length; j++) {
|
||||
var entity = renderables[j];
|
||||
if (entity.enabled)
|
||||
entity.debugRender();
|
||||
}
|
||||
}
|
||||
};
|
||||
ScreenSpaceRenderer.prototype.onSceneBackBufferSizeChanged = function (newWidth, newHeight) {
|
||||
_super.prototype.onSceneBackBufferSizeChanged.call(this, newWidth, newHeight);
|
||||
if (!this.camera)
|
||||
this.camera = es.Core.scene.createEntity("screenspace camera").addComponent(new es.Camera());
|
||||
};
|
||||
return ScreenSpaceRenderer;
|
||||
}(es.Renderer));
|
||||
@@ -8102,22 +8200,21 @@ var es;
|
||||
};
|
||||
TiledMapLoader.parseTmxTileset = function (map, xTileset) {
|
||||
return __awaiter(this, void 0, void 0, function () {
|
||||
var xFirstGid, firstGid, source, xDocTileset, tileset;
|
||||
var xFirstGid, firstGid, source, xDocTileset;
|
||||
return __generator(this, function (_a) {
|
||||
switch (_a.label) {
|
||||
case 0:
|
||||
xFirstGid = xTileset["firstgid"];
|
||||
firstGid = xFirstGid;
|
||||
source = xTileset["image"];
|
||||
source = xTileset["source"];
|
||||
if (!(source != undefined)) return [3, 2];
|
||||
source = map.tmxDirectory + source;
|
||||
return [4, RES.getResByUrl(source, null, this, RES.ResourceItem.TYPE_IMAGE).catch(function (err) {
|
||||
return [4, RES.getResByUrl(source).catch(function (err) {
|
||||
throw new Error(err);
|
||||
})];
|
||||
case 1:
|
||||
xDocTileset = _a.sent();
|
||||
tileset = this.loadTmxTileset(new es.TmxTileset(), map, xDocTileset["tileset"], firstGid);
|
||||
return [2, tileset];
|
||||
return [2, this.loadTmxTileset(new es.TmxTileset(), map, xDocTileset["tileset"], firstGid)];
|
||||
case 2: return [2, this.loadTmxTileset(new es.TmxTileset(), map, xTileset, firstGid)];
|
||||
}
|
||||
});
|
||||
@@ -8125,9 +8222,9 @@ var es;
|
||||
};
|
||||
TiledMapLoader.loadTmxTileset = function (tileset, map, xTileset, firstGid) {
|
||||
return __awaiter(this, void 0, void 0, function () {
|
||||
var xImage, _a, _i, _b, e, _c, _d, _e, t, xTile, tile, id, y, column, x;
|
||||
return __generator(this, function (_f) {
|
||||
switch (_f.label) {
|
||||
var xImage, _i, _a, e, _b, _c, _d, t, xTile, tile, id, y, column, x;
|
||||
return __generator(this, function (_e) {
|
||||
switch (_e.label) {
|
||||
case 0:
|
||||
tileset.map = map;
|
||||
tileset.firstGid = firstGid;
|
||||
@@ -8141,38 +8238,39 @@ var es;
|
||||
tileset.tileOffset = this.parseTmxTileOffset(xTileset["tileoffset"]);
|
||||
xImage = xTileset["image"];
|
||||
if (!xImage) return [3, 2];
|
||||
_a = tileset;
|
||||
return [4, this.loadTmxImage(new es.TmxImage(), xTileset, map.tmxDirectory).catch(function (err) {
|
||||
return [4, this.loadTmxImage(new es.TmxImage(), xTileset, map.tmxDirectory).then(function (image) {
|
||||
tileset.image = image;
|
||||
}).catch(function (err) {
|
||||
throw new Error(err);
|
||||
})];
|
||||
case 1:
|
||||
_a.image = _f.sent();
|
||||
_f.label = 2;
|
||||
_e.sent();
|
||||
_e.label = 2;
|
||||
case 2:
|
||||
tileset.terrains = [];
|
||||
if (xTileset["terrains"])
|
||||
for (_i = 0, _b = xTileset["terrains"]; _i < _b.length; _i++) {
|
||||
e = _b[_i];
|
||||
for (_i = 0, _a = xTileset["terrains"]; _i < _a.length; _i++) {
|
||||
e = _a[_i];
|
||||
tileset.terrains.push(this.parseTmxTerrain(e));
|
||||
}
|
||||
tileset.tiles = new Map();
|
||||
_c = [];
|
||||
for (_d in xTileset["tiles"])
|
||||
_c.push(_d);
|
||||
_e = 0;
|
||||
_f.label = 3;
|
||||
_b = [];
|
||||
for (_c in xTileset["tiles"])
|
||||
_b.push(_c);
|
||||
_d = 0;
|
||||
_e.label = 3;
|
||||
case 3:
|
||||
if (!(_e < _c.length)) return [3, 6];
|
||||
t = _c[_e];
|
||||
if (!(_d < _b.length)) return [3, 6];
|
||||
t = _b[_d];
|
||||
if (!xTileset["tiles"].hasOwnProperty(t)) return [3, 5];
|
||||
xTile = xTileset["tiles"][t];
|
||||
return [4, this.loadTmxTilesetTile(new es.TmxTilesetTile(), tileset, xTile, tileset.terrains, map.tmxDirectory)];
|
||||
case 4:
|
||||
tile = _f.sent();
|
||||
tile = _e.sent();
|
||||
tileset.tiles.set(tile.id == undefined ? Number(t) + 1 : tile.id, tile);
|
||||
_f.label = 5;
|
||||
_e.label = 5;
|
||||
case 5:
|
||||
_e++;
|
||||
_d++;
|
||||
return [3, 3];
|
||||
case 6:
|
||||
tileset.properties = this.parsePropertyDict(xTileset["properties"]);
|
||||
|
||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
+8471
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user