UNPKG

lingo3d

Version:

Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor

90 lines 2.4 kB
import { Sprite, SpriteMaterial } from "three"; import { spriteSheetDefaults, spriteSheetSchema } from "../interface/ISpriteSheet"; import PhysicsObjectManager from "./core/PhysicsObjectManager"; import { castBackBlending, castBlending } from "./utils/castBlending"; import { ssrExcludeSet } from "../collections/ssrExcludeSet"; import { configSpriteSheetSystem } from "../systems/configSystems/configSpriteSheetSystem"; class SpriteSheet extends PhysicsObjectManager { static componentName = "spriteSheet"; static defaults = spriteSheetDefaults; static schema = spriteSheetSchema; constructor() { super(new Sprite(new SpriteMaterial({ transparent: true, visible: false }))); ssrExcludeSet.add(this.outerObject3d); } disposeNode() { super.disposeNode(); ssrExcludeSet.delete(this.outerObject3d); } $blob; toBlob() { return this.$blob; } _textureStart; get textureStart() { return this._textureStart; } set textureStart(value) { this._textureStart = value; configSpriteSheetSystem.add(this); } _textureEnd; get textureEnd() { return this._textureEnd; } set textureEnd(value) { this._textureEnd = value; configSpriteSheetSystem.add(this); } _texture; get texture() { return this._texture; } set texture(value) { this._texture = value; configSpriteSheetSystem.add(this); } _columns; get columns() { return this._columns; } set columns(value) { this._columns = value; configSpriteSheetSystem.add(this); } _length; get length() { return this._length; } set length(value) { this._length = value; configSpriteSheetSystem.add(this); } _loop; get loop() { return this._loop; } set loop(value) { this._loop = value; configSpriteSheetSystem.add(this); } get depth() { return 0; } set depth(_) { } get scaleZ() { return 0; } set scaleZ(_) { } get blending() { return castBackBlending(this.object3d.material.blending); } set blending(val) { this.object3d.material.blending = castBlending(val); } } export default SpriteSheet; //# sourceMappingURL=SpriteSheet.js.map