UNPKG

2.31 kBSource Map (JSON)View Raw
1{"version":3,"file":"ReglAttribute.js","names":["ReglAttribute","gl","options","attribute","buffer","offset","stride","normalized","size","divisor","get","subData","destroy"],"sources":["../../src/webgl/ReglAttribute.ts"],"sourcesContent":["import {\n BufferData,\n IAttribute,\n IAttributeInitializationOptions,\n IBuffer,\n} from '@antv/g-webgpu-core';\nimport regl from 'regl';\nimport ReglBuffer from './ReglBuffer';\n\n/**\n * @see https://github.com/regl-project/regl/blob/gh-pages/API.md#attributes\n */\nexport default class ReglAttribute implements IAttribute {\n private attribute: regl.Attribute;\n private buffer: IBuffer;\n\n constructor(gl: regl.Regl, options: IAttributeInitializationOptions) {\n const { buffer, offset, stride, normalized, size, divisor } = options;\n this.buffer = buffer;\n this.attribute = {\n buffer: (buffer as ReglBuffer).get(),\n offset: offset || 0,\n stride: stride || 0,\n normalized: normalized || false,\n divisor: divisor || 0,\n };\n\n if (size) {\n this.attribute.size = size;\n }\n }\n\n public get() {\n return this.attribute;\n }\n\n public updateBuffer(options: {\n // 用于替换的数据\n data: BufferData;\n // 原 Buffer 替换位置,单位为 byte\n offset: number;\n }) {\n this.buffer.subData(options);\n }\n\n public destroy() {\n this.buffer.destroy();\n }\n}\n"],"mappings":";;;;;;;;;AASA;AACA;AACA;AAFA,IAGqBA,aAAa;EAIhC,uBAAYC,EAAa,EAAEC,OAAwC,EAAE;IAAA;IAAA,KAH7DC,SAAS;IAAA,KACTC,MAAM;IAGZ,IAAQA,MAAM,GAAgDF,OAAO,CAA7DE,MAAM;MAAEC,MAAM,GAAwCH,OAAO,CAArDG,MAAM;MAAEC,MAAM,GAAgCJ,OAAO,CAA7CI,MAAM;MAAEC,UAAU,GAAoBL,OAAO,CAArCK,UAAU;MAAEC,IAAI,GAAcN,OAAO,CAAzBM,IAAI;MAAEC,OAAO,GAAKP,OAAO,CAAnBO,OAAO;IACzD,IAAI,CAACL,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACD,SAAS,GAAG;MACfC,MAAM,EAAGA,MAAM,CAAgBM,GAAG,EAAE;MACpCL,MAAM,EAAEA,MAAM,IAAI,CAAC;MACnBC,MAAM,EAAEA,MAAM,IAAI,CAAC;MACnBC,UAAU,EAAEA,UAAU,IAAI,KAAK;MAC/BE,OAAO,EAAEA,OAAO,IAAI;IACtB,CAAC;IAED,IAAID,IAAI,EAAE;MACR,IAAI,CAACL,SAAS,CAACK,IAAI,GAAGA,IAAI;IAC5B;EACF;EAAC;IAAA;IAAA,OAED,eAAa;MACX,OAAO,IAAI,CAACL,SAAS;IACvB;EAAC;IAAA;IAAA,OAED,sBAAoBD,OAKnB,EAAE;MACD,IAAI,CAACE,MAAM,CAACO,OAAO,CAACT,OAAO,CAAC;IAC9B;EAAC;IAAA;IAAA,OAED,mBAAiB;MACf,IAAI,CAACE,MAAM,CAACQ,OAAO,EAAE;IACvB;EAAC;EAAA;AAAA;AAAA"}
\No newline at end of file