UNPKG

rl-loadout-lib

Version:

Load Rocket League assets into three.js

47 lines 1.57 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const object_1 = require("./object"); const util_1 = require("../utils/util"); /** * Class that handles loading the 3D model of the car antenna. */ class AntennaModel extends object_1.AbstractObject { /** * Create an antenna object. * @param antenna the antenna * @param antennaAssets antenna assets * @param paints the paint config to apply the antenna paint */ constructor(antenna, antennaAssets, paints) { super(antennaAssets); this.antennaAssets = antennaAssets; } init() { const antennaScene = this.antennaAssets.gltf.scene; const antennaModel = antennaScene.children[0]; const material = antennaModel.material; material.map = util_1.htmlImageToTexture(this.antennaAssets.baseTexture); material.normalMap = util_1.htmlImageToTexture(this.antennaAssets.normalMap); if (this.socket) { antennaModel.position.copy(this.socket.position); antennaModel.rotation.copy(this.socket.rotation); } this.scene.add(antennaModel); antennaScene.dispose(); } handleModel(scene) { this.socket = scene.getObjectByName('TopperSocket'); } copy(other) { super.copy(other); this.antennaAssets = other.antennaAssets; this.init(); } clone() { const m = new AntennaModel(); m.copy(this); return m; } } exports.AntennaModel = AntennaModel; //# sourceMappingURL=antenna-model.js.map