laya-coreui-es
Version:
laya核心库、ui库es版本,剔除了媒体、TTF等功能。基于 LayaAir-release_2.12.0 修改
45 lines (44 loc) • 1.53 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.IndexBuffer2D = void 0;
const LayaGL_1 = require("../../layagl/LayaGL");
const Buffer_1 = require("./Buffer");
const Buffer2D_1 = require("./Buffer2D");
class IndexBuffer2D extends Buffer2D_1.Buffer2D {
constructor(bufferUsage = 0x88e4 ) {
super();
this._bufferUsage = bufferUsage;
this._bufferType = LayaGL_1.LayaGL.instance.ELEMENT_ARRAY_BUFFER;
this._buffer = new ArrayBuffer(8);
}
_checkArrayUse() {
this._uint16Array && (this._uint16Array = new Uint16Array(this._buffer));
}
getUint16Array() {
return this._uint16Array || (this._uint16Array = new Uint16Array(this._buffer));
}
_bindForVAO() {
var gl = LayaGL_1.LayaGL.instance;
gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, this._glBuffer);
}
bind() {
if (Buffer_1.Buffer._bindedIndexBuffer !== this._glBuffer) {
var gl = LayaGL_1.LayaGL.instance;
gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, this._glBuffer);
Buffer_1.Buffer._bindedIndexBuffer = this._glBuffer;
return true;
}
return false;
}
destory() {
this._uint16Array = null;
this._buffer = null;
}
disposeResource() {
this._disposeResource();
}
}
exports.IndexBuffer2D = IndexBuffer2D;
IndexBuffer2D.create = function (bufferUsage = 0x88e4 ) {
return new IndexBuffer2D(bufferUsage);
};