import { defined } from "../Source/Cesium.js";
|
import { destroyObject } from "../Source/Cesium.js";
|
import { Pass } from "../Source/Cesium.js";
|
import { RenderState } from "../Source/Cesium.js";
|
|
var ViewportPrimitive = function (fragmentShader) {
|
this._fs = fragmentShader;
|
this._command = undefined;
|
};
|
|
ViewportPrimitive.prototype.update = function (frameState) {
|
if (!defined(this._command)) {
|
this._command = frameState.context.createViewportQuadCommand(this._fs, {
|
renderState: RenderState.fromCache(),
|
pass: Pass.OPAQUE,
|
});
|
}
|
frameState.commandList.push(this._command);
|
};
|
|
ViewportPrimitive.prototype.isDestroyed = function () {
|
return false;
|
};
|
|
ViewportPrimitive.prototype.destroy = function () {
|
if (defined(this._command)) {
|
this._command.shaderProgram =
|
this._command.shaderProgram && this._command.shaderProgram.destroy();
|
}
|
return destroyObject(this);
|
};
|
export default ViewportPrimitive;
|