UNPKG

@awayjs/renderer

Version:
43 lines (42 loc) 1.66 kB
import { __extends } from "tslib"; import { AbstractionSet, AssetBase } from '@awayjs/core'; /** * @class away.pool.MaterialPoolBase */ var _Render_ElementsBase = /** @class */ (function (_super) { __extends(_Render_ElementsBase, _super); /** * //TODO * * @param materialClassGL */ function _Render_ElementsBase(renderer) { var _this = _super.call(this) || this; _this.abstractions = new AbstractionSet(_this); _this.renderer = renderer; _this.stage = renderer.view.stage; _this._materialStore = renderer.group.materialStore; _this._materialClassPool = renderer.group.materialClassPool; return _this; } _Render_ElementsBase.prototype.requestAbstraction = function (asset) { var store = this._materialStore[asset.assetType]; return store.length ? store.pop() : new this._materialClassPool[asset.assetType](); }; _Render_ElementsBase.prototype.storeAbstraction = function (abstraction, assetType) { this._materialStore[assetType].push(abstraction); }; _Render_ElementsBase.prototype.clear = function () { this.abstractions.forEach(function (pickable) { return pickable.onClear(); }); }; _Render_ElementsBase.prototype._includeDependencies = function (shader) { }; _Render_ElementsBase.prototype._getVertexCode = function (shader, registerCache, sharedRegisters) { return ''; }; _Render_ElementsBase.prototype._getFragmentCode = function (shader, registerCache, sharedRegisters) { return ''; }; return _Render_ElementsBase; }(AssetBase)); export { _Render_ElementsBase };