UNPKG

mdx-m3-viewer

Version:

A browser WebGL model viewer. Mainly focused on models of the games Warcraft 3 and Starcraft 2.

49 lines 2.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const genericobject_1 = require("./genericobject"); /** * An MDX particle emitter. */ class ParticleEmitterObject extends genericobject_1.default { constructor(model, emitter, index) { super(model, emitter, index); this.internalModel = null; this.ok = false; this.speed = emitter.speed; this.latitude = emitter.latitude; this.longitude = emitter.longitude; this.lifeSpan = emitter.lifeSpan; this.gravity = emitter.gravity; this.emissionRate = emitter.emissionRate; model.viewer.load(emitter.path.replace(/\\/g, '/').toLowerCase().replace('.mdl', '.mdx'), model.pathSolver, model.solverParams) .then((model) => { if (model) { this.internalModel = model; this.ok = true; } }); } getSpeed(out, sequence, frame, counter) { return this.getScalarValue(out, 'KPES', sequence, frame, counter, this.speed); } getLatitude(out, sequence, frame, counter) { return this.getScalarValue(out, 'KPLTV', sequence, frame, counter, this.latitude); } getLongitude(out, sequence, frame, counter) { return this.getScalarValue(out, 'KPLN', sequence, frame, counter, this.longitude); } getLifeSpan(out, sequence, frame, counter) { return this.getScalarValue(out, 'KPEL', sequence, frame, counter, this.lifeSpan); } getGravity(out, sequence, frame, counter) { return this.getScalarValue(out, 'KPEG', sequence, frame, counter, this.gravity); } getEmissionRate(out, sequence, frame, counter) { return this.getScalarValue(out, 'KPEE', sequence, frame, counter, this.emissionRate); } getVisibility(out, sequence, frame, counter) { return this.getScalarValue(out, 'KPEV', sequence, frame, counter, 1); } } exports.default = ParticleEmitterObject; //# sourceMappingURL=particleemitterobject.js.map