minerender 2.1.0-alpha.5 → 2.1.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/index.d.mts +2 -1
- package/dist/browser/index.d.ts +2 -1
- package/dist/browser/index.js +40 -49
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/index.mjs +40 -49
- package/dist/browser/index.mjs.map +1 -1
- package/dist/bundle.js +59 -68
- package/dist/bundle.js.map +1 -1
- package/dist/node/index.d.mts +2 -1
- package/dist/node/index.d.ts +2 -1
- package/dist/node/index.js +38 -48
- package/dist/node/index.js.map +1 -1
- package/dist/node/index.mjs +38 -48
- package/dist/node/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/node/index.d.mts
CHANGED
|
@@ -61,7 +61,7 @@ declare function createCanvas(width: number, height: number): CompatCanvas;
|
|
|
61
61
|
declare abstract class PersistentCache<B = unknown> {
|
|
62
62
|
readonly backing: B;
|
|
63
63
|
/** Bump to invalidate every persisted entry. */
|
|
64
|
-
static readonly VERSION =
|
|
64
|
+
static readonly VERSION = 2;
|
|
65
65
|
static open(name: string): PersistentCache;
|
|
66
66
|
protected constructor(backing: B);
|
|
67
67
|
abstract get<T>(key: string): Promise<T>;
|
|
@@ -622,6 +622,7 @@ declare class AssetLoader {
|
|
|
622
622
|
static addSource(key: string, source: AssetSource, override?: boolean): void;
|
|
623
623
|
static removeSource(key: string): Maybe<AssetSource>;
|
|
624
624
|
static getAll<T extends MinecraftAsset>(key: AssetKey, parser: AssetParser | string): Promise<T[]>;
|
|
625
|
+
/** Returns the first defined result in source-priority order, without merging assets. */
|
|
625
626
|
static get<T extends MinecraftAsset>(key: AssetKey, parser: AssetParser | string): Promise<Maybe<T>>;
|
|
626
627
|
}
|
|
627
628
|
|
package/dist/node/index.d.ts
CHANGED
|
@@ -61,7 +61,7 @@ declare function createCanvas(width: number, height: number): CompatCanvas;
|
|
|
61
61
|
declare abstract class PersistentCache<B = unknown> {
|
|
62
62
|
readonly backing: B;
|
|
63
63
|
/** Bump to invalidate every persisted entry. */
|
|
64
|
-
static readonly VERSION =
|
|
64
|
+
static readonly VERSION = 2;
|
|
65
65
|
static open(name: string): PersistentCache;
|
|
66
66
|
protected constructor(backing: B);
|
|
67
67
|
abstract get<T>(key: string): Promise<T>;
|
|
@@ -622,6 +622,7 @@ declare class AssetLoader {
|
|
|
622
622
|
static addSource(key: string, source: AssetSource, override?: boolean): void;
|
|
623
623
|
static removeSource(key: string): Maybe<AssetSource>;
|
|
624
624
|
static getAll<T extends MinecraftAsset>(key: AssetKey, parser: AssetParser | string): Promise<T[]>;
|
|
625
|
+
/** Returns the first defined result in source-priority order, without merging assets. */
|
|
625
626
|
static get<T extends MinecraftAsset>(key: AssetKey, parser: AssetParser | string): Promise<Maybe<T>>;
|
|
626
627
|
}
|
|
627
628
|
|
package/dist/node/index.js
CHANGED
|
@@ -90,7 +90,7 @@ var require_dist = __commonJS({
|
|
|
90
90
|
return false;
|
|
91
91
|
};
|
|
92
92
|
var PROTECTED_KEYS = ["__proto__"];
|
|
93
|
-
var
|
|
93
|
+
var merge10 = function() {
|
|
94
94
|
var objects = [];
|
|
95
95
|
for (var _i = 0; _i < arguments.length; _i++) {
|
|
96
96
|
objects[_i] = arguments[_i];
|
|
@@ -101,9 +101,9 @@ var require_dist = __commonJS({
|
|
|
101
101
|
return;
|
|
102
102
|
}
|
|
103
103
|
if (Array.isArray(result[key]) && Array.isArray(current[key])) {
|
|
104
|
-
result[key] =
|
|
104
|
+
result[key] = merge10.options.mergeArrays ? Array.from(new Set(result[key].concat(current[key]))) : current[key];
|
|
105
105
|
} else if (isObject(result[key]) && isObject(current[key])) {
|
|
106
|
-
result[key] =
|
|
106
|
+
result[key] = merge10(result[key], current[key]);
|
|
107
107
|
} else {
|
|
108
108
|
result[key] = current[key];
|
|
109
109
|
}
|
|
@@ -114,18 +114,18 @@ var require_dist = __commonJS({
|
|
|
114
114
|
var defaultOptions = {
|
|
115
115
|
mergeArrays: true
|
|
116
116
|
};
|
|
117
|
-
|
|
118
|
-
|
|
117
|
+
merge10.options = defaultOptions;
|
|
118
|
+
merge10.withOptions = function(options) {
|
|
119
119
|
var objects = [];
|
|
120
120
|
for (var _i = 1; _i < arguments.length; _i++) {
|
|
121
121
|
objects[_i - 1] = arguments[_i];
|
|
122
122
|
}
|
|
123
|
-
|
|
124
|
-
var result =
|
|
125
|
-
|
|
123
|
+
merge10.options = __assign({ mergeArrays: true }, options);
|
|
124
|
+
var result = merge10.apply(void 0, __spreadArray([], __read(objects), false));
|
|
125
|
+
merge10.options = defaultOptions;
|
|
126
126
|
return result;
|
|
127
127
|
};
|
|
128
|
-
exports2.default =
|
|
128
|
+
exports2.default = merge10;
|
|
129
129
|
}
|
|
130
130
|
});
|
|
131
131
|
|
|
@@ -319,7 +319,7 @@ var _PersistentCache = class _PersistentCache {
|
|
|
319
319
|
}
|
|
320
320
|
};
|
|
321
321
|
/** Bump to invalidate every persisted entry. */
|
|
322
|
-
_PersistentCache.VERSION =
|
|
322
|
+
_PersistentCache.VERSION = 2;
|
|
323
323
|
var PersistentCache = _PersistentCache;
|
|
324
324
|
|
|
325
325
|
// src/env/node/NodeCache.ts
|
|
@@ -1774,7 +1774,6 @@ var ArchiveAssetSource = class _ArchiveAssetSource extends AssetSource {
|
|
|
1774
1774
|
};
|
|
1775
1775
|
|
|
1776
1776
|
// src/assets/AssetLoader.ts
|
|
1777
|
-
var import_ts_deepmerge3 = __toESM(require_dist());
|
|
1778
1777
|
var p5 = prefix("AssetLoader");
|
|
1779
1778
|
var _AssetLoader = class _AssetLoader {
|
|
1780
1779
|
static addSource(key, source, override = true) {
|
|
@@ -1798,7 +1797,6 @@ var _AssetLoader = class _AssetLoader {
|
|
|
1798
1797
|
return void 0;
|
|
1799
1798
|
}
|
|
1800
1799
|
static async getAll(key, parser) {
|
|
1801
|
-
console.log(this._SOURCES);
|
|
1802
1800
|
let promises = [];
|
|
1803
1801
|
for (const source of this._SOURCES) {
|
|
1804
1802
|
promises.push(source.source.get(key, parser));
|
|
@@ -1807,24 +1805,16 @@ var _AssetLoader = class _AssetLoader {
|
|
|
1807
1805
|
return results.filter((r) => r != void 0);
|
|
1808
1806
|
});
|
|
1809
1807
|
}
|
|
1808
|
+
/** Returns the first defined result in source-priority order, without merging assets. */
|
|
1810
1809
|
static async get(key, parser) {
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
return Promise.all(promises).then((results) => {
|
|
1817
|
-
const fallback = results[results.length - 1];
|
|
1818
|
-
for (const result of results) {
|
|
1819
|
-
if (result) {
|
|
1820
|
-
if (fallback) {
|
|
1821
|
-
return (0, import_ts_deepmerge3.default)({}, fallback, result);
|
|
1822
|
-
}
|
|
1823
|
-
return result;
|
|
1824
|
-
}
|
|
1810
|
+
const sources = [...this._SOURCES];
|
|
1811
|
+
for (const source of sources) {
|
|
1812
|
+
const result = await source.source.get(key, parser);
|
|
1813
|
+
if (result !== void 0) {
|
|
1814
|
+
return result;
|
|
1825
1815
|
}
|
|
1826
|
-
|
|
1827
|
-
|
|
1816
|
+
}
|
|
1817
|
+
return void 0;
|
|
1828
1818
|
}
|
|
1829
1819
|
};
|
|
1830
1820
|
_AssetLoader.ROOT = DEFAULT_ROOT;
|
|
@@ -2648,7 +2638,7 @@ var MineRenderError = class _MineRenderError extends Error {
|
|
|
2648
2638
|
};
|
|
2649
2639
|
|
|
2650
2640
|
// src/renderer/SceneObject.ts
|
|
2651
|
-
var
|
|
2641
|
+
var import_ts_deepmerge3 = __toESM(require_dist());
|
|
2652
2642
|
var p7 = prefix("SceneObject");
|
|
2653
2643
|
var _SceneObject = class _SceneObject extends import_three9.Object3D {
|
|
2654
2644
|
constructor(options) {
|
|
@@ -2657,7 +2647,7 @@ var _SceneObject = class _SceneObject extends import_three9.Object3D {
|
|
|
2657
2647
|
this.materialCallbacks = {};
|
|
2658
2648
|
this._isInstanced = false;
|
|
2659
2649
|
this._instanceCounter = 0;
|
|
2660
|
-
this.options = (0,
|
|
2650
|
+
this.options = (0, import_ts_deepmerge3.default)({}, _SceneObject.DEFAULT_OPTIONS, options ?? {});
|
|
2661
2651
|
console.log("SceneObject options", this.options);
|
|
2662
2652
|
}
|
|
2663
2653
|
set scene(scene) {
|
|
@@ -3007,7 +2997,7 @@ var _SceneObject = class _SceneObject extends import_three9.Object3D {
|
|
|
3007
2997
|
}
|
|
3008
2998
|
//</editor-fold>
|
|
3009
2999
|
};
|
|
3010
|
-
_SceneObject.DEFAULT_OPTIONS = (0,
|
|
3000
|
+
_SceneObject.DEFAULT_OPTIONS = (0, import_ts_deepmerge3.default)({}, {
|
|
3011
3001
|
instanceMeshes: true,
|
|
3012
3002
|
maxInstanceCount: 50,
|
|
3013
3003
|
mergeMeshes: true,
|
|
@@ -3019,7 +3009,7 @@ function isSceneObject(obj) {
|
|
|
3019
3009
|
}
|
|
3020
3010
|
|
|
3021
3011
|
// src/entity/scene/EntityObject.ts
|
|
3022
|
-
var
|
|
3012
|
+
var import_ts_deepmerge4 = __toESM(require_dist());
|
|
3023
3013
|
var import_three11 = require("three");
|
|
3024
3014
|
var THREE3 = __toESM(require("three"));
|
|
3025
3015
|
var EntityObject = class extends SceneObject {
|
|
@@ -3028,7 +3018,7 @@ var EntityObject = class extends SceneObject {
|
|
|
3028
3018
|
this.entity = entity;
|
|
3029
3019
|
this.isEntityObject = true;
|
|
3030
3020
|
this.meshesCreated = false;
|
|
3031
|
-
this.options = (0,
|
|
3021
|
+
this.options = (0, import_ts_deepmerge4.default)({}, SceneObject.DEFAULT_OPTIONS, options ?? {});
|
|
3032
3022
|
}
|
|
3033
3023
|
async init() {
|
|
3034
3024
|
this.createMeshes();
|
|
@@ -3097,7 +3087,7 @@ var EntityObject = class extends SceneObject {
|
|
|
3097
3087
|
}
|
|
3098
3088
|
}
|
|
3099
3089
|
};
|
|
3100
|
-
EntityObject.DEFAULT_OPTIONS = (0,
|
|
3090
|
+
EntityObject.DEFAULT_OPTIONS = (0, import_ts_deepmerge4.default)({}, SceneObject.DEFAULT_OPTIONS, {});
|
|
3101
3091
|
function isEntityObject(obj) {
|
|
3102
3092
|
return obj.isEntityObject;
|
|
3103
3093
|
}
|
|
@@ -4089,7 +4079,7 @@ function computeMorphedAttributes(object) {
|
|
|
4089
4079
|
}
|
|
4090
4080
|
|
|
4091
4081
|
// src/model/scene/ModelObject.ts
|
|
4092
|
-
var
|
|
4082
|
+
var import_ts_deepmerge5 = __toESM(require_dist());
|
|
4093
4083
|
var p10 = prefix("ModelObject");
|
|
4094
4084
|
var _ModelObject = class _ModelObject extends SceneObject {
|
|
4095
4085
|
constructor(originalModel, options) {
|
|
@@ -4097,7 +4087,7 @@ var _ModelObject = class _ModelObject extends SceneObject {
|
|
|
4097
4087
|
this.originalModel = originalModel;
|
|
4098
4088
|
this.isModelObject = true;
|
|
4099
4089
|
this.meshesCreated = false;
|
|
4100
|
-
this.options = (0,
|
|
4090
|
+
this.options = (0, import_ts_deepmerge5.default)({}, _ModelObject.DEFAULT_OPTIONS, options ?? {});
|
|
4101
4091
|
console.log("ModelObject options", this.options);
|
|
4102
4092
|
}
|
|
4103
4093
|
async init() {
|
|
@@ -4197,14 +4187,14 @@ var _ModelObject = class _ModelObject extends SceneObject {
|
|
|
4197
4187
|
}
|
|
4198
4188
|
}
|
|
4199
4189
|
};
|
|
4200
|
-
_ModelObject.DEFAULT_OPTIONS = (0,
|
|
4190
|
+
_ModelObject.DEFAULT_OPTIONS = (0, import_ts_deepmerge5.default)({}, SceneObject.DEFAULT_OPTIONS, {});
|
|
4201
4191
|
var ModelObject = _ModelObject;
|
|
4202
4192
|
function isModelObject(obj) {
|
|
4203
4193
|
return obj.isModelObject;
|
|
4204
4194
|
}
|
|
4205
4195
|
|
|
4206
4196
|
// src/model/block/scene/BlockObject.ts
|
|
4207
|
-
var
|
|
4197
|
+
var import_ts_deepmerge6 = __toESM(require_dist());
|
|
4208
4198
|
var import_three16 = require("three");
|
|
4209
4199
|
var p11 = prefix("BlockObject");
|
|
4210
4200
|
var _BlockObject = class _BlockObject extends SceneObject {
|
|
@@ -4220,7 +4210,7 @@ var _BlockObject = class _BlockObject extends SceneObject {
|
|
|
4220
4210
|
this._instanceModel = [];
|
|
4221
4211
|
this._variants = [];
|
|
4222
4212
|
this._models = [];
|
|
4223
|
-
this.options = (0,
|
|
4213
|
+
this.options = (0, import_ts_deepmerge6.default)({}, _BlockObject.DEFAULT_OPTIONS, options ?? {});
|
|
4224
4214
|
}
|
|
4225
4215
|
async init() {
|
|
4226
4216
|
if (this.options.applyDefaultState) {
|
|
@@ -4509,7 +4499,7 @@ var _BlockObject = class _BlockObject extends SceneObject {
|
|
|
4509
4499
|
//TODO: should override rotation + scale methods
|
|
4510
4500
|
//TODO
|
|
4511
4501
|
};
|
|
4512
|
-
_BlockObject.DEFAULT_OPTIONS = (0,
|
|
4502
|
+
_BlockObject.DEFAULT_OPTIONS = (0, import_ts_deepmerge6.default)({}, ModelObject.DEFAULT_OPTIONS, {
|
|
4513
4503
|
applyDefaultState: true
|
|
4514
4504
|
});
|
|
4515
4505
|
var BlockObject = _BlockObject;
|
|
@@ -4560,7 +4550,7 @@ var StructureParser = class {
|
|
|
4560
4550
|
|
|
4561
4551
|
// src/renderer/MineRenderScene.ts
|
|
4562
4552
|
var import_three17 = require("three");
|
|
4563
|
-
var
|
|
4553
|
+
var import_ts_deepmerge8 = __toESM(require_dist());
|
|
4564
4554
|
|
|
4565
4555
|
// src/skin/SkinPart.ts
|
|
4566
4556
|
var SkinPart = /* @__PURE__ */ ((SkinPart2) => {
|
|
@@ -5291,7 +5281,7 @@ var slimSkinGeometries = {
|
|
|
5291
5281
|
};
|
|
5292
5282
|
|
|
5293
5283
|
// src/skin/scene/SkinObject.ts
|
|
5294
|
-
var
|
|
5284
|
+
var import_ts_deepmerge7 = __toESM(require_dist());
|
|
5295
5285
|
var SkinObject = class extends SceneObject {
|
|
5296
5286
|
constructor(options) {
|
|
5297
5287
|
super();
|
|
@@ -5299,7 +5289,7 @@ var SkinObject = class extends SceneObject {
|
|
|
5299
5289
|
this.legacy = false;
|
|
5300
5290
|
this.skinTextureWidth = 64;
|
|
5301
5291
|
this.skinTextureHeight = 64;
|
|
5302
|
-
this.options = (0,
|
|
5292
|
+
this.options = (0, import_ts_deepmerge7.default)({}, SceneObject.DEFAULT_OPTIONS, options ?? {});
|
|
5303
5293
|
}
|
|
5304
5294
|
async init() {
|
|
5305
5295
|
this.createMeshes();
|
|
@@ -5417,7 +5407,7 @@ var _MineRenderScene = class _MineRenderScene extends import_three17.Scene {
|
|
|
5417
5407
|
this.dirty = true;
|
|
5418
5408
|
}
|
|
5419
5409
|
};
|
|
5420
|
-
this.options = (0,
|
|
5410
|
+
this.options = (0, import_ts_deepmerge8.default)({}, _MineRenderScene.DEFAULT_OPTIONS, options ?? {});
|
|
5421
5411
|
}
|
|
5422
5412
|
add(...objects) {
|
|
5423
5413
|
for (const object of objects) {
|
|
@@ -5514,7 +5504,7 @@ var _MineRenderScene = class _MineRenderScene extends import_three17.Scene {
|
|
|
5514
5504
|
return this.addSceneObject(entity, () => new EntityObject(entity, options), options, parent);
|
|
5515
5505
|
}
|
|
5516
5506
|
};
|
|
5517
|
-
_MineRenderScene.DEFAULT_OPTIONS = (0,
|
|
5507
|
+
_MineRenderScene.DEFAULT_OPTIONS = (0, import_ts_deepmerge8.default)({}, {});
|
|
5518
5508
|
var MineRenderScene = _MineRenderScene;
|
|
5519
5509
|
function isMineRenderScene(obj) {
|
|
5520
5510
|
return obj.isMineRenderScene;
|
|
@@ -5522,7 +5512,7 @@ function isMineRenderScene(obj) {
|
|
|
5522
5512
|
|
|
5523
5513
|
// src/renderer/Renderer.ts
|
|
5524
5514
|
var import_three19 = require("three");
|
|
5525
|
-
var
|
|
5515
|
+
var import_ts_deepmerge9 = __toESM(require_dist());
|
|
5526
5516
|
var import_stats = __toESM(require("stats.js"));
|
|
5527
5517
|
var import_postprocessing = require("postprocessing");
|
|
5528
5518
|
|
|
@@ -6179,7 +6169,7 @@ var _Renderer = class _Renderer {
|
|
|
6179
6169
|
this._changeListener = () => {
|
|
6180
6170
|
this._dirty = true;
|
|
6181
6171
|
};
|
|
6182
|
-
this.options = (0,
|
|
6172
|
+
this.options = (0, import_ts_deepmerge9.default)({}, _Renderer.DEFAULT_OPTIONS, options ?? {});
|
|
6183
6173
|
this._animationLoop = this.animate.bind(this);
|
|
6184
6174
|
this._frameInterval = this.options.render.fpsLimit > 0 ? 1e3 / this.options.render.fpsLimit : void 0;
|
|
6185
6175
|
this._scene = this.createScene();
|
|
@@ -6470,7 +6460,7 @@ var _Renderer = class _Renderer {
|
|
|
6470
6460
|
}
|
|
6471
6461
|
///
|
|
6472
6462
|
};
|
|
6473
|
-
_Renderer.DEFAULT_OPTIONS = (0,
|
|
6463
|
+
_Renderer.DEFAULT_OPTIONS = (0, import_ts_deepmerge9.default)({}, {
|
|
6474
6464
|
camera: {
|
|
6475
6465
|
type: "perspective",
|
|
6476
6466
|
near: 1,
|