@call-me-sensei/toonlab 0.4.21 → 0.4.22
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/NPM-LIBRARY.md +51 -2
- package/README.md +4 -3
- package/agents/PROMPTS.md +1 -1
- package/database/apply-one-catalog-seed.mjs +63 -0
- package/database/seeds/catalog/0005_2026-08-c8-first12.sql +1101 -0
- package/database/seeds/catalog/0006_2026-09-c8-first100.sql +14245 -0
- package/database/seeds/catalog/0007_2026-09-c8-first100-primary-model.sql +14845 -0
- package/package.json +4 -2
- package/src/catalog/officialCatalog.js +1 -0
- package/src/catalog/officialCatalogAssetRuntime.js +98 -1
- package/src/catalog/officialCatalogLod.js +160 -16
- package/src/catalog/officialCatalogPlacement.js +52 -12
- package/src/catalog/officialCatalogProvider.js +79 -8
- package/src/catalog/officialCatalogRockPackage.js +172 -0
- package/src/rock-shader/rockMaterial.js +205 -28
- package/src/rock-shader/rockShaderRuntime.js +17 -1
- package/src/rock-shader/rockShaderSettings.js +16 -0
- package/src/rockgen/lod/index.js +1 -0
- package/src/rockgen/lod/rockDenseFieldPolicy.js +143 -0
- package/src/rockgen/rockDocument.js +604 -26
- package/src/version.js +1 -1
- package/types/catalog/officialCatalog.d.ts +1 -0
- package/types/catalog/officialCatalogPlacement.d.ts +4 -0
- package/types/catalog/officialCatalogRockPackage.d.ts +68 -0
- package/types/index.d.ts +24 -0
- package/types/rock-shader/rockMaterial.d.ts +3 -0
- package/types/rock-shader/rockShaderSettings.d.ts +2 -0
- package/types/rockgen/lod/index.d.ts +1 -0
- package/types/rockgen/lod/rockDenseFieldPolicy.d.ts +181 -0
- package/types/rockgen/rockDocument.d.ts +579 -68
- package/types/version.d.ts +1 -1
package/src/version.js
CHANGED
|
@@ -18,6 +18,9 @@ export interface OfficialCatalogPlacementOptions {
|
|
|
18
18
|
rotation?: CatalogVector3;
|
|
19
19
|
scale?: CatalogVector3;
|
|
20
20
|
targetId?: string | null;
|
|
21
|
+
textures?: Readonly<Record<string, unknown>>;
|
|
22
|
+
usePublishedRockSurface?: boolean;
|
|
23
|
+
variation?: number;
|
|
21
24
|
}
|
|
22
25
|
export interface OfficialCatalogPlacement {
|
|
23
26
|
readonly asset: unknown;
|
|
@@ -32,6 +35,7 @@ export interface OfficialCatalogPlacement {
|
|
|
32
35
|
};
|
|
33
36
|
readonly normalization: Readonly<Record<string, unknown>>;
|
|
34
37
|
readonly object: Object3D;
|
|
38
|
+
readonly publishedRockSurface: unknown;
|
|
35
39
|
readonly quality: unknown;
|
|
36
40
|
readonly released: boolean;
|
|
37
41
|
readonly style: StyleApplicationResult;
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import type { Texture, TextureLoader } from 'three';
|
|
2
|
+
|
|
3
|
+
export const OFFICIAL_ROCK_GALLERY_RECIPE_SCHEMA: 'toonlab/rock-gallery-recipe';
|
|
4
|
+
export const OFFICIAL_ROCK_MATERIAL_SCHEMA: 'toonlab.pro-rock-material';
|
|
5
|
+
|
|
6
|
+
export interface OfficialCatalogArtifact {
|
|
7
|
+
readonly byteSize: number;
|
|
8
|
+
readonly contentType: string;
|
|
9
|
+
readonly name: string;
|
|
10
|
+
readonly sha256: string;
|
|
11
|
+
readonly url: string | null;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export interface OfficialCatalogRockPackageFiles {
|
|
15
|
+
readonly collisionModelUrl: string | null;
|
|
16
|
+
readonly controlModelUrl: string | null;
|
|
17
|
+
readonly lodModelUrls: readonly (string | null)[];
|
|
18
|
+
readonly manifestUrl: string | null;
|
|
19
|
+
readonly materialConfigUrl: string | null;
|
|
20
|
+
readonly natureProvenanceUrl: string | null;
|
|
21
|
+
readonly natureReferenceUrl: string | null;
|
|
22
|
+
readonly realisticModelUrl: string;
|
|
23
|
+
readonly realisticPreviewUrl: string | null;
|
|
24
|
+
readonly recipeUrl: string | null;
|
|
25
|
+
readonly retainedHighModelUrl: string | null;
|
|
26
|
+
readonly stylizedModelUrl: string | null;
|
|
27
|
+
readonly stylizedPreviewUrl: string | null;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface OfficialCatalogRockPackage {
|
|
31
|
+
readonly asset: Readonly<Record<string, unknown>>;
|
|
32
|
+
readonly files: OfficialCatalogRockPackageFiles;
|
|
33
|
+
readonly manifest: Readonly<Record<string, unknown>> | null;
|
|
34
|
+
readonly materialConfig: Readonly<Record<string, unknown>> | null;
|
|
35
|
+
readonly natureProvenance: Readonly<Record<string, unknown>> | null;
|
|
36
|
+
readonly recipe: Readonly<Record<string, unknown>> | null;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export interface OfficialCatalogRockShaderInput {
|
|
40
|
+
readonly materialConfig: Readonly<Record<string, unknown>>;
|
|
41
|
+
readonly settings: Readonly<Record<string, unknown>>;
|
|
42
|
+
readonly textures: Readonly<Record<string, Texture>>;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export function findOfficialCatalogArtifact(
|
|
46
|
+
asset: { readonly artifacts?: readonly OfficialCatalogArtifact[] },
|
|
47
|
+
...names: string[]
|
|
48
|
+
): OfficialCatalogArtifact | null;
|
|
49
|
+
export function getOfficialCatalogArtifactUrl(
|
|
50
|
+
asset: { readonly artifacts?: readonly OfficialCatalogArtifact[] },
|
|
51
|
+
...names: string[]
|
|
52
|
+
): string | null;
|
|
53
|
+
export function loadOfficialCatalogRockPackage(
|
|
54
|
+
asset: Readonly<Record<string, unknown>>,
|
|
55
|
+
options?: {
|
|
56
|
+
readonly fetchImpl?: typeof globalThis.fetch;
|
|
57
|
+
readonly includeManifest?: boolean;
|
|
58
|
+
readonly includeNatureProvenance?: boolean;
|
|
59
|
+
},
|
|
60
|
+
): Promise<OfficialCatalogRockPackage>;
|
|
61
|
+
export function loadOfficialCatalogRockShaderInput(
|
|
62
|
+
rockPackage: OfficialCatalogRockPackage,
|
|
63
|
+
options?: { readonly textureLoader?: TextureLoader },
|
|
64
|
+
): Promise<OfficialCatalogRockShaderInput | null>;
|
|
65
|
+
export function createOfficialCatalogRockEditorDescriptor(
|
|
66
|
+
asset: Readonly<Record<string, unknown>>,
|
|
67
|
+
rockPackage?: OfficialCatalogRockPackage | null,
|
|
68
|
+
): Readonly<Record<string, unknown>> | null;
|
package/types/index.d.ts
CHANGED
|
@@ -243,6 +243,11 @@ export const DEFAULT_WATER_INTERACTION_CONFIG: any;
|
|
|
243
243
|
export const DEFAULT_WATER_SCENARIO: any;
|
|
244
244
|
export const DEFAULT_WATER_SETTINGS: any;
|
|
245
245
|
export const DEFAULT_WATER_UNDERWATER_ATMOSPHERE: any;
|
|
246
|
+
export const DENSE_FIELD_ROCK_CULL_BELOW_PIXELS: any;
|
|
247
|
+
export const DENSE_FIELD_ROCK_LOD_LEVELS: any;
|
|
248
|
+
export const DENSE_FIELD_ROCK_PIXEL_THRESHOLDS: any;
|
|
249
|
+
export const DENSE_FIELD_ROCK_PRODUCTION_RULE: any;
|
|
250
|
+
export const DENSE_FIELD_ROCK_TRIANGLE_CEILINGS: any;
|
|
246
251
|
export const ENVIRONMENT_DEBUG_MODES: any;
|
|
247
252
|
export const ENVIRONMENT_MATERIAL_ROLES: any;
|
|
248
253
|
export const ENVIRONMENT_PRESET_ALIASES: any;
|
|
@@ -371,6 +376,8 @@ export const NIGHT_SKY_PARAM_KEYS: any;
|
|
|
371
376
|
export const NIGHT_SKY_PARAM_SCHEMA: any;
|
|
372
377
|
export const OFFICIAL_CATALOG_ASSET_VERSION: any;
|
|
373
378
|
export const OFFICIAL_CATALOG_PROVIDER_TRANSPORTS: any;
|
|
379
|
+
export const OFFICIAL_ROCK_GALLERY_RECIPE_SCHEMA: any;
|
|
380
|
+
export const OFFICIAL_ROCK_MATERIAL_SCHEMA: any;
|
|
374
381
|
export class OfficialCatalogProviderError { constructor(...args: any[]); [key: string]: any; }
|
|
375
382
|
export const POST_GENERATOR_DOMAIN: any;
|
|
376
383
|
export const POST_PROCESSING_PRESETS: any;
|
|
@@ -777,6 +784,9 @@ export function createBranchTubeGeometry(...args: any[]): any;
|
|
|
777
784
|
export function createBranchingTreeSkeleton(...args: any[]): any;
|
|
778
785
|
export function createC7GeologyMapData(...args: any[]): any;
|
|
779
786
|
export function createC7SurfaceSpecification(...args: any[]): any;
|
|
787
|
+
export function createC8ReferenceAuthoritySourceId(...args: any[]): any;
|
|
788
|
+
export function createC8ReferenceGeometrySourceId(...args: any[]): any;
|
|
789
|
+
export function createC8ReferenceSurfaceSourceId(...args: any[]): any;
|
|
780
790
|
export function createCallMeSenseiGrassField(...args: any[]): any;
|
|
781
791
|
export function createCallMeSenseiGrassMaterial(...args: any[]): any;
|
|
782
792
|
export function createCallMeSenseiSkyLightProbe(...args: any[]): any;
|
|
@@ -809,6 +819,7 @@ export function createCurlNoiseVolume(...args: any[]): any;
|
|
|
809
819
|
export function createCurveFrame(...args: any[]): any;
|
|
810
820
|
export function createDebugEnvironmentMaterial(...args: any[]): any;
|
|
811
821
|
export function createDefaultRockShaderTextureSet(...args: any[]): any;
|
|
822
|
+
export function createDenseFieldRockLodRuntime(...args: any[]): any;
|
|
812
823
|
export function createDensityWeightMask(...args: any[]): any;
|
|
813
824
|
export function createDirectionalLightDescriptor(...args: any[]): any;
|
|
814
825
|
export function createDiscAreaLightDescriptor(...args: any[]): any;
|
|
@@ -900,6 +911,7 @@ export function createNightSky(...args: any[]): any;
|
|
|
900
911
|
export function createNoisePatchMask(...args: any[]): any;
|
|
901
912
|
export function createOfficialCatalogAssetRuntime(...args: any[]): any;
|
|
902
913
|
export function createOfficialCatalogProvider(...args: any[]): any;
|
|
914
|
+
export function createOfficialCatalogRockEditorDescriptor(...args: any[]): any;
|
|
903
915
|
export function createOrganLeafSpriteTexture(...args: any[]): any;
|
|
904
916
|
export function createOssStyleBundleProvider(...args: any[]): any;
|
|
905
917
|
export function createOutlineSettings(...args: any[]): any;
|
|
@@ -1031,6 +1043,7 @@ export function deriveCanopyPalette(...args: any[]): any;
|
|
|
1031
1043
|
export function describeCatalogLicense(...args: any[]): any;
|
|
1032
1044
|
export function describeNeutralStyleCoverage(...args: any[]): any;
|
|
1033
1045
|
export function describeTexture(...args: any[]): any;
|
|
1046
|
+
export function describeToonLabDirectionalBeddingProjection(...args: any[]): any;
|
|
1034
1047
|
export function deserializeLightingLook(...args: any[]): any;
|
|
1035
1048
|
export function deserializeLightingLookPreset(...args: any[]): any;
|
|
1036
1049
|
export function deserializeLightingRecipe(...args: any[]): any;
|
|
@@ -1059,6 +1072,7 @@ export const environmentStateUniforms: any;
|
|
|
1059
1072
|
export function environmentUsesAlphaCutout(...args: any[]): any;
|
|
1060
1073
|
export function erodeHeightfield(...args: any[]): any;
|
|
1061
1074
|
export function erodeHeightfieldStylized(...args: any[]): any;
|
|
1075
|
+
export function estimateCatalogProjectedPixels(...args: any[]): any;
|
|
1062
1076
|
export function estimateSurfaceNetsResolution(...args: any[]): any;
|
|
1063
1077
|
export function evaluateAssetCandidate(...args: any[]): any;
|
|
1064
1078
|
export function evaluateField(...args: any[]): any;
|
|
@@ -1073,6 +1087,7 @@ export const fallbackEnvironmentNormalTexture: any;
|
|
|
1073
1087
|
export const fallbackEnvironmentWhiteTexture: any;
|
|
1074
1088
|
export function fetchStyleBundle(...args: any[]): any;
|
|
1075
1089
|
export function findCloudLayerCrossing(...args: any[]): any;
|
|
1090
|
+
export function findOfficialCatalogArtifact(...args: any[]): any;
|
|
1076
1091
|
export function findPrimarySkinnedMesh(...args: any[]): any;
|
|
1077
1092
|
export function finiteDepthWaveNumberRatio(...args: any[]): any;
|
|
1078
1093
|
export function fitModelForController(...args: any[]): any;
|
|
@@ -1101,6 +1116,7 @@ export function getLightingStyleGeneratorFamilyOptions(...args: any[]): any;
|
|
|
1101
1116
|
export function getLightingStylePresetOptions(...args: any[]): any;
|
|
1102
1117
|
export function getLightingTypeCapability(...args: any[]): any;
|
|
1103
1118
|
export function getMoonAlbedoTexture(...args: any[]): any;
|
|
1119
|
+
export function getOfficialCatalogArtifactUrl(...args: any[]): any;
|
|
1104
1120
|
export function getPostGeneratorFamilyOptions(...args: any[]): any;
|
|
1105
1121
|
export function getPostProcessingPresetOptions(...args: any[]): any;
|
|
1106
1122
|
export function getRenderLayer(...args: any[]): any;
|
|
@@ -1133,6 +1149,7 @@ export function hashGeometry(...args: any[]): any;
|
|
|
1133
1149
|
export function henyeyGreensteinPhaseNode(...args: any[]): any;
|
|
1134
1150
|
export function heroCloudSkyOverrides(...args: any[]): any;
|
|
1135
1151
|
export function hourFromDayCycleTime(...args: any[]): any;
|
|
1152
|
+
export function inferDenseFieldRockClass(...args: any[]): any;
|
|
1136
1153
|
export function inferManufacturedObjectClass(...args: any[]): any;
|
|
1137
1154
|
export function inspectRockGeometryTangents(...args: any[]): any;
|
|
1138
1155
|
export function inspectRockRegionBinding(...args: any[]): any;
|
|
@@ -1147,6 +1164,7 @@ export function isEnvironmentShadowMesh(...args: any[]): any;
|
|
|
1147
1164
|
export function isFoliageMaterial(...args: any[]): any;
|
|
1148
1165
|
export function isPostProcessingEnabled(...args: any[]): any;
|
|
1149
1166
|
export function isRockHelperPiece(...args: any[]): any;
|
|
1167
|
+
export function isRockSourceMeshReference(...args: any[]): any;
|
|
1150
1168
|
export function isScanAssetMaterial(...args: any[]): any;
|
|
1151
1169
|
export function isUtilityTextureLabel(...args: any[]): any;
|
|
1152
1170
|
export function isVegetationSharedShaderGroup(...args: any[]): any;
|
|
@@ -1162,6 +1180,8 @@ export function loadEnvironmentTexture(...args: any[]): any;
|
|
|
1162
1180
|
export function loadIdleClipForTarget(...args: any[]): any;
|
|
1163
1181
|
export function loadJumpClipForTarget(...args: any[]): any;
|
|
1164
1182
|
export function loadOfficialCatalogAsset(...args: any[]): any;
|
|
1183
|
+
export function loadOfficialCatalogRockPackage(...args: any[]): any;
|
|
1184
|
+
export function loadOfficialCatalogRockShaderInput(...args: any[]): any;
|
|
1165
1185
|
export function loadPackagedLocomotionClipsForTarget(...args: any[]): any;
|
|
1166
1186
|
export function loadRetargetedMixamoClipForTarget(...args: any[]): any;
|
|
1167
1187
|
export function loadRunningClipForTarget(...args: any[]): any;
|
|
@@ -1432,6 +1452,7 @@ export function sceneCollisionRuntimeFor(...args: any[]): any;
|
|
|
1432
1452
|
export function sculptEditBounds(...args: any[]): any;
|
|
1433
1453
|
export function searchSurfaceNetsResolution(...args: any[]): any;
|
|
1434
1454
|
export function selectCatalogLodLevel(...args: any[]): any;
|
|
1455
|
+
export function selectCatalogLodLevelByProjectedPixels(...args: any[]): any;
|
|
1435
1456
|
export function serializableTreeOptions(...args: any[]): any;
|
|
1436
1457
|
export function serializeGrassPreset(...args: any[]): any;
|
|
1437
1458
|
export function serializeGroundShaderPreset(...args: any[]): any;
|
|
@@ -1520,6 +1541,8 @@ export function toMaterialArray(...args: any[]): any;
|
|
|
1520
1541
|
export function toSerializableCloudStyleParams(...args: any[]): any;
|
|
1521
1542
|
export function toSerializableSkyColorParams(...args: any[]): any;
|
|
1522
1543
|
export function toSerializableSkyParams(...args: any[]): any;
|
|
1544
|
+
export function toonLabDirectionalBeddingColor(...args: any[]): any;
|
|
1545
|
+
export function toonLabDirectionalBeddingNormal(...args: any[]): any;
|
|
1523
1546
|
export function toonLabMountainProfileFromResolvedMaterial(...args: any[]): any;
|
|
1524
1547
|
export function toonLabRockProfileFromResolvedMaterial(...args: any[]): any;
|
|
1525
1548
|
export function toonLabScalar(...args: any[]): any;
|
|
@@ -1542,6 +1565,7 @@ export function usesAlphaBlend(...args: any[]): any;
|
|
|
1542
1565
|
export function validateAssetSourcingPolicy(...args: any[]): any;
|
|
1543
1566
|
export function validateCollisionMetadata(...args: any[]): any;
|
|
1544
1567
|
export function validateCompiledTreeManifest(...args: any[]): any;
|
|
1568
|
+
export function validateDenseFieldRockLodTargets(...args: any[]): any;
|
|
1545
1569
|
export function validateEnvironmentPresetDocument(...args: any[]): any;
|
|
1546
1570
|
export function validateGrassPresetDocument(...args: any[]): any;
|
|
1547
1571
|
export function validateGroundShaderPresetDocument(...args: any[]): any;
|
|
@@ -9,12 +9,15 @@ export const TOONLAB_ROCK_PROFILE_DEFAULTS: any;
|
|
|
9
9
|
export const TOONLAB_ROCK_SHADER_GUID: any;
|
|
10
10
|
export function createToonLabMountainMaterial(...args: any[]): any;
|
|
11
11
|
export function createToonRockMaterial(...args: any[]): any;
|
|
12
|
+
export function describeToonLabDirectionalBeddingProjection(...args: any[]): any;
|
|
12
13
|
export function loadToonLabMountainMaterial(...args: any[]): any;
|
|
13
14
|
export function loadToonRockMaterial(...args: any[]): any;
|
|
14
15
|
export function loadToonRockMaterialInputs(...args: any[]): any;
|
|
15
16
|
export function normalizeToonLabMountainProfile(...args: any[]): any;
|
|
16
17
|
export function normalizeToonLabRockProfile(...args: any[]): any;
|
|
17
18
|
export function tangentNormalToView(...args: any[]): any;
|
|
19
|
+
export function toonLabDirectionalBeddingColor(...args: any[]): any;
|
|
20
|
+
export function toonLabDirectionalBeddingNormal(...args: any[]): any;
|
|
18
21
|
export function toonLabMountainProfileFromResolvedMaterial(...args: any[]): any;
|
|
19
22
|
export function toonLabRockProfileFromResolvedMaterial(...args: any[]): any;
|
|
20
23
|
export function toonLabTriplanarColor(...args: any[]): any;
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
export function inferDenseFieldRockClass({ scaleClass, targetHeightMetres }?: {
|
|
2
|
+
scaleClass?: any;
|
|
3
|
+
targetHeightMetres?: any;
|
|
4
|
+
}): "landmark" | "formation" | "ordinary";
|
|
5
|
+
export function validateDenseFieldRockLodTargets(targets: any, { assetClass, }?: {
|
|
6
|
+
assetClass?: string;
|
|
7
|
+
}): Readonly<{
|
|
8
|
+
assetClass: string;
|
|
9
|
+
ceilings: any;
|
|
10
|
+
errors: readonly string[];
|
|
11
|
+
valid: boolean;
|
|
12
|
+
values: readonly number[];
|
|
13
|
+
}>;
|
|
14
|
+
/**
|
|
15
|
+
* Install the mandatory dense-field rock behavior on an authored LOD0-LOD4
|
|
16
|
+
* root. The final tier is geometry-only silhouette support; it never casts a
|
|
17
|
+
* shadow and the root is culled once its projected diameter drops below the
|
|
18
|
+
* production pixel threshold.
|
|
19
|
+
*/
|
|
20
|
+
export function createDenseFieldRockLodRuntime(root: any, { cullBelowPixels, hysteresis, maxLevel, pixelThresholds, referenceDiameter, requireComplete, }?: {
|
|
21
|
+
cullBelowPixels?: number;
|
|
22
|
+
hysteresis?: number;
|
|
23
|
+
maxLevel?: number;
|
|
24
|
+
pixelThresholds?: readonly number[];
|
|
25
|
+
referenceDiameter?: any;
|
|
26
|
+
requireComplete?: boolean;
|
|
27
|
+
}): Readonly<{
|
|
28
|
+
policy: Readonly<{
|
|
29
|
+
cullBelowPixels: 5;
|
|
30
|
+
farShadowLastLevel: 2;
|
|
31
|
+
levelCount: 5;
|
|
32
|
+
levels: readonly (Readonly<{
|
|
33
|
+
id: "LOD0";
|
|
34
|
+
level: 0;
|
|
35
|
+
purpose: "hero-close";
|
|
36
|
+
}> | Readonly<{
|
|
37
|
+
id: "LOD1";
|
|
38
|
+
level: 1;
|
|
39
|
+
purpose: "near-gameplay";
|
|
40
|
+
}> | Readonly<{
|
|
41
|
+
id: "LOD2";
|
|
42
|
+
level: 2;
|
|
43
|
+
purpose: "mid-gameplay";
|
|
44
|
+
}> | Readonly<{
|
|
45
|
+
id: "LOD3";
|
|
46
|
+
level: 3;
|
|
47
|
+
purpose: "far-simplified";
|
|
48
|
+
}> | Readonly<{
|
|
49
|
+
id: "LOD4";
|
|
50
|
+
level: 4;
|
|
51
|
+
purpose: "very-far-silhouette";
|
|
52
|
+
}>)[];
|
|
53
|
+
pixelThresholds: readonly number[];
|
|
54
|
+
selectionBasis: "projected-object-diameter-pixels";
|
|
55
|
+
triangleCeilings: Readonly<{
|
|
56
|
+
ordinary: Readonly<{
|
|
57
|
+
LOD3: 1200;
|
|
58
|
+
LOD4: 350;
|
|
59
|
+
}>;
|
|
60
|
+
formation: Readonly<{
|
|
61
|
+
LOD3: 1800;
|
|
62
|
+
LOD4: 600;
|
|
63
|
+
}>;
|
|
64
|
+
landmark: Readonly<{
|
|
65
|
+
LOD3: 2500;
|
|
66
|
+
LOD4: 800;
|
|
67
|
+
}>;
|
|
68
|
+
}>;
|
|
69
|
+
veryFar: Readonly<{
|
|
70
|
+
allowedSurfaceChannels: readonly string[];
|
|
71
|
+
castShadow: false;
|
|
72
|
+
preserve: readonly string[];
|
|
73
|
+
remove: readonly string[];
|
|
74
|
+
silhouetteOnly: true;
|
|
75
|
+
}>;
|
|
76
|
+
}>;
|
|
77
|
+
dispose(): void;
|
|
78
|
+
availableLevels: readonly any[];
|
|
79
|
+
bindings: readonly any[];
|
|
80
|
+
disposed: boolean;
|
|
81
|
+
level: any;
|
|
82
|
+
setLevel: (level: any) => boolean;
|
|
83
|
+
cullBelowPixels: number;
|
|
84
|
+
pixelThresholds: readonly any[];
|
|
85
|
+
referenceDiameter: number;
|
|
86
|
+
thresholds: readonly any[];
|
|
87
|
+
hysteresis: number;
|
|
88
|
+
update: (options?: {}) => Readonly<{
|
|
89
|
+
changed: boolean;
|
|
90
|
+
culled: boolean;
|
|
91
|
+
distance: number;
|
|
92
|
+
level: any;
|
|
93
|
+
projectedPixels: number;
|
|
94
|
+
}>;
|
|
95
|
+
}>;
|
|
96
|
+
export const DENSE_FIELD_ROCK_LOD_LEVELS: readonly (Readonly<{
|
|
97
|
+
id: "LOD0";
|
|
98
|
+
level: 0;
|
|
99
|
+
purpose: "hero-close";
|
|
100
|
+
}> | Readonly<{
|
|
101
|
+
id: "LOD1";
|
|
102
|
+
level: 1;
|
|
103
|
+
purpose: "near-gameplay";
|
|
104
|
+
}> | Readonly<{
|
|
105
|
+
id: "LOD2";
|
|
106
|
+
level: 2;
|
|
107
|
+
purpose: "mid-gameplay";
|
|
108
|
+
}> | Readonly<{
|
|
109
|
+
id: "LOD3";
|
|
110
|
+
level: 3;
|
|
111
|
+
purpose: "far-simplified";
|
|
112
|
+
}> | Readonly<{
|
|
113
|
+
id: "LOD4";
|
|
114
|
+
level: 4;
|
|
115
|
+
purpose: "very-far-silhouette";
|
|
116
|
+
}>)[];
|
|
117
|
+
export const DENSE_FIELD_ROCK_PIXEL_THRESHOLDS: readonly number[];
|
|
118
|
+
export const DENSE_FIELD_ROCK_CULL_BELOW_PIXELS: 5;
|
|
119
|
+
export const DENSE_FIELD_ROCK_TRIANGLE_CEILINGS: Readonly<{
|
|
120
|
+
ordinary: Readonly<{
|
|
121
|
+
LOD3: 1200;
|
|
122
|
+
LOD4: 350;
|
|
123
|
+
}>;
|
|
124
|
+
formation: Readonly<{
|
|
125
|
+
LOD3: 1800;
|
|
126
|
+
LOD4: 600;
|
|
127
|
+
}>;
|
|
128
|
+
landmark: Readonly<{
|
|
129
|
+
LOD3: 2500;
|
|
130
|
+
LOD4: 800;
|
|
131
|
+
}>;
|
|
132
|
+
}>;
|
|
133
|
+
export const DENSE_FIELD_ROCK_PRODUCTION_RULE: Readonly<{
|
|
134
|
+
cullBelowPixels: 5;
|
|
135
|
+
farShadowLastLevel: 2;
|
|
136
|
+
levelCount: 5;
|
|
137
|
+
levels: readonly (Readonly<{
|
|
138
|
+
id: "LOD0";
|
|
139
|
+
level: 0;
|
|
140
|
+
purpose: "hero-close";
|
|
141
|
+
}> | Readonly<{
|
|
142
|
+
id: "LOD1";
|
|
143
|
+
level: 1;
|
|
144
|
+
purpose: "near-gameplay";
|
|
145
|
+
}> | Readonly<{
|
|
146
|
+
id: "LOD2";
|
|
147
|
+
level: 2;
|
|
148
|
+
purpose: "mid-gameplay";
|
|
149
|
+
}> | Readonly<{
|
|
150
|
+
id: "LOD3";
|
|
151
|
+
level: 3;
|
|
152
|
+
purpose: "far-simplified";
|
|
153
|
+
}> | Readonly<{
|
|
154
|
+
id: "LOD4";
|
|
155
|
+
level: 4;
|
|
156
|
+
purpose: "very-far-silhouette";
|
|
157
|
+
}>)[];
|
|
158
|
+
pixelThresholds: readonly number[];
|
|
159
|
+
selectionBasis: "projected-object-diameter-pixels";
|
|
160
|
+
triangleCeilings: Readonly<{
|
|
161
|
+
ordinary: Readonly<{
|
|
162
|
+
LOD3: 1200;
|
|
163
|
+
LOD4: 350;
|
|
164
|
+
}>;
|
|
165
|
+
formation: Readonly<{
|
|
166
|
+
LOD3: 1800;
|
|
167
|
+
LOD4: 600;
|
|
168
|
+
}>;
|
|
169
|
+
landmark: Readonly<{
|
|
170
|
+
LOD3: 2500;
|
|
171
|
+
LOD4: 800;
|
|
172
|
+
}>;
|
|
173
|
+
}>;
|
|
174
|
+
veryFar: Readonly<{
|
|
175
|
+
allowedSurfaceChannels: readonly string[];
|
|
176
|
+
castShadow: false;
|
|
177
|
+
preserve: readonly string[];
|
|
178
|
+
remove: readonly string[];
|
|
179
|
+
silhouetteOnly: true;
|
|
180
|
+
}>;
|
|
181
|
+
}>;
|