Add BabylonJS Editor workspace boilerplate

Includes:
- Editor project configuration and cache files
- Sample scene with example meshes and geometries
- Asset files (asteroid, base GLB models, environment map)
- Vite/TypeScript configuration for editor preview
- Editor script components for game objects

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Michael Mainguy 2025-12-09 07:49:00 -06:00
parent 9440be3251
commit 4c9e1f65c0
70 changed files with 666434 additions and 0 deletions

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
{}

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1 @@
{}

View File

@ -0,0 +1,3 @@
# Babylon.js Editor
This folder contains all the assets used in the project.

Binary file not shown.

BIN
gameEditor/assets/base.glb Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 465 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 119 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

@ -0,0 +1,192 @@
{
"clearColor": [
0.2,
0.2,
0.3,
1
],
"ambientColor": [
0,
0,
0
],
"environment": {
"environmentIntensity": 1
},
"fog": {
"fogEnabled": false,
"fogMode": 0,
"fogStart": 10,
"fogEnd": 1000,
"fogDensity": 0.001,
"fogColor": [
0.640006735140596,
0.640006735140596,
0.640006735140596
]
},
"physics": {
"gravity": [
0,
-981,
0
]
},
"rendering": [
{
"cameraId": "3cc9ef80-8c60-43e0-bcc4-1b55ff36010d",
"ssao2RenderingPipeline": null,
"vlsPostProcess": null,
"ssrRenderingPipeline": null,
"motionBlurPostProcess": null,
"defaultRenderingPipeline": null,
"iblShadowsRenderPipeline": null
}
],
"metadata": {
"rendering": [],
"physicsGravity": [
0,
-981,
0
],
"scripts": [
{
"enabled": true,
"key": "scripts/editorScripts/AsteroidComponent.ts",
"values": {
"linearVelocity": {
"type": "vector3",
"value": [
0,
0,
0
]
},
"angularVelocity": {
"type": "vector3",
"value": [
0,
0,
0
]
},
"mass": {
"type": "number",
"value": 1
},
"targetId": {
"type": "string",
"description": "Reference to a TargetComponent node",
"value": ""
},
"targetMode": {
"type": "string",
"description": "orbit | moveToward | (empty)",
"value": ""
}
},
"_id": "fe3c8020-9375-4c58-a54f-852339e3f40f"
}
]
},
"editorCamera": {
"tags": null,
"ellipsoid": [
0.5,
1,
0.5
],
"ellipsoidOffset": [
0,
0,
0
],
"checkCollisions": false,
"applyGravity": false,
"updateUpVectorFromRotation": false,
"rotation": [
0.23466138679888465,
0.48668946590326523,
0
],
"speed": 2000,
"position": [
-19666.901457088374,
17401.223711429564,
-55872.0430330369
],
"upVector": [
0,
1,
0
],
"fov": 0.8,
"projectionPlaneTilt": 0,
"minZ": 1,
"maxZ": 1500000,
"inertia": 0.5,
"mode": 0,
"layerMask": 268435455,
"fovMode": 0,
"cameraRigMode": 0,
"ignoreCameraMaxZ": false,
"name": "Editor preview",
"id": "3cc9ef80-8c60-43e0-bcc4-1b55ff36010d",
"state": "",
"metadata": {},
"type": "EditorCamera",
"inputsmgr": {
"FreeCameraKeyboardMoveInput": {
"tags": null,
"keysUp": [
87
],
"keysUpward": [
69
],
"keysDown": [
83
],
"keysDownward": [
81
],
"keysLeft": [
65
],
"keysRight": [
68
],
"rotationSpeed": 0.5,
"keysRotateLeft": [],
"keysRotateRight": [],
"keysRotateUp": [],
"keysRotateDown": []
},
"FreeCameraMouseInput": {
"tags": null,
"buttons": [
0,
1,
2
],
"angularSensibility": 500
},
"FreeCameraMouseWheelInput": {
"tags": null,
"wheelXMoveRelative": 0,
"wheelYMoveRelative": 2,
"wheelPrecisionX": 3,
"wheelPrecisionY": 3,
"wheelPrecisionZ": 3
},
"EditorFreeCameraPanInput": {
"tags": null
}
},
"animations": [],
"ranges": [],
"isEnabled": true
},
"animations": []
}

View File

@ -0,0 +1,524 @@
{
"meshes": [
{
"name": "Ship_primitive3",
"id": "037071c4-2096-4616-8e14-2e9cadab7ade",
"uniqueId": 1764787012176,
"type": "Mesh",
"position": [
0,
0,
0
],
"rotation": [
0,
0,
0
],
"scaling": [
1,
1,
1
],
"localMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
],
"isEnabled": true,
"isVisible": true,
"infiniteDistance": false,
"pickable": true,
"receiveShadows": true,
"billboardMode": 0,
"visibility": 1,
"alwaysSelectAsActiveMesh": false,
"checkCollisions": false,
"ellipsoid": [
0.5,
1,
0.5
],
"ellipsoidOffset": [
0,
0,
0
],
"doNotSyncBoundingInfo": false,
"isBlocker": false,
"sideOrientation": 0,
"isUnIndexed": false,
"geometryUniqueId": 1764787012184,
"geometryId": "ab02f83d-3a7a-4abd-8e08-7dab01ba5931",
"subMeshes": null,
"materialUniqueId": 1764787012185,
"materialId": "4b8b6899-b62b-4c2c-aa9c-4102fac0c2fe",
"metadata": {
"parentId": 1764787012177
},
"instances": [],
"animations": [],
"ranges": [],
"layerMask": 268435455,
"alphaIndex": 1.7976931348623157e+308,
"hasVertexAlpha": false,
"overlayAlpha": 1,
"overlayColor": [
0,
0,
0
],
"applyFog": true,
"delayLoadingFile": "assets/example.scene/geometries/ab02f83d-3a7a-4abd-8e08-7dab01ba5931.babylonbinarymeshdata",
"boundingBoxMaximum": [
-0.36345699429512024,
0.7514887452125549,
4.199827194213867
],
"boundingBoxMinimum": [
-0.866409957408905,
0.29206109046936035,
4.168615341186523
],
"_binaryInfo": {
"positionsAttrDesc": {
"count": 12,
"stride": 3,
"offset": 0,
"dataType": 1
},
"normalsAttrDesc": {
"count": 12,
"stride": 3,
"offset": 48,
"dataType": 1
},
"uvsAttrDesc": {
"count": 8,
"stride": 2,
"offset": 96,
"dataType": 1
},
"indicesAttrDesc": {
"count": 6,
"stride": 1,
"offset": 128,
"dataType": 0
},
"subMeshesAttrDesc": {
"count": 1,
"stride": 5,
"offset": 152,
"dataType": 0
}
},
"positions": null,
"normals": null,
"uvs": null,
"hasUVs": true,
"indices": null
}
],
"transformNodes": [],
"cameras": [],
"lights": [],
"materials": [
{
"tags": null,
"directIntensity": 1,
"emissiveIntensity": 1,
"environmentIntensity": 1,
"specularIntensity": 1,
"disableBumpMap": false,
"albedoTexture": {
"tags": null,
"url": "assets/editor-generated_7dc5359ed77982dcccfa2ae9f8d1c491.jpg",
"uOffset": 0,
"vOffset": 0,
"uScale": 1,
"vScale": -1,
"uAng": 0,
"vAng": 0,
"wAng": 0,
"uRotationCenter": 0.5,
"vRotationCenter": 0.5,
"wRotationCenter": 0.5,
"homogeneousRotationInUVTransform": false,
"isBlocking": true,
"name": "assets/editor-generated_7dc5359ed77982dcccfa2ae9f8d1c491.jpg",
"metadata": {
"baseSize": {
"width": 512,
"height": 512
}
},
"hasAlpha": false,
"getAlphaFromRGB": false,
"level": 1,
"coordinatesIndex": 2,
"optimizeUVAllocation": true,
"coordinatesMode": 0,
"wrapU": 1,
"wrapV": 1,
"wrapR": 1,
"anisotropicFilteringLevel": 4,
"isCube": false,
"is3D": false,
"is2DArray": false,
"gammaSpace": false,
"invertZ": false,
"lodLevelInAlpha": false,
"lodGenerationOffset": 0,
"lodGenerationScale": 0,
"linearSpecularLOD": false,
"isRenderTarget": false,
"animations": [],
"invertY": true,
"samplingMode": 3,
"_useSRGBBuffer": false,
"internalTextureLabel": "/Users/michaelmainguy/WebstormProjects/space-game/gameEditor",
"noMipmap": false
},
"ambientTextureStrength": 1,
"ambientTextureImpactOnAnalyticalLights": 0,
"emissiveTexture": {
"tags": null,
"url": "assets/editor-generated_7dc5359ed77982dcccfa2ae9f8d1c491.jpg",
"uOffset": 0,
"vOffset": 0,
"uScale": 1,
"vScale": -1,
"uAng": 0,
"vAng": 0,
"wAng": 0,
"uRotationCenter": 0.5,
"vRotationCenter": 0.5,
"wRotationCenter": 0.5,
"homogeneousRotationInUVTransform": false,
"isBlocking": true,
"name": "assets/editor-generated_7dc5359ed77982dcccfa2ae9f8d1c491.jpg",
"metadata": {
"baseSize": {
"width": 512,
"height": 512
}
},
"hasAlpha": false,
"getAlphaFromRGB": false,
"level": 1,
"coordinatesIndex": 2,
"optimizeUVAllocation": true,
"coordinatesMode": 0,
"wrapU": 1,
"wrapV": 1,
"wrapR": 1,
"anisotropicFilteringLevel": 4,
"isCube": false,
"is3D": false,
"is2DArray": false,
"gammaSpace": false,
"invertZ": false,
"lodLevelInAlpha": false,
"lodGenerationOffset": 0,
"lodGenerationScale": 0,
"linearSpecularLOD": false,
"isRenderTarget": false,
"animations": [],
"invertY": true,
"samplingMode": 3,
"_useSRGBBuffer": false,
"internalTextureLabel": "/Users/michaelmainguy/WebstormProjects/space-game/gameEditor",
"noMipmap": false
},
"metallic": 0,
"roughness": 0.5,
"metallicF0Factor": 1,
"metallicReflectanceColor": [
1,
1,
1
],
"useOnlyMetallicFromMetallicReflectanceTexture": false,
"ambient": [
0,
0,
0
],
"albedo": [
1,
1,
1
],
"baseWeight": 1,
"reflectivity": [
1,
1,
1
],
"reflection": [
1,
1,
1
],
"emissive": [
0.9999999403953552,
0.9999999403953552,
0.9999999403953552
],
"microSurface": 1,
"useLightmapAsShadowmap": false,
"useAlphaFromAlbedoTexture": false,
"forceAlphaTest": false,
"alphaCutOff": 0.4,
"useSpecularOverAlpha": true,
"useMicroSurfaceFromReflectivityMapAlpha": false,
"useRoughnessFromMetallicTextureAlpha": true,
"useRoughnessFromMetallicTextureGreen": false,
"useMetallnessFromMetallicTextureBlue": false,
"useAmbientOcclusionFromMetallicTextureRed": false,
"useAmbientInGrayScale": false,
"useAutoMicroSurfaceFromReflectivityMap": false,
"usePhysicalLightFalloff": true,
"useGLTFLightFalloff": false,
"useRadianceOverAlpha": true,
"useObjectSpaceNormalMap": false,
"useParallax": false,
"useParallaxOcclusion": false,
"parallaxScaleBias": 0.05,
"disableLighting": false,
"forceIrradianceInFragment": false,
"maxSimultaneousLights": 32,
"invertNormalMapX": false,
"invertNormalMapY": false,
"twoSidedLighting": true,
"useAlphaFresnel": false,
"useLinearAlphaFresnel": false,
"forceNormalForward": false,
"enableSpecularAntiAliasing": true,
"useHorizonOcclusion": true,
"useRadianceOcclusion": true,
"unlit": false,
"applyDecalMapAfterDetailMap": false,
"id": "4b8b6899-b62b-4c2c-aa9c-4102fac0c2fe",
"name": "Gauges",
"metadata": {},
"checkReadyOnEveryCall": false,
"checkReadyOnlyOnce": false,
"state": "",
"alpha": 1,
"backFaceCulling": false,
"cullBackFaces": true,
"_alphaMode": [
2
],
"_needDepthPrePass": false,
"disableDepthWrite": false,
"disableColorWrite": false,
"forceDepthWrite": false,
"depthFunction": 0,
"separateCullingPass": false,
"fogEnabled": true,
"pointSize": 1,
"zOffset": 0,
"zOffsetUnits": 0,
"pointsCloud": false,
"fillMode": 0,
"_isVertexOutputInvariant": false,
"transparencyMode": 0,
"stencil": {
"tags": null,
"func": 519,
"backFunc": 519,
"funcRef": 1,
"funcMask": 255,
"opStencilFail": 7680,
"opDepthFail": 7680,
"opStencilDepthPass": 7681,
"backOpStencilFail": 7680,
"backOpDepthFail": 7680,
"backOpStencilDepthPass": 7681,
"mask": 255,
"enabled": false
},
"uniqueId": 1764787012185,
"plugins": {
"PBRBRDFConfiguration": {
"tags": null,
"useEnergyConservation": true,
"useSmithVisibilityHeightCorrelated": true,
"useSphericalHarmonics": true,
"useSpecularGlossinessInputEnergyConservation": true,
"mixIblRadianceWithIrradiance": true,
"useLegacySpecularEnergyConservation": true,
"baseDiffuseModel": 0,
"dielectricSpecularModel": 0,
"conductorSpecularModel": 0,
"name": "PBRBRDF",
"priority": 90,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRClearCoatConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"roughness": 0,
"indexOfRefraction": 1.5,
"useRoughnessFromMainTexture": true,
"remapF0OnInterfaceChange": true,
"isTintEnabled": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"tintThickness": 1,
"name": "PBRClearCoat",
"priority": 100,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRIridescenceConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"minimumThickness": 100,
"maximumThickness": 400,
"indexOfRefraction": 1.3,
"name": "PBRIridescence",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRAnisotropicConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"direction": [
1,
0
],
"legacy": false,
"name": "PBRAnisotropic",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSheenConfiguration": {
"tags": null,
"isEnabled": false,
"linkSheenWithAlbedo": false,
"intensity": 1,
"color": [
1,
1,
1
],
"useRoughnessFromMainTexture": true,
"albedoScaling": false,
"name": "Sheen",
"priority": 120,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSubSurfaceConfiguration": {
"tags": null,
"isRefractionEnabled": false,
"isTranslucencyEnabled": false,
"isDispersionEnabled": false,
"isScatteringEnabled": false,
"_scatteringDiffusionProfileIndex": 0,
"refractionIntensity": 1,
"translucencyIntensity": 1,
"useAlbedoToTintRefraction": false,
"useAlbedoToTintTranslucency": false,
"indexOfRefraction": 1.5,
"_volumeIndexOfRefraction": -1,
"invertRefractionY": false,
"linkRefractionWithTransparency": false,
"minimumThickness": 0,
"maximumThickness": 1,
"useThicknessAsDepth": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"dispersion": 0,
"diffusionDistance": [
1,
1,
1
],
"useMaskFromThicknessTexture": false,
"useGltfStyleTextures": true,
"applyAlbedoAfterSubSurface": false,
"legacyTranslucency": false,
"name": "PBRSubSurface",
"priority": 130,
"resolveIncludes": false,
"registerForExtraEvents": true
},
"DetailMapConfiguration": {
"tags": null,
"diffuseBlendLevel": 1,
"roughnessBlendLevel": 1,
"bumpLevel": 1,
"normalBlendMethod": 0,
"isEnabled": false,
"name": "DetailMap",
"priority": 140,
"resolveIncludes": false,
"registerForExtraEvents": false
}
},
"customType": "BABYLON.PBRMaterial"
}
],
"geometries": {
"boxes": [],
"spheres": [],
"cylinders": [],
"toruses": [],
"grounds": [],
"planes": [],
"torusKnots": [],
"vertexData": []
},
"metadata": {
"parentId": 1764787012177
},
"basePoseMatrix": [
1.6247152644956515,
0,
4.08643597401238e-7,
0,
0,
1.4727547823314542,
0,
0,
5.293994474577842e-7,
0,
-1.2541182156960042,
0,
0,
-0.9408809412868501,
0,
1
]
}

View File

@ -0,0 +1,177 @@
{
"meshes": [
{
"name": "New Box",
"id": "1679685b-ca9c-4a1c-8161-9f6064cb1d7c",
"uniqueId": 1764787809874,
"type": "Mesh",
"position": [
0,
0,
0
],
"rotation": [
0,
0,
0
],
"scaling": [
1,
1,
1
],
"localMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
],
"isEnabled": true,
"isVisible": true,
"infiniteDistance": false,
"pickable": true,
"receiveShadows": true,
"billboardMode": 0,
"visibility": 1,
"alwaysSelectAsActiveMesh": false,
"checkCollisions": false,
"ellipsoid": [
0.5,
1,
0.5
],
"ellipsoidOffset": [
0,
0,
0
],
"doNotSyncBoundingInfo": false,
"isBlocker": false,
"sideOrientation": 1,
"isUnIndexed": false,
"geometryUniqueId": 1764787809875,
"geometryId": "76c7442d-fb7e-4a05-b1c5-9c27b0beb0dc",
"subMeshes": null,
"materialId": "default material",
"metadata": {
"type": "Box",
"width": 100,
"depth": 100,
"height": 100,
"sideOrientation": 0
},
"instances": [],
"animations": [],
"ranges": [],
"layerMask": 268435455,
"alphaIndex": 1.7976931348623157e+308,
"hasVertexAlpha": false,
"overlayAlpha": 1,
"overlayColor": [
0,
0,
0
],
"applyFog": true,
"delayLoadingFile": "assets/example.scene/geometries/76c7442d-fb7e-4a05-b1c5-9c27b0beb0dc.babylonbinarymeshdata",
"boundingBoxMaximum": [
50,
50,
50
],
"boundingBoxMinimum": [
-50,
-50,
-50
],
"_binaryInfo": {
"positionsAttrDesc": {
"count": 72,
"stride": 3,
"offset": 0,
"dataType": 1
},
"normalsAttrDesc": {
"count": 72,
"stride": 3,
"offset": 288,
"dataType": 1
},
"uvsAttrDesc": {
"count": 48,
"stride": 2,
"offset": 576,
"dataType": 1
},
"indicesAttrDesc": {
"count": 36,
"stride": 1,
"offset": 768,
"dataType": 0
},
"subMeshesAttrDesc": {
"count": 1,
"stride": 5,
"offset": 912,
"dataType": 0
}
},
"positions": null,
"normals": null,
"uvs": null,
"hasUVs": true,
"indices": null
}
],
"transformNodes": [],
"cameras": [],
"lights": [],
"materials": [],
"geometries": {
"boxes": [],
"spheres": [],
"cylinders": [],
"toruses": [],
"grounds": [],
"planes": [],
"torusKnots": [],
"vertexData": []
},
"metadata": {
"type": "Box",
"width": 100,
"depth": 100,
"height": 100,
"sideOrientation": 0
},
"basePoseMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
]
}

View File

@ -0,0 +1,428 @@
{
"meshes": [
{
"name": "BaseLandingZone",
"id": "2a185a78-d743-4a8f-b9a8-cf95f60f0ae0",
"uniqueId": 1764786749145,
"type": "Mesh",
"position": [
0,
6.372689247131348,
0
],
"rotationQuaternion": [
0,
0,
0,
1
],
"scaling": [
28.34206199645996,
28.34206199645996,
28.34206199645996
],
"localMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
],
"isEnabled": true,
"isVisible": true,
"infiniteDistance": false,
"pickable": true,
"receiveShadows": true,
"billboardMode": 0,
"visibility": 1,
"alwaysSelectAsActiveMesh": false,
"checkCollisions": false,
"ellipsoid": [
0.5,
1,
0.5
],
"ellipsoidOffset": [
0,
0,
0
],
"doNotSyncBoundingInfo": false,
"isBlocker": false,
"sideOrientation": 0,
"isUnIndexed": false,
"geometryUniqueId": 1764786749148,
"geometryId": "0d955d0c-93e1-4875-884d-db636576f51e",
"subMeshes": null,
"materialUniqueId": 1764786749149,
"materialId": "5bc1e4e2-2fa5-4c81-a3de-93e55ae0919e",
"metadata": {
"parentId": 1764786749143
},
"instances": [],
"animations": [],
"ranges": [],
"layerMask": 268435455,
"alphaIndex": 1.7976931348623157e+308,
"hasVertexAlpha": false,
"overlayAlpha": 0,
"overlayColor": [
0,
0,
0
],
"renderOverlay": false,
"applyFog": true,
"delayLoadingFile": "assets/example.scene/geometries/0d955d0c-93e1-4875-884d-db636576f51e.babylonbinarymeshdata",
"boundingBoxMaximum": [
0.9807851314544678,
0.3284308910369873,
0.9807849526405334
],
"boundingBoxMinimum": [
-0.9807848334312439,
-0.4938357472419739,
-0.9807852506637573
],
"_binaryInfo": {
"positionsAttrDesc": {
"count": 2688,
"stride": 3,
"offset": 0,
"dataType": 1
},
"normalsAttrDesc": {
"count": 2688,
"stride": 3,
"offset": 10752,
"dataType": 1
},
"uvsAttrDesc": {
"count": 1792,
"stride": 2,
"offset": 21504,
"dataType": 1
},
"indicesAttrDesc": {
"count": 1338,
"stride": 1,
"offset": 28672,
"dataType": 0
},
"subMeshesAttrDesc": {
"count": 1,
"stride": 5,
"offset": 34024,
"dataType": 0
}
},
"positions": null,
"normals": null,
"uvs": null,
"hasUVs": true,
"indices": null
}
],
"transformNodes": [],
"cameras": [],
"lights": [],
"materials": [
{
"tags": null,
"directIntensity": 1,
"emissiveIntensity": 1,
"environmentIntensity": 1,
"specularIntensity": 1,
"disableBumpMap": false,
"ambientTextureStrength": 1,
"ambientTextureImpactOnAnalyticalLights": 0,
"metallic": 0,
"roughness": 0.5,
"metallicF0Factor": 1,
"metallicReflectanceColor": [
1,
1,
1
],
"useOnlyMetallicFromMetallicReflectanceTexture": false,
"ambient": [
0,
0,
0
],
"albedo": [
0.0724073052406311,
0.8001724481582642,
0.08219180256128311
],
"baseWeight": 1,
"reflectivity": [
1,
1,
1
],
"reflection": [
1,
1,
1
],
"emissive": [
0.003482822866271551,
0.09999999403953552,
0.003765808193933462
],
"microSurface": 1,
"useLightmapAsShadowmap": false,
"useAlphaFromAlbedoTexture": false,
"forceAlphaTest": false,
"alphaCutOff": 0.4,
"useSpecularOverAlpha": true,
"useMicroSurfaceFromReflectivityMapAlpha": false,
"useRoughnessFromMetallicTextureAlpha": true,
"useRoughnessFromMetallicTextureGreen": false,
"useMetallnessFromMetallicTextureBlue": false,
"useAmbientOcclusionFromMetallicTextureRed": false,
"useAmbientInGrayScale": false,
"useAutoMicroSurfaceFromReflectivityMap": false,
"usePhysicalLightFalloff": true,
"useGLTFLightFalloff": false,
"useRadianceOverAlpha": true,
"useObjectSpaceNormalMap": false,
"useParallax": false,
"useParallaxOcclusion": false,
"parallaxScaleBias": 0.05,
"disableLighting": false,
"forceIrradianceInFragment": false,
"maxSimultaneousLights": 32,
"invertNormalMapX": false,
"invertNormalMapY": false,
"twoSidedLighting": true,
"useAlphaFresnel": false,
"useLinearAlphaFresnel": false,
"forceNormalForward": false,
"enableSpecularAntiAliasing": true,
"useHorizonOcclusion": true,
"useRadianceOcclusion": true,
"unlit": false,
"applyDecalMapAfterDetailMap": false,
"id": "5bc1e4e2-2fa5-4c81-a3de-93e55ae0919e",
"name": "Material",
"metadata": {},
"checkReadyOnEveryCall": false,
"checkReadyOnlyOnce": false,
"state": "",
"alpha": 0.2634408473968506,
"backFaceCulling": false,
"cullBackFaces": true,
"_alphaMode": [
2
],
"_needDepthPrePass": false,
"disableDepthWrite": false,
"disableColorWrite": false,
"forceDepthWrite": false,
"depthFunction": 0,
"separateCullingPass": false,
"fogEnabled": true,
"pointSize": 1,
"zOffset": 0,
"zOffsetUnits": 0,
"pointsCloud": false,
"fillMode": 0,
"_isVertexOutputInvariant": false,
"transparencyMode": 2,
"stencil": {
"tags": null,
"func": 519,
"backFunc": 519,
"funcRef": 1,
"funcMask": 255,
"opStencilFail": 7680,
"opDepthFail": 7680,
"opStencilDepthPass": 7681,
"backOpStencilFail": 7680,
"backOpDepthFail": 7680,
"backOpStencilDepthPass": 7681,
"mask": 255,
"enabled": false
},
"uniqueId": 1764786749149,
"plugins": {
"PBRBRDFConfiguration": {
"tags": null,
"useEnergyConservation": true,
"useSmithVisibilityHeightCorrelated": true,
"useSphericalHarmonics": true,
"useSpecularGlossinessInputEnergyConservation": true,
"mixIblRadianceWithIrradiance": true,
"useLegacySpecularEnergyConservation": true,
"baseDiffuseModel": 0,
"dielectricSpecularModel": 0,
"conductorSpecularModel": 0,
"name": "PBRBRDF",
"priority": 90,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRClearCoatConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"roughness": 0,
"indexOfRefraction": 1.5,
"useRoughnessFromMainTexture": true,
"remapF0OnInterfaceChange": true,
"isTintEnabled": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"tintThickness": 1,
"name": "PBRClearCoat",
"priority": 100,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRIridescenceConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"minimumThickness": 100,
"maximumThickness": 400,
"indexOfRefraction": 1.3,
"name": "PBRIridescence",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRAnisotropicConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"direction": [
1,
0
],
"legacy": false,
"name": "PBRAnisotropic",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSheenConfiguration": {
"tags": null,
"isEnabled": false,
"linkSheenWithAlbedo": false,
"intensity": 1,
"color": [
1,
1,
1
],
"useRoughnessFromMainTexture": true,
"albedoScaling": false,
"name": "Sheen",
"priority": 120,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSubSurfaceConfiguration": {
"tags": null,
"isRefractionEnabled": false,
"isTranslucencyEnabled": false,
"isDispersionEnabled": false,
"isScatteringEnabled": false,
"_scatteringDiffusionProfileIndex": 0,
"refractionIntensity": 1,
"translucencyIntensity": 1,
"useAlbedoToTintRefraction": false,
"useAlbedoToTintTranslucency": false,
"indexOfRefraction": 1.5,
"_volumeIndexOfRefraction": -1,
"invertRefractionY": false,
"linkRefractionWithTransparency": false,
"minimumThickness": 0,
"maximumThickness": 1,
"useThicknessAsDepth": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"dispersion": 0,
"diffusionDistance": [
1,
1,
1
],
"useMaskFromThicknessTexture": false,
"useGltfStyleTextures": true,
"applyAlbedoAfterSubSurface": false,
"legacyTranslucency": false,
"name": "PBRSubSurface",
"priority": 130,
"resolveIncludes": false,
"registerForExtraEvents": true
},
"DetailMapConfiguration": {
"tags": null,
"diffuseBlendLevel": 1,
"roughnessBlendLevel": 1,
"bumpLevel": 1,
"normalBlendMethod": 0,
"isEnabled": false,
"name": "DetailMap",
"priority": 140,
"resolveIncludes": false,
"registerForExtraEvents": false
}
},
"customType": "BABYLON.PBRMaterial"
}
],
"geometries": {
"boxes": [],
"spheres": [],
"cylinders": [],
"toruses": [],
"grounds": [],
"planes": [],
"torusKnots": [],
"vertexData": []
},
"metadata": {
"parentId": 1764786749143
},
"basePoseMatrix": [
-0.03528324792052547,
0,
0,
0,
0,
0.03528324792052547,
0,
0,
0,
0,
0.03528324792052547,
0,
0,
-0.22484917462700213,
0,
0.9999999999999999
]
}

View File

@ -0,0 +1,733 @@
{
"meshes": [
{
"name": "Asteroid",
"id": "790b6a71-5425-47f2-ae64-f2d04e2e3c6d",
"uniqueId": 1764789858422,
"type": "Mesh",
"position": [
-33.08901451261646,
40.81207511231127,
-108.3875380136813
],
"rotationQuaternion": [
0,
0,
0,
1
],
"scaling": [
5,
5,
5
],
"localMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
],
"isEnabled": true,
"isVisible": true,
"infiniteDistance": false,
"pickable": true,
"receiveShadows": true,
"billboardMode": 0,
"visibility": 1,
"alwaysSelectAsActiveMesh": false,
"checkCollisions": false,
"ellipsoid": [
0.5,
1,
0.5
],
"ellipsoidOffset": [
0,
0,
0
],
"doNotSyncBoundingInfo": false,
"isBlocker": false,
"sideOrientation": 0,
"isUnIndexed": false,
"geometryUniqueId": 1764789858423,
"geometryId": "9092e1b8-d64b-409a-9067-1f9373f47df3",
"subMeshes": null,
"materialUniqueId": 1764789858424,
"materialId": "81400b58-6fbe-4364-8c25-b5a03c536f05",
"metadata": {
"scripts": [
{
"enabled": true,
"key": "scripts/editorScripts/AsteroidComponent.ts",
"values": {
"linearVelocity": {
"type": "vector3",
"value": [
0,
0,
-30
]
},
"angularVelocity": {
"type": "vector3",
"value": [
0,
0,
0
]
},
"mass": {
"type": "number",
"value": 1
},
"targetId": {
"type": "string",
"description": "Reference to a TargetComponent node",
"value": ""
},
"targetMode": {
"type": "string",
"description": "orbit | moveToward | (empty)",
"value": ""
}
},
"_id": "750ffa11-d797-43f4-a63b-0e1592a4f6af"
}
],
"parentId": 1764789858421
},
"instances": [
{
"name": "Asteroid",
"id": "Asteroid",
"isEnabled": true,
"isVisible": true,
"isPickable": true,
"checkCollisions": false,
"position": [
66.2149304569587,
40.81207511231127,
-126.79009642287176
],
"scaling": [
5,
5,
5
],
"rotationQuaternion": [
0,
0,
0,
1
],
"metadata": {
"scripts": [
{
"key": "scripts/editorScripts/AsteroidComponent.ts",
"enabled": true,
"values": {
"linearVelocity": {
"type": "vector3",
"value": [
2,
0,
0
]
},
"angularVelocity": {
"type": "vector3",
"value": [
0,
0,
0
]
},
"mass": {
"type": "number",
"value": 1
},
"targetId": {
"type": "string",
"description": "Reference to a TargetComponent node",
"value": ""
},
"targetMode": {
"type": "string",
"description": "orbit | moveToward | (empty)",
"value": ""
}
},
"_id": "74563a74-be80-46fe-8dc3-189b03247c20"
}
],
"parentId": 1764789858421
},
"animations": [],
"ranges": [],
"uniqueId": 71
},
{
"name": "Asteroid",
"id": "Asteroid",
"isEnabled": true,
"isVisible": true,
"isPickable": true,
"checkCollisions": false,
"position": [
0,
-22.646529278627046,
-74.97825372352042
],
"scaling": [
5,
5,
5
],
"rotationQuaternion": [
0,
0,
0,
1
],
"metadata": {
"scripts": [
{
"key": "scripts/editorScripts/AsteroidComponent.ts",
"enabled": true,
"values": {
"linearVelocity": {
"type": "vector3",
"value": [
0,
0,
-2
]
},
"angularVelocity": {
"type": "vector3",
"value": [
0,
0,
0
]
},
"mass": {
"type": "number",
"value": 1
},
"targetId": {
"type": "string",
"description": "Reference to a TargetComponent node",
"value": ""
},
"targetMode": {
"type": "string",
"description": "orbit | moveToward | (empty)",
"value": ""
}
},
"_id": "79ae3cbb-7653-409c-9d0a-3e0b254e6731"
}
],
"parentId": 1764789858421
},
"animations": [],
"ranges": [],
"uniqueId": 71
}
],
"animations": [],
"ranges": [],
"layerMask": 268435455,
"alphaIndex": 1.7976931348623157e+308,
"hasVertexAlpha": false,
"overlayAlpha": 0,
"overlayColor": [
0,
0,
0
],
"renderOverlay": false,
"applyFog": true,
"delayLoadingFile": "assets/example.scene/geometries/9092e1b8-d64b-409a-9067-1f9373f47df3.babylonbinarymeshdata",
"boundingBoxMaximum": [
2.8008618354797363,
2.679150342941284,
2.679150104522705
],
"boundingBoxMinimum": [
-2.054845094680786,
-2.679150342941284,
-2.679150104522705
],
"_binaryInfo": {
"positionsAttrDesc": {
"count": 912,
"stride": 3,
"offset": 0,
"dataType": 1
},
"normalsAttrDesc": {
"count": 912,
"stride": 3,
"offset": 3648,
"dataType": 1
},
"uvsAttrDesc": {
"count": 608,
"stride": 2,
"offset": 7296,
"dataType": 1
},
"indicesAttrDesc": {
"count": 342,
"stride": 1,
"offset": 9728,
"dataType": 0
},
"subMeshesAttrDesc": {
"count": 1,
"stride": 5,
"offset": 11096,
"dataType": 0
}
},
"positions": null,
"normals": null,
"uvs": null,
"hasUVs": true,
"indices": null
}
],
"transformNodes": [],
"cameras": [],
"lights": [],
"materials": [
{
"tags": null,
"directIntensity": 1,
"emissiveIntensity": 1,
"environmentIntensity": 1,
"specularIntensity": 1,
"disableBumpMap": false,
"albedoTexture": {
"tags": null,
"url": "assets/editor-generated_aed030862c8a5064c80262817ba13a70.jpg",
"uOffset": 0,
"vOffset": 0,
"uScale": 1,
"vScale": -1,
"uAng": 0,
"vAng": 0,
"wAng": 0,
"uRotationCenter": 0.5,
"vRotationCenter": 0.5,
"wRotationCenter": 0.5,
"homogeneousRotationInUVTransform": false,
"isBlocking": true,
"name": "assets/editor-generated_aed030862c8a5064c80262817ba13a70.jpg",
"metadata": {},
"hasAlpha": false,
"getAlphaFromRGB": false,
"level": 1,
"coordinatesIndex": 0,
"optimizeUVAllocation": true,
"coordinatesMode": 0,
"wrapU": 1,
"wrapV": 1,
"wrapR": 1,
"anisotropicFilteringLevel": 4,
"isCube": false,
"is3D": false,
"is2DArray": false,
"gammaSpace": false,
"invertZ": false,
"lodLevelInAlpha": false,
"lodGenerationOffset": 0,
"lodGenerationScale": 0,
"linearSpecularLOD": false,
"isRenderTarget": false,
"animations": [],
"invertY": true,
"samplingMode": 3,
"_useSRGBBuffer": false,
"internalTextureLabel": "/Users/michaelmainguy/WebstormProjects/space-game/gameEditor",
"noMipmap": false
},
"ambientTextureStrength": 1,
"ambientTextureImpactOnAnalyticalLights": 0,
"emissiveTexture": {
"tags": null,
"url": "assets/editor-generated_aed030862c8a5064c80262817ba13a70.jpg",
"uOffset": 0,
"vOffset": 0,
"uScale": 1,
"vScale": -1,
"uAng": 0,
"vAng": 0,
"wAng": 0,
"uRotationCenter": 0.5,
"vRotationCenter": 0.5,
"wRotationCenter": 0.5,
"homogeneousRotationInUVTransform": false,
"isBlocking": true,
"name": "assets/editor-generated_aed030862c8a5064c80262817ba13a70.jpg",
"metadata": {},
"hasAlpha": false,
"getAlphaFromRGB": false,
"level": 1,
"coordinatesIndex": 0,
"optimizeUVAllocation": true,
"coordinatesMode": 0,
"wrapU": 1,
"wrapV": 1,
"wrapR": 1,
"anisotropicFilteringLevel": 4,
"isCube": false,
"is3D": false,
"is2DArray": false,
"gammaSpace": false,
"invertZ": false,
"lodLevelInAlpha": false,
"lodGenerationOffset": 0,
"lodGenerationScale": 0,
"linearSpecularLOD": false,
"isRenderTarget": false,
"animations": [],
"invertY": true,
"samplingMode": 3,
"_useSRGBBuffer": false,
"internalTextureLabel": "/Users/michaelmainguy/WebstormProjects/space-game/gameEditor",
"noMipmap": false
},
"metallic": 0,
"roughness": 1,
"metallicF0Factor": 0,
"metallicReflectanceColor": [
0.23755916953086853,
0.23755916953086853,
0.23755916953086853
],
"useOnlyMetallicFromMetallicReflectanceTexture": false,
"ambient": [
0,
0,
0
],
"albedo": [
1,
1,
1
],
"baseWeight": 1,
"reflectivity": [
1,
1,
1
],
"reflection": [
1,
1,
1
],
"emissive": [
0.3999999761581421,
0.3999999761581421,
0.3999999761581421
],
"microSurface": 1,
"useLightmapAsShadowmap": false,
"useAlphaFromAlbedoTexture": false,
"forceAlphaTest": false,
"alphaCutOff": 0.4,
"useSpecularOverAlpha": true,
"useMicroSurfaceFromReflectivityMapAlpha": false,
"useRoughnessFromMetallicTextureAlpha": true,
"useRoughnessFromMetallicTextureGreen": false,
"useMetallnessFromMetallicTextureBlue": false,
"useAmbientOcclusionFromMetallicTextureRed": false,
"useAmbientInGrayScale": false,
"useAutoMicroSurfaceFromReflectivityMap": false,
"usePhysicalLightFalloff": true,
"useGLTFLightFalloff": false,
"useRadianceOverAlpha": true,
"useObjectSpaceNormalMap": false,
"useParallax": false,
"useParallaxOcclusion": false,
"parallaxScaleBias": 0.05,
"disableLighting": false,
"forceIrradianceInFragment": false,
"maxSimultaneousLights": 32,
"invertNormalMapX": false,
"invertNormalMapY": false,
"twoSidedLighting": true,
"useAlphaFresnel": false,
"useLinearAlphaFresnel": false,
"forceNormalForward": false,
"enableSpecularAntiAliasing": true,
"useHorizonOcclusion": true,
"useRadianceOcclusion": true,
"unlit": false,
"applyDecalMapAfterDetailMap": false,
"id": "81400b58-6fbe-4364-8c25-b5a03c536f05",
"name": "Material.001",
"metadata": {},
"checkReadyOnEveryCall": false,
"checkReadyOnlyOnce": false,
"state": "",
"alpha": 1,
"backFaceCulling": false,
"cullBackFaces": true,
"_alphaMode": [
2
],
"_needDepthPrePass": false,
"disableDepthWrite": false,
"disableColorWrite": false,
"forceDepthWrite": false,
"depthFunction": 0,
"separateCullingPass": false,
"fogEnabled": true,
"pointSize": 1,
"zOffset": 0,
"zOffsetUnits": 0,
"pointsCloud": false,
"fillMode": 0,
"_isVertexOutputInvariant": false,
"transparencyMode": 0,
"stencil": {
"tags": null,
"func": 519,
"backFunc": 519,
"funcRef": 1,
"funcMask": 255,
"opStencilFail": 7680,
"opDepthFail": 7680,
"opStencilDepthPass": 7681,
"backOpStencilFail": 7680,
"backOpDepthFail": 7680,
"backOpStencilDepthPass": 7681,
"mask": 255,
"enabled": false
},
"uniqueId": 1764789858424,
"plugins": {
"PBRBRDFConfiguration": {
"tags": null,
"useEnergyConservation": true,
"useSmithVisibilityHeightCorrelated": true,
"useSphericalHarmonics": true,
"useSpecularGlossinessInputEnergyConservation": true,
"mixIblRadianceWithIrradiance": true,
"useLegacySpecularEnergyConservation": true,
"baseDiffuseModel": 0,
"dielectricSpecularModel": 0,
"conductorSpecularModel": 0,
"name": "PBRBRDF",
"priority": 90,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRClearCoatConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"roughness": 0,
"indexOfRefraction": 1.5,
"useRoughnessFromMainTexture": true,
"remapF0OnInterfaceChange": true,
"isTintEnabled": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"tintThickness": 1,
"name": "PBRClearCoat",
"priority": 100,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRIridescenceConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"minimumThickness": 100,
"maximumThickness": 400,
"indexOfRefraction": 1.3,
"name": "PBRIridescence",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRAnisotropicConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"direction": [
1,
0
],
"legacy": false,
"name": "PBRAnisotropic",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSheenConfiguration": {
"tags": null,
"isEnabled": false,
"linkSheenWithAlbedo": false,
"intensity": 1,
"color": [
1,
1,
1
],
"useRoughnessFromMainTexture": true,
"albedoScaling": false,
"name": "Sheen",
"priority": 120,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSubSurfaceConfiguration": {
"tags": null,
"isRefractionEnabled": false,
"isTranslucencyEnabled": false,
"isDispersionEnabled": false,
"isScatteringEnabled": false,
"_scatteringDiffusionProfileIndex": 0,
"refractionIntensity": 1,
"translucencyIntensity": 1,
"useAlbedoToTintRefraction": false,
"useAlbedoToTintTranslucency": false,
"indexOfRefraction": 1.5,
"_volumeIndexOfRefraction": -1,
"invertRefractionY": false,
"linkRefractionWithTransparency": false,
"minimumThickness": 0,
"maximumThickness": 1,
"useThicknessAsDepth": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"dispersion": 0,
"diffusionDistance": [
1,
1,
1
],
"useMaskFromThicknessTexture": false,
"useGltfStyleTextures": true,
"applyAlbedoAfterSubSurface": false,
"legacyTranslucency": false,
"name": "PBRSubSurface",
"priority": 130,
"resolveIncludes": false,
"registerForExtraEvents": true
},
"DetailMapConfiguration": {
"tags": null,
"diffuseBlendLevel": 1,
"roughnessBlendLevel": 1,
"bumpLevel": 1,
"normalBlendMethod": 0,
"isEnabled": false,
"name": "DetailMap",
"priority": 140,
"resolveIncludes": false,
"registerForExtraEvents": false
}
},
"customType": "BABYLON.PBRMaterial"
}
],
"geometries": {
"boxes": [],
"spheres": [],
"cylinders": [],
"toruses": [],
"grounds": [],
"planes": [],
"torusKnots": [],
"vertexData": []
},
"metadata": {
"scripts": [
{
"enabled": true,
"key": "scripts/editorScripts/AsteroidComponent.ts",
"values": {
"linearVelocity": {
"type": "vector3",
"value": [
0,
0,
-30
]
},
"angularVelocity": {
"type": "vector3",
"value": [
0,
0,
0
]
},
"mass": {
"type": "number",
"value": 1
},
"targetId": {
"type": "string",
"description": "Reference to a TargetComponent node",
"value": ""
},
"targetMode": {
"type": "string",
"description": "orbit | moveToward | (empty)",
"value": ""
}
},
"_id": "750ffa11-d797-43f4-a63b-0e1592a4f6af"
}
],
"parentId": 1764789858421
},
"basePoseMatrix": [
-1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
]
}

View File

@ -0,0 +1,426 @@
{
"meshes": [
{
"name": "Ship_primitive1",
"id": "b633ecf7-2331-4ebd-b586-3852eff6c50f",
"uniqueId": 1764787012174,
"type": "Mesh",
"position": [
0,
0,
0
],
"rotation": [
0,
0,
0
],
"scaling": [
1,
1,
1
],
"localMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
],
"isEnabled": true,
"isVisible": true,
"infiniteDistance": false,
"pickable": true,
"receiveShadows": true,
"billboardMode": 0,
"visibility": 1,
"alwaysSelectAsActiveMesh": false,
"checkCollisions": false,
"ellipsoid": [
0.5,
1,
0.5
],
"ellipsoidOffset": [
0,
0,
0
],
"doNotSyncBoundingInfo": false,
"isBlocker": false,
"sideOrientation": 0,
"isUnIndexed": false,
"geometryUniqueId": 1764787012180,
"geometryId": "7a537688-5920-4808-9d7b-d63e83375f90",
"subMeshes": null,
"materialUniqueId": 1764787012181,
"materialId": "436eb7a0-ac6c-472d-b6fe-0d986a8af5c7",
"metadata": {
"parentId": 1764787012177
},
"instances": [],
"animations": [],
"ranges": [],
"layerMask": 268435455,
"alphaIndex": 1.7976931348623157e+308,
"hasVertexAlpha": false,
"overlayAlpha": 1,
"overlayColor": [
0,
0,
0
],
"applyFog": true,
"delayLoadingFile": "assets/example.scene/geometries/7a537688-5920-4808-9d7b-d63e83375f90.babylonbinarymeshdata",
"boundingBoxMaximum": [
1.5084391832351685,
2.162097454071045,
5.122784614562988
],
"boundingBoxMinimum": [
-1.5084391832351685,
-1.0288662910461426,
-2.6966497898101807
],
"_binaryInfo": {
"positionsAttrDesc": {
"count": 420,
"stride": 3,
"offset": 0,
"dataType": 1
},
"normalsAttrDesc": {
"count": 420,
"stride": 3,
"offset": 1680,
"dataType": 1
},
"uvsAttrDesc": {
"count": 280,
"stride": 2,
"offset": 3360,
"dataType": 1
},
"indicesAttrDesc": {
"count": 192,
"stride": 1,
"offset": 4480,
"dataType": 0
},
"subMeshesAttrDesc": {
"count": 1,
"stride": 5,
"offset": 5248,
"dataType": 0
}
},
"positions": null,
"normals": null,
"uvs": null,
"hasUVs": true,
"indices": null
}
],
"transformNodes": [],
"cameras": [],
"lights": [],
"materials": [
{
"tags": null,
"directIntensity": 1,
"emissiveIntensity": 1,
"environmentIntensity": 1,
"specularIntensity": 1,
"disableBumpMap": false,
"ambientTextureStrength": 1,
"ambientTextureImpactOnAnalyticalLights": 0,
"metallic": 0,
"roughness": 0.059139788150787354,
"metallicF0Factor": 0,
"metallicReflectanceColor": [
1,
1,
1
],
"useOnlyMetallicFromMetallicReflectanceTexture": false,
"ambient": [
0,
0,
0
],
"albedo": [
0.800133466720581,
0.69917231798172,
0.16859057545661926
],
"baseWeight": 1,
"reflectivity": [
1,
1,
1
],
"reflection": [
1,
1,
1
],
"emissive": [
0,
0,
0
],
"microSurface": 1,
"useLightmapAsShadowmap": false,
"useAlphaFromAlbedoTexture": false,
"forceAlphaTest": false,
"alphaCutOff": 0.4,
"useSpecularOverAlpha": true,
"useMicroSurfaceFromReflectivityMapAlpha": false,
"useRoughnessFromMetallicTextureAlpha": true,
"useRoughnessFromMetallicTextureGreen": false,
"useMetallnessFromMetallicTextureBlue": false,
"useAmbientOcclusionFromMetallicTextureRed": false,
"useAmbientInGrayScale": false,
"useAutoMicroSurfaceFromReflectivityMap": false,
"usePhysicalLightFalloff": true,
"useGLTFLightFalloff": false,
"useRadianceOverAlpha": true,
"useObjectSpaceNormalMap": false,
"useParallax": false,
"useParallaxOcclusion": false,
"parallaxScaleBias": 0.05,
"disableLighting": false,
"forceIrradianceInFragment": false,
"maxSimultaneousLights": 32,
"invertNormalMapX": false,
"invertNormalMapY": false,
"twoSidedLighting": true,
"useAlphaFresnel": false,
"useLinearAlphaFresnel": false,
"forceNormalForward": false,
"enableSpecularAntiAliasing": true,
"useHorizonOcclusion": true,
"useRadianceOcclusion": true,
"unlit": false,
"applyDecalMapAfterDetailMap": false,
"id": "436eb7a0-ac6c-472d-b6fe-0d986a8af5c7",
"name": "ShipWindow",
"metadata": {},
"checkReadyOnEveryCall": false,
"checkReadyOnlyOnce": false,
"state": "",
"alpha": 0.1505376398563385,
"backFaceCulling": false,
"cullBackFaces": true,
"_alphaMode": [
2
],
"_needDepthPrePass": false,
"disableDepthWrite": false,
"disableColorWrite": false,
"forceDepthWrite": false,
"depthFunction": 0,
"separateCullingPass": false,
"fogEnabled": true,
"pointSize": 1,
"zOffset": 0,
"zOffsetUnits": 0,
"pointsCloud": false,
"fillMode": 0,
"_isVertexOutputInvariant": false,
"transparencyMode": 2,
"stencil": {
"tags": null,
"func": 519,
"backFunc": 519,
"funcRef": 1,
"funcMask": 255,
"opStencilFail": 7680,
"opDepthFail": 7680,
"opStencilDepthPass": 7681,
"backOpStencilFail": 7680,
"backOpDepthFail": 7680,
"backOpStencilDepthPass": 7681,
"mask": 255,
"enabled": false
},
"uniqueId": 1764787012181,
"plugins": {
"PBRBRDFConfiguration": {
"tags": null,
"useEnergyConservation": true,
"useSmithVisibilityHeightCorrelated": true,
"useSphericalHarmonics": true,
"useSpecularGlossinessInputEnergyConservation": true,
"mixIblRadianceWithIrradiance": true,
"useLegacySpecularEnergyConservation": true,
"baseDiffuseModel": 0,
"dielectricSpecularModel": 0,
"conductorSpecularModel": 0,
"name": "PBRBRDF",
"priority": 90,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRClearCoatConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"roughness": 0,
"indexOfRefraction": 1.5,
"useRoughnessFromMainTexture": true,
"remapF0OnInterfaceChange": true,
"isTintEnabled": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"tintThickness": 1,
"name": "PBRClearCoat",
"priority": 100,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRIridescenceConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"minimumThickness": 100,
"maximumThickness": 400,
"indexOfRefraction": 1.3,
"name": "PBRIridescence",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRAnisotropicConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"direction": [
1,
0
],
"legacy": false,
"name": "PBRAnisotropic",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSheenConfiguration": {
"tags": null,
"isEnabled": false,
"linkSheenWithAlbedo": false,
"intensity": 1,
"color": [
1,
1,
1
],
"useRoughnessFromMainTexture": true,
"albedoScaling": false,
"name": "Sheen",
"priority": 120,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSubSurfaceConfiguration": {
"tags": null,
"isRefractionEnabled": false,
"isTranslucencyEnabled": false,
"isDispersionEnabled": false,
"isScatteringEnabled": false,
"_scatteringDiffusionProfileIndex": 0,
"refractionIntensity": 1,
"translucencyIntensity": 1,
"useAlbedoToTintRefraction": false,
"useAlbedoToTintTranslucency": false,
"indexOfRefraction": 1.5,
"_volumeIndexOfRefraction": -1,
"invertRefractionY": false,
"linkRefractionWithTransparency": false,
"minimumThickness": 0,
"maximumThickness": 1,
"useThicknessAsDepth": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"dispersion": 0,
"diffusionDistance": [
1,
1,
1
],
"useMaskFromThicknessTexture": false,
"useGltfStyleTextures": true,
"applyAlbedoAfterSubSurface": false,
"legacyTranslucency": false,
"name": "PBRSubSurface",
"priority": 130,
"resolveIncludes": false,
"registerForExtraEvents": true
},
"DetailMapConfiguration": {
"tags": null,
"diffuseBlendLevel": 1,
"roughnessBlendLevel": 1,
"bumpLevel": 1,
"normalBlendMethod": 0,
"isEnabled": false,
"name": "DetailMap",
"priority": 140,
"resolveIncludes": false,
"registerForExtraEvents": false
}
},
"customType": "BABYLON.PBRMaterial"
}
],
"geometries": {
"boxes": [],
"spheres": [],
"cylinders": [],
"toruses": [],
"grounds": [],
"planes": [],
"torusKnots": [],
"vertexData": []
},
"metadata": {
"parentId": 1764787012177
},
"basePoseMatrix": [
1.6247152644956515,
0,
4.08643597401238e-7,
0,
0,
1.4727547823314542,
0,
0,
5.293994474577842e-7,
0,
-1.2541182156960042,
0,
0,
-0.9408809412868501,
0,
1
]
}

View File

@ -0,0 +1,156 @@
{
"meshes": [
{
"name": "ship.glb",
"id": "bf9cd6cd-3743-4b89-9c33-e7b12cc3eb3d",
"uniqueId": 1764787012172,
"type": "Mesh",
"position": [
0,
2,
0
],
"rotation": [
0,
3.1129212205596573,
0
],
"scaling": [
100.00000000000159,
-100,
100.00000000000159
],
"localMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
],
"isEnabled": true,
"isVisible": true,
"infiniteDistance": false,
"pickable": true,
"receiveShadows": true,
"billboardMode": 0,
"visibility": 1,
"alwaysSelectAsActiveMesh": false,
"checkCollisions": false,
"ellipsoid": [
0.5,
1,
0.5
],
"ellipsoidOffset": [
0,
0,
0
],
"doNotSyncBoundingInfo": false,
"isBlocker": false,
"sideOrientation": 1,
"isUnIndexed": false,
"materialId": "default material",
"metadata": {
"scripts": [
{
"enabled": true,
"key": "scripts/editorScripts/ShipComponent.ts",
"values": {
"linearVelocity": {
"type": "vector3",
"value": [
0,
0,
0
]
},
"angularVelocity": {
"type": "vector3",
"value": [
0,
0,
0
]
}
},
"_id": "fa6b5e6d-29c3-4159-9248-cab250039a6e"
}
]
},
"instances": [],
"animations": [],
"ranges": [],
"layerMask": 268435455,
"alphaIndex": 1.7976931348623157e+308,
"hasVertexAlpha": false,
"overlayAlpha": 1,
"overlayColor": [
0,
0,
0
],
"applyFog": true
}
],
"transformNodes": [],
"cameras": [],
"lights": [],
"materials": [],
"metadata": {
"scripts": [
{
"enabled": true,
"key": "scripts/editorScripts/ShipComponent.ts",
"values": {
"linearVelocity": {
"type": "vector3",
"value": [
0,
0,
0
]
},
"angularVelocity": {
"type": "vector3",
"value": [
0,
0,
0
]
}
},
"_id": "fa6b5e6d-29c3-4159-9248-cab250039a6e"
}
]
},
"basePoseMatrix": [
-1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
]
}

View File

@ -0,0 +1,247 @@
{
"meshes": [
{
"name": "base.glb",
"id": "c7b3d00d-20da-4560-8611-f3186ffda0f0",
"uniqueId": 1764786749143,
"type": "Mesh",
"position": [
0,
0,
0
],
"rotationQuaternion": [
0,
1,
0,
0
],
"scaling": [
100,
100,
-100
],
"localMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
],
"isEnabled": true,
"isVisible": true,
"infiniteDistance": false,
"pickable": true,
"receiveShadows": true,
"billboardMode": 0,
"visibility": 1,
"alwaysSelectAsActiveMesh": false,
"checkCollisions": false,
"ellipsoid": [
0.5,
1,
0.5
],
"ellipsoidOffset": [
0,
0,
0
],
"doNotSyncBoundingInfo": false,
"isBlocker": false,
"sideOrientation": 1,
"isUnIndexed": false,
"materialUniqueId": 46,
"materialId": "default material",
"metadata": {
"scripts": [
{
"enabled": true,
"key": "scripts/editorScripts/BaseComponent.ts",
"values": {
"baseGlbPath": {
"type": "string",
"description": "Path to base GLB model",
"value": ""
},
"landingGlbPath": {
"type": "string",
"description": "Path to landing zone GLB",
"value": ""
}
},
"_id": "7741fd66-a746-4f78-a7fd-5f8f404b610c"
}
]
},
"instances": [],
"animations": [],
"ranges": [],
"layerMask": 268435455,
"alphaIndex": 1.7976931348623157e+308,
"hasVertexAlpha": false,
"overlayAlpha": 1,
"overlayColor": [
0,
0,
0
],
"applyFog": true
}
],
"transformNodes": [],
"cameras": [],
"lights": [],
"materials": [
{
"tags": null,
"ambient": [
0,
0,
0
],
"diffuse": [
1,
1,
1
],
"specular": [
1,
1,
1
],
"emissive": [
0,
0,
0
],
"specularPower": 64,
"useAlphaFromDiffuseTexture": false,
"useEmissiveAsIllumination": false,
"linkEmissiveWithDiffuse": false,
"useSpecularOverAlpha": false,
"useReflectionOverAlpha": false,
"disableLighting": false,
"useObjectSpaceNormalMap": false,
"useParallax": false,
"useParallaxOcclusion": false,
"parallaxScaleBias": 0.05,
"roughness": 0,
"indexOfRefraction": 0.98,
"invertRefractionY": true,
"alphaCutOff": 0.4,
"useLightmapAsShadowmap": false,
"useReflectionFresnelFromSpecular": false,
"useGlossinessFromSpecularMapAlpha": false,
"maxSimultaneousLights": 32,
"invertNormalMapX": false,
"invertNormalMapY": false,
"twoSidedLighting": false,
"applyDecalMapAfterDetailMap": false,
"id": "default material",
"name": "default material",
"checkReadyOnEveryCall": false,
"checkReadyOnlyOnce": false,
"state": "",
"alpha": 1,
"backFaceCulling": true,
"cullBackFaces": true,
"_alphaMode": [
2
],
"_needDepthPrePass": false,
"disableDepthWrite": false,
"disableColorWrite": false,
"forceDepthWrite": false,
"depthFunction": 0,
"separateCullingPass": false,
"fogEnabled": true,
"pointSize": 1,
"zOffset": 0,
"zOffsetUnits": 0,
"pointsCloud": false,
"fillMode": 0,
"_isVertexOutputInvariant": false,
"stencil": {
"tags": null,
"func": 519,
"backFunc": 519,
"funcRef": 1,
"funcMask": 255,
"opStencilFail": 7680,
"opDepthFail": 7680,
"opStencilDepthPass": 7681,
"backOpStencilFail": 7680,
"backOpDepthFail": 7680,
"backOpStencilDepthPass": 7681,
"mask": 255,
"enabled": false
},
"uniqueId": 46,
"plugins": {
"DetailMapConfiguration": {
"tags": null,
"diffuseBlendLevel": 1,
"roughnessBlendLevel": 1,
"bumpLevel": 1,
"normalBlendMethod": 0,
"isEnabled": false,
"name": "DetailMap",
"priority": 140,
"resolveIncludes": false,
"registerForExtraEvents": false
}
}
}
],
"metadata": {
"scripts": [
{
"enabled": true,
"key": "scripts/editorScripts/BaseComponent.ts",
"values": {
"baseGlbPath": {
"type": "string",
"description": "Path to base GLB model",
"value": ""
},
"landingGlbPath": {
"type": "string",
"description": "Path to landing zone GLB",
"value": ""
}
},
"_id": "7741fd66-a746-4f78-a7fd-5f8f404b610c"
}
]
},
"basePoseMatrix": [
-1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
]
}

View File

@ -0,0 +1,207 @@
{
"meshes": [
{
"name": "asteroid.glb",
"id": "c8ccf36e-90e4-4cef-bd6c-f9856ae91783",
"uniqueId": 1764789858421,
"type": "Mesh",
"position": [
0,
0,
0
],
"rotationQuaternion": [
0,
1,
0,
0
],
"scaling": [
100,
100,
-100
],
"localMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
],
"isEnabled": true,
"isVisible": true,
"infiniteDistance": false,
"pickable": true,
"receiveShadows": true,
"billboardMode": 0,
"visibility": 1,
"alwaysSelectAsActiveMesh": false,
"checkCollisions": false,
"ellipsoid": [
0.5,
1,
0.5
],
"ellipsoidOffset": [
0,
0,
0
],
"doNotSyncBoundingInfo": false,
"isBlocker": false,
"sideOrientation": 1,
"isUnIndexed": false,
"materialUniqueId": 46,
"materialId": "default material",
"metadata": {},
"instances": [],
"animations": [],
"ranges": [],
"layerMask": 268435455,
"alphaIndex": 1.7976931348623157e+308,
"hasVertexAlpha": false,
"overlayAlpha": 1,
"overlayColor": [
0,
0,
0
],
"applyFog": true
}
],
"transformNodes": [],
"cameras": [],
"lights": [],
"materials": [
{
"tags": null,
"ambient": [
0,
0,
0
],
"diffuse": [
1,
1,
1
],
"specular": [
1,
1,
1
],
"emissive": [
0,
0,
0
],
"specularPower": 64,
"useAlphaFromDiffuseTexture": false,
"useEmissiveAsIllumination": false,
"linkEmissiveWithDiffuse": false,
"useSpecularOverAlpha": false,
"useReflectionOverAlpha": false,
"disableLighting": false,
"useObjectSpaceNormalMap": false,
"useParallax": false,
"useParallaxOcclusion": false,
"parallaxScaleBias": 0.05,
"roughness": 0,
"indexOfRefraction": 0.98,
"invertRefractionY": true,
"alphaCutOff": 0.4,
"useLightmapAsShadowmap": false,
"useReflectionFresnelFromSpecular": false,
"useGlossinessFromSpecularMapAlpha": false,
"maxSimultaneousLights": 32,
"invertNormalMapX": false,
"invertNormalMapY": false,
"twoSidedLighting": false,
"applyDecalMapAfterDetailMap": false,
"id": "default material",
"name": "default material",
"checkReadyOnEveryCall": false,
"checkReadyOnlyOnce": false,
"state": "",
"alpha": 1,
"backFaceCulling": true,
"cullBackFaces": true,
"_alphaMode": [
2
],
"_needDepthPrePass": false,
"disableDepthWrite": false,
"disableColorWrite": false,
"forceDepthWrite": false,
"depthFunction": 0,
"separateCullingPass": false,
"fogEnabled": true,
"pointSize": 1,
"zOffset": 0,
"zOffsetUnits": 0,
"pointsCloud": false,
"fillMode": 0,
"_isVertexOutputInvariant": false,
"stencil": {
"tags": null,
"func": 519,
"backFunc": 519,
"funcRef": 1,
"funcMask": 255,
"opStencilFail": 7680,
"opDepthFail": 7680,
"opStencilDepthPass": 7681,
"backOpStencilFail": 7680,
"backOpDepthFail": 7680,
"backOpStencilDepthPass": 7681,
"mask": 255,
"enabled": false
},
"uniqueId": 46,
"plugins": {
"DetailMapConfiguration": {
"tags": null,
"diffuseBlendLevel": 1,
"roughnessBlendLevel": 1,
"bumpLevel": 1,
"normalBlendMethod": 0,
"isEnabled": false,
"name": "DetailMap",
"priority": 140,
"resolveIncludes": false,
"registerForExtraEvents": false
}
}
}
],
"metadata": {},
"basePoseMatrix": [
-1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
]
}

View File

@ -0,0 +1,426 @@
{
"meshes": [
{
"name": "Ship_primitive2",
"id": "cbee3b60-c52a-451e-8a43-ddeccb72c2e6",
"uniqueId": 1764787012175,
"type": "Mesh",
"position": [
0,
0,
0
],
"rotation": [
0,
0,
0
],
"scaling": [
1,
1,
1
],
"localMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
],
"isEnabled": true,
"isVisible": true,
"infiniteDistance": false,
"pickable": true,
"receiveShadows": true,
"billboardMode": 0,
"visibility": 1,
"alwaysSelectAsActiveMesh": false,
"checkCollisions": false,
"ellipsoid": [
0.5,
1,
0.5
],
"ellipsoidOffset": [
0,
0,
0
],
"doNotSyncBoundingInfo": false,
"isBlocker": false,
"sideOrientation": 0,
"isUnIndexed": false,
"geometryUniqueId": 1764787012182,
"geometryId": "4cda27fd-eed5-4d1a-b69a-a10585be394d",
"subMeshes": null,
"materialUniqueId": 1764787012183,
"materialId": "a37af4ed-0bc4-4e4b-bee9-63cecf56c25c",
"metadata": {
"parentId": 1764787012177
},
"instances": [],
"animations": [],
"ranges": [],
"layerMask": 268435455,
"alphaIndex": 1.7976931348623157e+308,
"hasVertexAlpha": false,
"overlayAlpha": 1,
"overlayColor": [
0,
0,
0
],
"applyFog": true,
"delayLoadingFile": "assets/example.scene/geometries/4cda27fd-eed5-4d1a-b69a-a10585be394d.babylonbinarymeshdata",
"boundingBoxMaximum": [
0.21567727625370026,
0.7399396300315857,
4.235613822937012
],
"boundingBoxMinimum": [
-0.2839681804180145,
0.23974217474460602,
4.230499744415283
],
"_binaryInfo": {
"positionsAttrDesc": {
"count": 12,
"stride": 3,
"offset": 0,
"dataType": 1
},
"normalsAttrDesc": {
"count": 12,
"stride": 3,
"offset": 48,
"dataType": 1
},
"uvsAttrDesc": {
"count": 8,
"stride": 2,
"offset": 96,
"dataType": 1
},
"indicesAttrDesc": {
"count": 6,
"stride": 1,
"offset": 128,
"dataType": 0
},
"subMeshesAttrDesc": {
"count": 1,
"stride": 5,
"offset": 152,
"dataType": 0
}
},
"positions": null,
"normals": null,
"uvs": null,
"hasUVs": true,
"indices": null
}
],
"transformNodes": [],
"cameras": [],
"lights": [],
"materials": [
{
"tags": null,
"directIntensity": 1,
"emissiveIntensity": 1,
"environmentIntensity": 1,
"specularIntensity": 1,
"disableBumpMap": false,
"ambientTextureStrength": 1,
"ambientTextureImpactOnAnalyticalLights": 0,
"metallic": 0,
"roughness": 0.5,
"metallicF0Factor": 1,
"metallicReflectanceColor": [
1,
1,
1
],
"useOnlyMetallicFromMetallicReflectanceTexture": false,
"ambient": [
0,
0,
0
],
"albedo": [
0,
0,
0
],
"baseWeight": 1,
"reflectivity": [
1,
1,
1
],
"reflection": [
1,
1,
1
],
"emissive": [
0,
0,
0
],
"microSurface": 1,
"useLightmapAsShadowmap": false,
"useAlphaFromAlbedoTexture": false,
"forceAlphaTest": false,
"alphaCutOff": 0.4,
"useSpecularOverAlpha": true,
"useMicroSurfaceFromReflectivityMapAlpha": false,
"useRoughnessFromMetallicTextureAlpha": true,
"useRoughnessFromMetallicTextureGreen": false,
"useMetallnessFromMetallicTextureBlue": false,
"useAmbientOcclusionFromMetallicTextureRed": false,
"useAmbientInGrayScale": false,
"useAutoMicroSurfaceFromReflectivityMap": false,
"usePhysicalLightFalloff": true,
"useGLTFLightFalloff": false,
"useRadianceOverAlpha": true,
"useObjectSpaceNormalMap": false,
"useParallax": false,
"useParallaxOcclusion": false,
"parallaxScaleBias": 0.05,
"disableLighting": false,
"forceIrradianceInFragment": false,
"maxSimultaneousLights": 32,
"invertNormalMapX": false,
"invertNormalMapY": false,
"twoSidedLighting": true,
"useAlphaFresnel": false,
"useLinearAlphaFresnel": false,
"forceNormalForward": false,
"enableSpecularAntiAliasing": true,
"useHorizonOcclusion": true,
"useRadianceOcclusion": true,
"unlit": false,
"applyDecalMapAfterDetailMap": false,
"id": "a37af4ed-0bc4-4e4b-bee9-63cecf56c25c",
"name": "Screen",
"metadata": {},
"checkReadyOnEveryCall": false,
"checkReadyOnlyOnce": false,
"state": "",
"alpha": 1,
"backFaceCulling": false,
"cullBackFaces": true,
"_alphaMode": [
2
],
"_needDepthPrePass": false,
"disableDepthWrite": false,
"disableColorWrite": false,
"forceDepthWrite": false,
"depthFunction": 0,
"separateCullingPass": false,
"fogEnabled": true,
"pointSize": 1,
"zOffset": 0,
"zOffsetUnits": 0,
"pointsCloud": false,
"fillMode": 0,
"_isVertexOutputInvariant": false,
"transparencyMode": 0,
"stencil": {
"tags": null,
"func": 519,
"backFunc": 519,
"funcRef": 1,
"funcMask": 255,
"opStencilFail": 7680,
"opDepthFail": 7680,
"opStencilDepthPass": 7681,
"backOpStencilFail": 7680,
"backOpDepthFail": 7680,
"backOpStencilDepthPass": 7681,
"mask": 255,
"enabled": false
},
"uniqueId": 1764787012183,
"plugins": {
"PBRBRDFConfiguration": {
"tags": null,
"useEnergyConservation": true,
"useSmithVisibilityHeightCorrelated": true,
"useSphericalHarmonics": true,
"useSpecularGlossinessInputEnergyConservation": true,
"mixIblRadianceWithIrradiance": true,
"useLegacySpecularEnergyConservation": true,
"baseDiffuseModel": 0,
"dielectricSpecularModel": 0,
"conductorSpecularModel": 0,
"name": "PBRBRDF",
"priority": 90,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRClearCoatConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"roughness": 0,
"indexOfRefraction": 1.5,
"useRoughnessFromMainTexture": true,
"remapF0OnInterfaceChange": true,
"isTintEnabled": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"tintThickness": 1,
"name": "PBRClearCoat",
"priority": 100,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRIridescenceConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"minimumThickness": 100,
"maximumThickness": 400,
"indexOfRefraction": 1.3,
"name": "PBRIridescence",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRAnisotropicConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"direction": [
1,
0
],
"legacy": false,
"name": "PBRAnisotropic",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSheenConfiguration": {
"tags": null,
"isEnabled": false,
"linkSheenWithAlbedo": false,
"intensity": 1,
"color": [
1,
1,
1
],
"useRoughnessFromMainTexture": true,
"albedoScaling": false,
"name": "Sheen",
"priority": 120,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSubSurfaceConfiguration": {
"tags": null,
"isRefractionEnabled": false,
"isTranslucencyEnabled": false,
"isDispersionEnabled": false,
"isScatteringEnabled": false,
"_scatteringDiffusionProfileIndex": 0,
"refractionIntensity": 1,
"translucencyIntensity": 1,
"useAlbedoToTintRefraction": false,
"useAlbedoToTintTranslucency": false,
"indexOfRefraction": 1.5,
"_volumeIndexOfRefraction": -1,
"invertRefractionY": false,
"linkRefractionWithTransparency": false,
"minimumThickness": 0,
"maximumThickness": 1,
"useThicknessAsDepth": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"dispersion": 0,
"diffusionDistance": [
1,
1,
1
],
"useMaskFromThicknessTexture": false,
"useGltfStyleTextures": true,
"applyAlbedoAfterSubSurface": false,
"legacyTranslucency": false,
"name": "PBRSubSurface",
"priority": 130,
"resolveIncludes": false,
"registerForExtraEvents": true
},
"DetailMapConfiguration": {
"tags": null,
"diffuseBlendLevel": 1,
"roughnessBlendLevel": 1,
"bumpLevel": 1,
"normalBlendMethod": 0,
"isEnabled": false,
"name": "DetailMap",
"priority": 140,
"resolveIncludes": false,
"registerForExtraEvents": false
}
},
"customType": "BABYLON.PBRMaterial"
}
],
"geometries": {
"boxes": [],
"spheres": [],
"cylinders": [],
"toruses": [],
"grounds": [],
"planes": [],
"torusKnots": [],
"vertexData": []
},
"metadata": {
"parentId": 1764787012177
},
"basePoseMatrix": [
1.6247152644956515,
0,
4.08643597401238e-7,
0,
0,
1.4727547823314542,
0,
0,
5.293994474577842e-7,
0,
-1.2541182156960042,
0,
0,
-0.9408809412868501,
0,
1
]
}

View File

@ -0,0 +1,526 @@
{
"meshes": [
{
"name": "Base",
"id": "df3bdc41-8314-45f8-9add-ccfd1d06451f",
"uniqueId": 1764786749144,
"type": "Mesh",
"position": [
0,
-8.583544731140137,
0
],
"rotationQuaternion": [
0,
0,
0,
1
],
"scaling": [
33.146690368652344,
1,
37.254390716552734
],
"localMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
],
"isEnabled": true,
"isVisible": true,
"infiniteDistance": false,
"pickable": true,
"receiveShadows": true,
"billboardMode": 0,
"visibility": 1,
"alwaysSelectAsActiveMesh": false,
"checkCollisions": false,
"ellipsoid": [
0.5,
1,
0.5
],
"ellipsoidOffset": [
0,
0,
0
],
"doNotSyncBoundingInfo": false,
"isBlocker": false,
"sideOrientation": 0,
"isUnIndexed": false,
"geometryUniqueId": 1764786749146,
"geometryId": "101bd857-f8e8-4230-a021-5d519fefb26c",
"subMeshes": null,
"materialUniqueId": 1764786749147,
"materialId": "00d2631a-e346-4509-b0bb-64e0467c0622",
"metadata": {
"parentId": 1764786749143
},
"instances": [],
"animations": [],
"ranges": [],
"layerMask": 268435455,
"alphaIndex": 1.7976931348623157e+308,
"hasVertexAlpha": false,
"overlayAlpha": 0,
"overlayColor": [
0,
0,
0
],
"renderOverlay": false,
"applyFog": true,
"delayLoadingFile": "assets/example.scene/geometries/101bd857-f8e8-4230-a021-5d519fefb26c.babylonbinarymeshdata",
"boundingBoxMaximum": [
1,
0.7045964002609253,
1
],
"boundingBoxMinimum": [
-1,
-2.1139473915100098,
-1
],
"_binaryInfo": {
"positionsAttrDesc": {
"count": 264,
"stride": 3,
"offset": 0,
"dataType": 1
},
"normalsAttrDesc": {
"count": 264,
"stride": 3,
"offset": 1056,
"dataType": 1
},
"uvsAttrDesc": {
"count": 176,
"stride": 2,
"offset": 2112,
"dataType": 1
},
"indicesAttrDesc": {
"count": 132,
"stride": 1,
"offset": 2816,
"dataType": 0
},
"subMeshesAttrDesc": {
"count": 1,
"stride": 5,
"offset": 3344,
"dataType": 0
}
},
"positions": null,
"normals": null,
"uvs": null,
"hasUVs": true,
"indices": null
}
],
"transformNodes": [],
"cameras": [],
"lights": [],
"materials": [
{
"tags": null,
"directIntensity": 1,
"emissiveIntensity": 1.399999976158142,
"environmentIntensity": 1,
"specularIntensity": 1,
"disableBumpMap": false,
"albedoTexture": {
"tags": null,
"url": "assets/editor-generated_9f6c774a10727dd45e1e2122a14a3957.jpg",
"uOffset": 0,
"vOffset": 0,
"uScale": 1,
"vScale": -1,
"uAng": 0,
"vAng": 0,
"wAng": 0,
"uRotationCenter": 0.5,
"vRotationCenter": 0.5,
"wRotationCenter": 0.5,
"homogeneousRotationInUVTransform": false,
"isBlocking": true,
"name": "assets/editor-generated_9f6c774a10727dd45e1e2122a14a3957.jpg",
"metadata": {
"baseSize": {
"width": 2048,
"height": 2048
}
},
"hasAlpha": false,
"getAlphaFromRGB": false,
"level": 1,
"coordinatesIndex": 0,
"optimizeUVAllocation": true,
"coordinatesMode": 0,
"wrapU": 1,
"wrapV": 1,
"wrapR": 1,
"anisotropicFilteringLevel": 4,
"isCube": false,
"is3D": false,
"is2DArray": false,
"gammaSpace": false,
"invertZ": false,
"lodLevelInAlpha": false,
"lodGenerationOffset": 0,
"lodGenerationScale": 0,
"linearSpecularLOD": false,
"isRenderTarget": false,
"animations": [],
"invertY": true,
"samplingMode": 3,
"_useSRGBBuffer": false,
"internalTextureLabel": "/Users/michaelmainguy/WebstormProjects/space-game/gameEditor",
"noMipmap": false
},
"ambientTextureStrength": 1,
"ambientTextureImpactOnAnalyticalLights": 0,
"emissiveTexture": {
"tags": null,
"url": "assets/editor-generated_9f6c774a10727dd45e1e2122a14a3957.jpg",
"uOffset": 0,
"vOffset": 0,
"uScale": 1,
"vScale": -1,
"uAng": 0,
"vAng": 0,
"wAng": 0,
"uRotationCenter": 0.5,
"vRotationCenter": 0.5,
"wRotationCenter": 0.5,
"homogeneousRotationInUVTransform": false,
"isBlocking": true,
"name": "assets/editor-generated_9f6c774a10727dd45e1e2122a14a3957.jpg",
"metadata": {
"baseSize": {
"width": 2048,
"height": 2048
}
},
"hasAlpha": false,
"getAlphaFromRGB": false,
"level": 1,
"coordinatesIndex": 0,
"optimizeUVAllocation": true,
"coordinatesMode": 0,
"wrapU": 1,
"wrapV": 1,
"wrapR": 1,
"anisotropicFilteringLevel": 4,
"isCube": false,
"is3D": false,
"is2DArray": false,
"gammaSpace": false,
"invertZ": false,
"lodLevelInAlpha": false,
"lodGenerationOffset": 0,
"lodGenerationScale": 0,
"linearSpecularLOD": false,
"isRenderTarget": false,
"animations": [],
"invertY": true,
"samplingMode": 3,
"_useSRGBBuffer": false,
"internalTextureLabel": "/Users/michaelmainguy/WebstormProjects/space-game/gameEditor",
"noMipmap": false
},
"metallic": 0,
"roughness": 0.5,
"metallicF0Factor": 1,
"metallicReflectanceColor": [
1,
1,
1
],
"useOnlyMetallicFromMetallicReflectanceTexture": false,
"ambient": [
0,
0,
0
],
"albedo": [
1,
1,
1
],
"baseWeight": 1,
"reflectivity": [
1,
1,
1
],
"reflection": [
1,
1,
1
],
"emissive": [
1,
1,
1
],
"microSurface": 1,
"useLightmapAsShadowmap": false,
"useAlphaFromAlbedoTexture": false,
"forceAlphaTest": false,
"alphaCutOff": 0.4,
"useSpecularOverAlpha": true,
"useMicroSurfaceFromReflectivityMapAlpha": false,
"useRoughnessFromMetallicTextureAlpha": true,
"useRoughnessFromMetallicTextureGreen": false,
"useMetallnessFromMetallicTextureBlue": false,
"useAmbientOcclusionFromMetallicTextureRed": false,
"useAmbientInGrayScale": false,
"useAutoMicroSurfaceFromReflectivityMap": false,
"usePhysicalLightFalloff": true,
"useGLTFLightFalloff": false,
"useRadianceOverAlpha": true,
"useObjectSpaceNormalMap": false,
"useParallax": false,
"useParallaxOcclusion": false,
"parallaxScaleBias": 0.05,
"disableLighting": false,
"forceIrradianceInFragment": false,
"maxSimultaneousLights": 32,
"invertNormalMapX": false,
"invertNormalMapY": false,
"twoSidedLighting": true,
"useAlphaFresnel": false,
"useLinearAlphaFresnel": false,
"forceNormalForward": false,
"enableSpecularAntiAliasing": true,
"useHorizonOcclusion": true,
"useRadianceOcclusion": true,
"unlit": false,
"applyDecalMapAfterDetailMap": false,
"id": "00d2631a-e346-4509-b0bb-64e0467c0622",
"name": "Material.001",
"metadata": {},
"checkReadyOnEveryCall": false,
"checkReadyOnlyOnce": false,
"state": "",
"alpha": 1,
"backFaceCulling": false,
"cullBackFaces": true,
"_alphaMode": [
2
],
"_needDepthPrePass": false,
"disableDepthWrite": false,
"disableColorWrite": false,
"forceDepthWrite": false,
"depthFunction": 0,
"separateCullingPass": false,
"fogEnabled": true,
"pointSize": 1,
"zOffset": 0,
"zOffsetUnits": 0,
"pointsCloud": false,
"fillMode": 0,
"_isVertexOutputInvariant": false,
"transparencyMode": 0,
"stencil": {
"tags": null,
"func": 519,
"backFunc": 519,
"funcRef": 1,
"funcMask": 255,
"opStencilFail": 7680,
"opDepthFail": 7680,
"opStencilDepthPass": 7681,
"backOpStencilFail": 7680,
"backOpDepthFail": 7680,
"backOpStencilDepthPass": 7681,
"mask": 255,
"enabled": false
},
"uniqueId": 1764786749147,
"plugins": {
"PBRBRDFConfiguration": {
"tags": null,
"useEnergyConservation": true,
"useSmithVisibilityHeightCorrelated": true,
"useSphericalHarmonics": true,
"useSpecularGlossinessInputEnergyConservation": true,
"mixIblRadianceWithIrradiance": true,
"useLegacySpecularEnergyConservation": true,
"baseDiffuseModel": 0,
"dielectricSpecularModel": 0,
"conductorSpecularModel": 0,
"name": "PBRBRDF",
"priority": 90,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRClearCoatConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"roughness": 0,
"indexOfRefraction": 1.5,
"useRoughnessFromMainTexture": true,
"remapF0OnInterfaceChange": true,
"isTintEnabled": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"tintThickness": 1,
"name": "PBRClearCoat",
"priority": 100,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRIridescenceConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"minimumThickness": 100,
"maximumThickness": 400,
"indexOfRefraction": 1.3,
"name": "PBRIridescence",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRAnisotropicConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"direction": [
1,
0
],
"legacy": false,
"name": "PBRAnisotropic",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSheenConfiguration": {
"tags": null,
"isEnabled": false,
"linkSheenWithAlbedo": false,
"intensity": 1,
"color": [
1,
1,
1
],
"useRoughnessFromMainTexture": true,
"albedoScaling": false,
"name": "Sheen",
"priority": 120,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSubSurfaceConfiguration": {
"tags": null,
"isRefractionEnabled": false,
"isTranslucencyEnabled": false,
"isDispersionEnabled": false,
"isScatteringEnabled": false,
"_scatteringDiffusionProfileIndex": 0,
"refractionIntensity": 1,
"translucencyIntensity": 1,
"useAlbedoToTintRefraction": false,
"useAlbedoToTintTranslucency": false,
"indexOfRefraction": 1.5,
"_volumeIndexOfRefraction": -1,
"invertRefractionY": false,
"linkRefractionWithTransparency": false,
"minimumThickness": 0,
"maximumThickness": 1,
"useThicknessAsDepth": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"dispersion": 0,
"diffusionDistance": [
1,
1,
1
],
"useMaskFromThicknessTexture": false,
"useGltfStyleTextures": true,
"applyAlbedoAfterSubSurface": false,
"legacyTranslucency": false,
"name": "PBRSubSurface",
"priority": 130,
"resolveIncludes": false,
"registerForExtraEvents": true
},
"DetailMapConfiguration": {
"tags": null,
"diffuseBlendLevel": 1,
"roughnessBlendLevel": 1,
"bumpLevel": 1,
"normalBlendMethod": 0,
"isEnabled": false,
"name": "DetailMap",
"priority": 140,
"resolveIncludes": false,
"registerForExtraEvents": false
}
},
"customType": "BABYLON.PBRMaterial"
}
],
"geometries": {
"boxes": [],
"spheres": [],
"cylinders": [],
"toruses": [],
"grounds": [],
"planes": [],
"torusKnots": [],
"vertexData": []
},
"metadata": {
"parentId": 1764786749143
},
"basePoseMatrix": [
-0.030168924525439955,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0.026842473618973555,
0,
0,
8.583544731140138,
0,
1
]
}

View File

@ -0,0 +1,524 @@
{
"meshes": [
{
"name": "Ship_primitive0",
"id": "e76fcb83-e1df-4c7c-92cd-65b601ee9bba",
"uniqueId": 1764787012173,
"type": "Mesh",
"position": [
0,
0,
0
],
"rotation": [
0,
0,
0
],
"scaling": [
1,
1,
1
],
"localMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
],
"isEnabled": true,
"isVisible": true,
"infiniteDistance": false,
"pickable": true,
"receiveShadows": true,
"billboardMode": 0,
"visibility": 1,
"alwaysSelectAsActiveMesh": false,
"checkCollisions": false,
"ellipsoid": [
0.5,
1,
0.5
],
"ellipsoidOffset": [
0,
0,
0
],
"doNotSyncBoundingInfo": false,
"isBlocker": false,
"sideOrientation": 0,
"isUnIndexed": false,
"geometryUniqueId": 1764787012178,
"geometryId": "5a938545-3b1e-40a5-9ed3-a545ced11fd4",
"subMeshes": null,
"materialUniqueId": 1764787012179,
"materialId": "75fae723-6ee6-443b-ba23-704d76ebdb7b",
"metadata": {
"parentId": 1764787012177
},
"instances": [],
"animations": [],
"ranges": [],
"layerMask": 268435455,
"alphaIndex": 1.7976931348623157e+308,
"hasVertexAlpha": false,
"overlayAlpha": 1,
"overlayColor": [
0,
0,
0
],
"applyFog": true,
"delayLoadingFile": "assets/example.scene/geometries/5a938545-3b1e-40a5-9ed3-a545ced11fd4.babylonbinarymeshdata",
"boundingBoxMaximum": [
11.43801212310791,
2.162097454071045,
8.191577911376953
],
"boundingBoxMinimum": [
-11.43801212310791,
-1.028866171836853,
-7.255166530609131
],
"_binaryInfo": {
"positionsAttrDesc": {
"count": 2790,
"stride": 3,
"offset": 0,
"dataType": 1
},
"normalsAttrDesc": {
"count": 2790,
"stride": 3,
"offset": 11160,
"dataType": 1
},
"uvsAttrDesc": {
"count": 1860,
"stride": 2,
"offset": 22320,
"dataType": 1
},
"indicesAttrDesc": {
"count": 1284,
"stride": 1,
"offset": 29760,
"dataType": 0
},
"subMeshesAttrDesc": {
"count": 1,
"stride": 5,
"offset": 34896,
"dataType": 0
}
},
"positions": null,
"normals": null,
"uvs": null,
"hasUVs": true,
"indices": null
}
],
"transformNodes": [],
"cameras": [],
"lights": [],
"materials": [
{
"tags": null,
"directIntensity": 1,
"emissiveIntensity": 1.8999998569488525,
"environmentIntensity": 1,
"specularIntensity": 1,
"disableBumpMap": false,
"albedoTexture": {
"tags": null,
"url": "assets/editor-generated_407fefb1bb1a53ce6f7be55ea1b07228.jpg",
"uOffset": 0,
"vOffset": 0,
"uScale": 1,
"vScale": -1,
"uAng": 0,
"vAng": 0,
"wAng": 0,
"uRotationCenter": 0.5,
"vRotationCenter": 0.5,
"wRotationCenter": 0.5,
"homogeneousRotationInUVTransform": false,
"isBlocking": true,
"name": "assets/editor-generated_407fefb1bb1a53ce6f7be55ea1b07228.jpg",
"metadata": {
"baseSize": {
"width": 4096,
"height": 4096
}
},
"hasAlpha": false,
"getAlphaFromRGB": false,
"level": 1,
"coordinatesIndex": 1,
"optimizeUVAllocation": true,
"coordinatesMode": 0,
"wrapU": 1,
"wrapV": 1,
"wrapR": 1,
"anisotropicFilteringLevel": 4,
"isCube": false,
"is3D": false,
"is2DArray": false,
"gammaSpace": false,
"invertZ": false,
"lodLevelInAlpha": false,
"lodGenerationOffset": 0,
"lodGenerationScale": 0,
"linearSpecularLOD": false,
"isRenderTarget": false,
"animations": [],
"invertY": true,
"samplingMode": 3,
"_useSRGBBuffer": false,
"internalTextureLabel": "/Users/michaelmainguy/WebstormProjects/space-game/gameEditor",
"noMipmap": false
},
"ambientTextureStrength": 1,
"ambientTextureImpactOnAnalyticalLights": 0,
"emissiveTexture": {
"tags": null,
"url": "assets/editor-generated_407fefb1bb1a53ce6f7be55ea1b07228.jpg",
"uOffset": 0,
"vOffset": 0,
"uScale": 1,
"vScale": -1,
"uAng": 0,
"vAng": 0,
"wAng": 0,
"uRotationCenter": 0.5,
"vRotationCenter": 0.5,
"wRotationCenter": 0.5,
"homogeneousRotationInUVTransform": false,
"isBlocking": true,
"name": "assets/editor-generated_407fefb1bb1a53ce6f7be55ea1b07228.jpg",
"metadata": {
"baseSize": {
"width": 4096,
"height": 4096
}
},
"hasAlpha": false,
"getAlphaFromRGB": false,
"level": 1,
"coordinatesIndex": 1,
"optimizeUVAllocation": true,
"coordinatesMode": 0,
"wrapU": 1,
"wrapV": 1,
"wrapR": 1,
"anisotropicFilteringLevel": 4,
"isCube": false,
"is3D": false,
"is2DArray": false,
"gammaSpace": false,
"invertZ": false,
"lodLevelInAlpha": false,
"lodGenerationOffset": 0,
"lodGenerationScale": 0,
"linearSpecularLOD": false,
"isRenderTarget": false,
"animations": [],
"invertY": true,
"samplingMode": 3,
"_useSRGBBuffer": false,
"internalTextureLabel": "/Users/michaelmainguy/WebstormProjects/space-game/gameEditor",
"noMipmap": false
},
"metallic": 0.5344085693359375,
"roughness": 0.4500977396965027,
"metallicF0Factor": 1,
"metallicReflectanceColor": [
1,
1,
1
],
"useOnlyMetallicFromMetallicReflectanceTexture": false,
"ambient": [
0,
0,
0
],
"albedo": [
1,
1,
1
],
"baseWeight": 1,
"reflectivity": [
1,
1,
1
],
"reflection": [
1,
1,
1
],
"emissive": [
1,
1,
1
],
"microSurface": 1,
"useLightmapAsShadowmap": false,
"useAlphaFromAlbedoTexture": false,
"forceAlphaTest": false,
"alphaCutOff": 0.4,
"useSpecularOverAlpha": true,
"useMicroSurfaceFromReflectivityMapAlpha": false,
"useRoughnessFromMetallicTextureAlpha": true,
"useRoughnessFromMetallicTextureGreen": false,
"useMetallnessFromMetallicTextureBlue": false,
"useAmbientOcclusionFromMetallicTextureRed": false,
"useAmbientInGrayScale": false,
"useAutoMicroSurfaceFromReflectivityMap": false,
"usePhysicalLightFalloff": true,
"useGLTFLightFalloff": false,
"useRadianceOverAlpha": true,
"useObjectSpaceNormalMap": false,
"useParallax": false,
"useParallaxOcclusion": false,
"parallaxScaleBias": 0.05,
"disableLighting": false,
"forceIrradianceInFragment": false,
"maxSimultaneousLights": 32,
"invertNormalMapX": false,
"invertNormalMapY": false,
"twoSidedLighting": true,
"useAlphaFresnel": false,
"useLinearAlphaFresnel": false,
"forceNormalForward": false,
"enableSpecularAntiAliasing": true,
"useHorizonOcclusion": true,
"useRadianceOcclusion": true,
"unlit": false,
"applyDecalMapAfterDetailMap": false,
"id": "75fae723-6ee6-443b-ba23-704d76ebdb7b",
"name": "Hull",
"metadata": {},
"checkReadyOnEveryCall": false,
"checkReadyOnlyOnce": false,
"state": "",
"alpha": 1,
"backFaceCulling": false,
"cullBackFaces": true,
"_alphaMode": [
2
],
"_needDepthPrePass": false,
"disableDepthWrite": false,
"disableColorWrite": false,
"forceDepthWrite": false,
"depthFunction": 0,
"separateCullingPass": false,
"fogEnabled": true,
"pointSize": 1,
"zOffset": 0,
"zOffsetUnits": 0,
"pointsCloud": false,
"fillMode": 0,
"_isVertexOutputInvariant": false,
"transparencyMode": 0,
"stencil": {
"tags": null,
"func": 519,
"backFunc": 519,
"funcRef": 1,
"funcMask": 255,
"opStencilFail": 7680,
"opDepthFail": 7680,
"opStencilDepthPass": 7681,
"backOpStencilFail": 7680,
"backOpDepthFail": 7680,
"backOpStencilDepthPass": 7681,
"mask": 255,
"enabled": false
},
"uniqueId": 1764787012179,
"plugins": {
"PBRBRDFConfiguration": {
"tags": null,
"useEnergyConservation": true,
"useSmithVisibilityHeightCorrelated": true,
"useSphericalHarmonics": true,
"useSpecularGlossinessInputEnergyConservation": true,
"mixIblRadianceWithIrradiance": true,
"useLegacySpecularEnergyConservation": true,
"baseDiffuseModel": 0,
"dielectricSpecularModel": 0,
"conductorSpecularModel": 0,
"name": "PBRBRDF",
"priority": 90,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRClearCoatConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"roughness": 0,
"indexOfRefraction": 1.5,
"useRoughnessFromMainTexture": true,
"remapF0OnInterfaceChange": true,
"isTintEnabled": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"tintThickness": 1,
"name": "PBRClearCoat",
"priority": 100,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRIridescenceConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"minimumThickness": 100,
"maximumThickness": 400,
"indexOfRefraction": 1.3,
"name": "PBRIridescence",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRAnisotropicConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"direction": [
1,
0
],
"legacy": false,
"name": "PBRAnisotropic",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSheenConfiguration": {
"tags": null,
"isEnabled": false,
"linkSheenWithAlbedo": false,
"intensity": 1,
"color": [
1,
1,
1
],
"useRoughnessFromMainTexture": true,
"albedoScaling": false,
"name": "Sheen",
"priority": 120,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSubSurfaceConfiguration": {
"tags": null,
"isRefractionEnabled": false,
"isTranslucencyEnabled": false,
"isDispersionEnabled": false,
"isScatteringEnabled": false,
"_scatteringDiffusionProfileIndex": 0,
"refractionIntensity": 1,
"translucencyIntensity": 1,
"useAlbedoToTintRefraction": false,
"useAlbedoToTintTranslucency": false,
"indexOfRefraction": 1.5,
"_volumeIndexOfRefraction": -1,
"invertRefractionY": false,
"linkRefractionWithTransparency": false,
"minimumThickness": 0,
"maximumThickness": 1,
"useThicknessAsDepth": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"dispersion": 0,
"diffusionDistance": [
1,
1,
1
],
"useMaskFromThicknessTexture": false,
"useGltfStyleTextures": true,
"applyAlbedoAfterSubSurface": false,
"legacyTranslucency": false,
"name": "PBRSubSurface",
"priority": 130,
"resolveIncludes": false,
"registerForExtraEvents": true
},
"DetailMapConfiguration": {
"tags": null,
"diffuseBlendLevel": 1,
"roughnessBlendLevel": 1,
"bumpLevel": 1,
"normalBlendMethod": 0,
"isEnabled": false,
"name": "DetailMap",
"priority": 140,
"resolveIncludes": false,
"registerForExtraEvents": false
}
},
"customType": "BABYLON.PBRMaterial"
}
],
"geometries": {
"boxes": [],
"spheres": [],
"cylinders": [],
"toruses": [],
"grounds": [],
"planes": [],
"torusKnots": [],
"vertexData": []
},
"metadata": {
"parentId": 1764787012177
},
"basePoseMatrix": [
1.6247152644956515,
0,
4.08643597401238e-7,
0,
0,
1.4727547823314542,
0,
0,
5.293994474577842e-7,
0,
-1.2541182156960042,
0,
0,
-0.9408809412868501,
0,
1
]
}

View File

@ -0,0 +1,58 @@
{
"tags": null,
"position": [
0,
0.6388578414916992,
0
],
"rotation": [
0,
0,
0
],
"rotationQuaternion": [
0,
0,
0,
1
],
"scaling": [
0.6154924631118774,
0.678999662399292,
0.7973729968070984
],
"billboardMode": 0,
"scalingDeterminant": 1,
"infiniteDistance": false,
"ignoreNonUniformScaling": false,
"reIntegrateRotationIntoRotationQuaternion": false,
"name": "Ship",
"id": "315c338c-b9a0-4509-839c-8802b52dc0b3",
"state": "",
"metadata": {
"parentId": 1764787012172
},
"type": "TransformNode",
"uniqueId": 1764787012177,
"localMatrix": [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1
],
"isEnabled": true,
"animations": [],
"ranges": []
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

BIN
gameEditor/assets/ship.glb Normal file

Binary file not shown.

17
gameEditor/index.html Normal file
View File

@ -0,0 +1,17 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<title>VanillaJS App</title>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<main id="app" class="flex w-screen h-screen flex-col items-center justify-between">
<canvas id="canvas" class="w-full h-full outline-none select-none"></canvas>
</main>
<script src="/src/main.ts" type="module"></script>
</body>
</html>

1802
gameEditor/package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

28
gameEditor/package.json Normal file
View File

@ -0,0 +1,28 @@
{
"name": "babylonjs-editor-vanillajs-template",
"version": "0.0.0",
"description": "",
"type": "module",
"private": true,
"scripts": {
"start": "vite",
"dev": "vite",
"build": "vite build",
"serve": "vite preview"
},
"license": "MIT",
"devDependencies": {
"@tailwindcss/vite": "^4.0.7",
"@types/node": "^22",
"tailwindcss": "^4.0.7",
"typescript": "^5.7.2",
"vite": "^6.4.1"
},
"dependencies": {
"@babylonjs/core": "8.33.2",
"@babylonjs/gui": "8.33.2",
"@babylonjs/havok": "1.3.10",
"@babylonjs/materials": "8.33.2",
"babylonjs-editor-tools": "^5.2.4"
}
}

View File

@ -0,0 +1,12 @@
{
"plugins": [
{
"nameOrPath": "/Users/michaelmainguy/WebstormProjects/space-game/bjsEditorPlugin/dist"
}
],
"version": "5.2.4",
"packageManager": "npm",
"lastOpenedScene": "/assets/example.scene",
"compressedTexturesEnabled": false,
"compressedTexturesEnabledInPreview": false
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 383 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 593 B

Binary file not shown.

View File

@ -0,0 +1,303 @@
{
"tags": null,
"directIntensity": 1,
"emissiveIntensity": 1,
"environmentIntensity": 1,
"specularIntensity": 1,
"disableBumpMap": false,
"albedoTexture": {
"tags": null,
"url": "assets/amiga.jpg",
"uOffset": 0,
"vOffset": 0,
"uScale": 1,
"vScale": 1,
"uAng": 0,
"vAng": 0,
"wAng": 0,
"uRotationCenter": 0.5,
"vRotationCenter": 0.5,
"wRotationCenter": 0.5,
"homogeneousRotationInUVTransform": false,
"isBlocking": true,
"name": "assets/amiga.jpg",
"metadata": {
"baseSize": {
"width": 128,
"height": 128
}
},
"hasAlpha": false,
"getAlphaFromRGB": false,
"level": 1,
"coordinatesIndex": 0,
"optimizeUVAllocation": true,
"coordinatesMode": 0,
"wrapU": 1,
"wrapV": 1,
"wrapR": 1,
"anisotropicFilteringLevel": 4,
"isCube": false,
"is3D": false,
"is2DArray": false,
"gammaSpace": true,
"invertZ": false,
"lodLevelInAlpha": false,
"lodGenerationOffset": 0,
"lodGenerationScale": 0,
"linearSpecularLOD": false,
"isRenderTarget": false,
"animations": [],
"invertY": true,
"samplingMode": 3,
"_useSRGBBuffer": false,
"noMipmap": false
},
"ambientTextureStrength": 1,
"ambientTextureImpactOnAnalyticalLights": 0,
"metallic": 0,
"roughness": 1,
"metallicF0Factor": 1,
"metallicReflectanceColor": [
1,
1,
1
],
"useOnlyMetallicFromMetallicReflectanceTexture": false,
"ambient": [
0,
0,
0
],
"albedo": [
1,
1,
1
],
"baseWeight": 1,
"reflectivity": [
1,
1,
1
],
"reflection": [
1,
1,
1
],
"emissive": [
0,
0,
0
],
"microSurface": 1,
"useLightmapAsShadowmap": false,
"useAlphaFromAlbedoTexture": false,
"forceAlphaTest": false,
"alphaCutOff": 0.4,
"useSpecularOverAlpha": true,
"useMicroSurfaceFromReflectivityMapAlpha": false,
"useRoughnessFromMetallicTextureAlpha": true,
"useRoughnessFromMetallicTextureGreen": false,
"useMetallnessFromMetallicTextureBlue": false,
"useAmbientOcclusionFromMetallicTextureRed": false,
"useAmbientInGrayScale": false,
"useAutoMicroSurfaceFromReflectivityMap": false,
"usePhysicalLightFalloff": true,
"useGLTFLightFalloff": false,
"useRadianceOverAlpha": true,
"useObjectSpaceNormalMap": false,
"useParallax": false,
"useParallaxOcclusion": false,
"parallaxScaleBias": 0.05,
"disableLighting": false,
"forceIrradianceInFragment": false,
"maxSimultaneousLights": 32,
"invertNormalMapX": false,
"invertNormalMapY": false,
"twoSidedLighting": false,
"useAlphaFresnel": false,
"useLinearAlphaFresnel": false,
"forceNormalForward": false,
"enableSpecularAntiAliasing": false,
"useHorizonOcclusion": true,
"useRadianceOcclusion": true,
"unlit": false,
"applyDecalMapAfterDetailMap": false,
"id": "9f2b8769-ac8e-4289-b8a4-171c5b7d3139",
"name": "box",
"checkReadyOnEveryCall": false,
"checkReadyOnlyOnce": false,
"state": "",
"alpha": 1,
"backFaceCulling": true,
"cullBackFaces": true,
"sideOrientation": 1,
"_alphaMode": [
2
],
"_needDepthPrePass": false,
"disableDepthWrite": false,
"disableColorWrite": false,
"forceDepthWrite": false,
"depthFunction": 0,
"separateCullingPass": false,
"fogEnabled": true,
"pointSize": 1,
"zOffset": 0,
"zOffsetUnits": 0,
"pointsCloud": false,
"fillMode": 0,
"_isVertexOutputInvariant": false,
"transparencyMode": 0,
"stencil": {
"tags": null,
"func": 519,
"backFunc": 519,
"funcRef": 1,
"funcMask": 255,
"opStencilFail": 7680,
"opDepthFail": 7680,
"opStencilDepthPass": 7681,
"backOpStencilFail": 7680,
"backOpDepthFail": 7680,
"backOpStencilDepthPass": 7681,
"mask": 255,
"enabled": false
},
"uniqueId": 1711813856778,
"plugins": {
"PBRBRDFConfiguration": {
"tags": null,
"useEnergyConservation": true,
"useSmithVisibilityHeightCorrelated": true,
"useSphericalHarmonics": true,
"useSpecularGlossinessInputEnergyConservation": true,
"mixIblRadianceWithIrradiance": true,
"useLegacySpecularEnergyConservation": true,
"baseDiffuseModel": 0,
"dielectricSpecularModel": 0,
"conductorSpecularModel": 0,
"name": "PBRBRDF",
"priority": 90,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRClearCoatConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"roughness": 0,
"indexOfRefraction": 1.5,
"useRoughnessFromMainTexture": true,
"remapF0OnInterfaceChange": true,
"isTintEnabled": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"tintThickness": 1,
"name": "PBRClearCoat",
"priority": 100,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRIridescenceConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"minimumThickness": 100,
"maximumThickness": 400,
"indexOfRefraction": 1.3,
"name": "PBRIridescence",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRAnisotropicConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"direction": [
1,
0
],
"legacy": false,
"name": "PBRAnisotropic",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSheenConfiguration": {
"tags": null,
"isEnabled": false,
"linkSheenWithAlbedo": false,
"intensity": 1,
"color": [
1,
1,
1
],
"useRoughnessFromMainTexture": true,
"albedoScaling": false,
"name": "Sheen",
"priority": 120,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSubSurfaceConfiguration": {
"tags": null,
"isRefractionEnabled": false,
"isTranslucencyEnabled": false,
"isDispersionEnabled": false,
"isScatteringEnabled": false,
"_scatteringDiffusionProfileIndex": 0,
"refractionIntensity": 1,
"translucencyIntensity": 1,
"useAlbedoToTintRefraction": false,
"useAlbedoToTintTranslucency": false,
"indexOfRefraction": 1.5,
"_volumeIndexOfRefraction": -1,
"invertRefractionY": false,
"linkRefractionWithTransparency": false,
"minimumThickness": 0,
"maximumThickness": 1,
"useThicknessAsDepth": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"dispersion": 0,
"diffusionDistance": [
1,
1,
1
],
"useMaskFromThicknessTexture": false,
"useGltfStyleTextures": false,
"applyAlbedoAfterSubSurface": false,
"legacyTranslucency": false,
"name": "PBRSubSurface",
"priority": 130,
"resolveIncludes": false,
"registerForExtraEvents": true
},
"DetailMapConfiguration": {
"tags": null,
"diffuseBlendLevel": 1,
"roughnessBlendLevel": 1,
"bumpLevel": 1,
"normalBlendMethod": 0,
"isEnabled": false,
"name": "DetailMap",
"priority": 140,
"resolveIncludes": false,
"registerForExtraEvents": false
}
},
"customType": "BABYLON.PBRMaterial"
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 465 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 119 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

@ -0,0 +1,303 @@
{
"tags": null,
"directIntensity": 1,
"emissiveIntensity": 1,
"environmentIntensity": 1,
"specularIntensity": 1,
"disableBumpMap": false,
"albedoTexture": {
"tags": null,
"url": "assets/albedo.png",
"uOffset": 0,
"vOffset": 0,
"uScale": 500,
"vScale": 500,
"uAng": 0,
"vAng": 0,
"wAng": 0,
"uRotationCenter": 0.5,
"vRotationCenter": 0.5,
"wRotationCenter": 0.5,
"homogeneousRotationInUVTransform": false,
"isBlocking": true,
"name": "assets/albedo.png",
"metadata": {
"baseSize": {
"width": 512,
"height": 512
}
},
"hasAlpha": false,
"getAlphaFromRGB": false,
"level": 1,
"coordinatesIndex": 0,
"optimizeUVAllocation": true,
"coordinatesMode": 0,
"wrapU": 1,
"wrapV": 1,
"wrapR": 1,
"anisotropicFilteringLevel": 4,
"isCube": false,
"is3D": false,
"is2DArray": false,
"gammaSpace": true,
"invertZ": false,
"lodLevelInAlpha": false,
"lodGenerationOffset": 0,
"lodGenerationScale": 0,
"linearSpecularLOD": false,
"isRenderTarget": false,
"animations": [],
"invertY": true,
"samplingMode": 3,
"_useSRGBBuffer": false,
"noMipmap": false
},
"ambientTextureStrength": 1,
"ambientTextureImpactOnAnalyticalLights": 0,
"metallic": 0,
"roughness": 1,
"metallicF0Factor": 1,
"metallicReflectanceColor": [
1,
1,
1
],
"useOnlyMetallicFromMetallicReflectanceTexture": false,
"ambient": [
0,
0,
0
],
"albedo": [
1,
1,
1
],
"baseWeight": 1,
"reflectivity": [
1,
1,
1
],
"reflection": [
1,
1,
1
],
"emissive": [
0,
0,
0
],
"microSurface": 1,
"useLightmapAsShadowmap": false,
"useAlphaFromAlbedoTexture": false,
"forceAlphaTest": false,
"alphaCutOff": 0.4,
"useSpecularOverAlpha": true,
"useMicroSurfaceFromReflectivityMapAlpha": false,
"useRoughnessFromMetallicTextureAlpha": true,
"useRoughnessFromMetallicTextureGreen": false,
"useMetallnessFromMetallicTextureBlue": false,
"useAmbientOcclusionFromMetallicTextureRed": false,
"useAmbientInGrayScale": false,
"useAutoMicroSurfaceFromReflectivityMap": false,
"usePhysicalLightFalloff": true,
"useGLTFLightFalloff": false,
"useRadianceOverAlpha": true,
"useObjectSpaceNormalMap": false,
"useParallax": false,
"useParallaxOcclusion": false,
"parallaxScaleBias": 0.05,
"disableLighting": false,
"forceIrradianceInFragment": false,
"maxSimultaneousLights": 32,
"invertNormalMapX": false,
"invertNormalMapY": false,
"twoSidedLighting": false,
"useAlphaFresnel": false,
"useLinearAlphaFresnel": false,
"forceNormalForward": false,
"enableSpecularAntiAliasing": false,
"useHorizonOcclusion": true,
"useRadianceOcclusion": true,
"unlit": false,
"applyDecalMapAfterDetailMap": false,
"id": "27c18987-1817-46cd-bdb0-2328f55c7f8b",
"name": "ground",
"checkReadyOnEveryCall": false,
"checkReadyOnlyOnce": false,
"state": "",
"alpha": 1,
"backFaceCulling": true,
"cullBackFaces": true,
"sideOrientation": 1,
"_alphaMode": [
2
],
"_needDepthPrePass": false,
"disableDepthWrite": false,
"disableColorWrite": false,
"forceDepthWrite": false,
"depthFunction": 0,
"separateCullingPass": false,
"fogEnabled": true,
"pointSize": 1,
"zOffset": 0,
"zOffsetUnits": 0,
"pointsCloud": false,
"fillMode": 0,
"_isVertexOutputInvariant": false,
"transparencyMode": 0,
"stencil": {
"tags": null,
"func": 519,
"backFunc": 519,
"funcRef": 1,
"funcMask": 255,
"opStencilFail": 7680,
"opDepthFail": 7680,
"opStencilDepthPass": 7681,
"backOpStencilFail": 7680,
"backOpDepthFail": 7680,
"backOpStencilDepthPass": 7681,
"mask": 255,
"enabled": false
},
"uniqueId": 1711813881026,
"plugins": {
"PBRBRDFConfiguration": {
"tags": null,
"useEnergyConservation": true,
"useSmithVisibilityHeightCorrelated": true,
"useSphericalHarmonics": true,
"useSpecularGlossinessInputEnergyConservation": true,
"mixIblRadianceWithIrradiance": true,
"useLegacySpecularEnergyConservation": true,
"baseDiffuseModel": 0,
"dielectricSpecularModel": 0,
"conductorSpecularModel": 0,
"name": "PBRBRDF",
"priority": 90,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRClearCoatConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"roughness": 0,
"indexOfRefraction": 1.5,
"useRoughnessFromMainTexture": true,
"remapF0OnInterfaceChange": true,
"isTintEnabled": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"tintThickness": 1,
"name": "PBRClearCoat",
"priority": 100,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRIridescenceConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"minimumThickness": 100,
"maximumThickness": 400,
"indexOfRefraction": 1.3,
"name": "PBRIridescence",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRAnisotropicConfiguration": {
"tags": null,
"isEnabled": false,
"intensity": 1,
"direction": [
1,
0
],
"legacy": false,
"name": "PBRAnisotropic",
"priority": 110,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSheenConfiguration": {
"tags": null,
"isEnabled": false,
"linkSheenWithAlbedo": false,
"intensity": 1,
"color": [
1,
1,
1
],
"useRoughnessFromMainTexture": true,
"albedoScaling": false,
"name": "Sheen",
"priority": 120,
"resolveIncludes": false,
"registerForExtraEvents": false
},
"PBRSubSurfaceConfiguration": {
"tags": null,
"isRefractionEnabled": false,
"isTranslucencyEnabled": false,
"isDispersionEnabled": false,
"isScatteringEnabled": false,
"_scatteringDiffusionProfileIndex": 0,
"refractionIntensity": 1,
"translucencyIntensity": 1,
"useAlbedoToTintRefraction": false,
"useAlbedoToTintTranslucency": false,
"indexOfRefraction": 1.5,
"_volumeIndexOfRefraction": -1,
"invertRefractionY": false,
"linkRefractionWithTransparency": false,
"minimumThickness": 0,
"maximumThickness": 1,
"useThicknessAsDepth": false,
"tintColor": [
1,
1,
1
],
"tintColorAtDistance": 1,
"dispersion": 0,
"diffusionDistance": [
1,
1,
1
],
"useMaskFromThicknessTexture": false,
"useGltfStyleTextures": false,
"applyAlbedoAfterSubSurface": false,
"legacyTranslucency": false,
"name": "PBRSubSurface",
"priority": 130,
"resolveIncludes": false,
"registerForExtraEvents": true
},
"DetailMapConfiguration": {
"tags": null,
"diffuseBlendLevel": 1,
"roughnessBlendLevel": 1,
"bumpLevel": 1,
"normalBlendMethod": 0,
"isEnabled": false,
"name": "DetailMap",
"priority": 140,
"resolveIncludes": false,
"registerForExtraEvents": false
}
},
"customType": "BABYLON.PBRMaterial"
}

File diff suppressed because one or more lines are too long

103
gameEditor/src/App.ts Normal file
View File

@ -0,0 +1,103 @@
import { Scene } from "@babylonjs/core/scene";
import { Engine } from "@babylonjs/core/Engines/engine";
import { Vector3 } from "@babylonjs/core/Maths/math.vector";
import { SceneLoaderFlags } from "@babylonjs/core/Loading/sceneLoaderFlags";
import { HavokPlugin } from "@babylonjs/core/Physics/v2/Plugins/havokPlugin";
import HavokPhysics from "@babylonjs/havok";
import "@babylonjs/core/Loading/loadingScreen";
import "@babylonjs/core/Loading/Plugins/babylonFileLoader";
import "@babylonjs/core/Cameras/universalCamera";
import "@babylonjs/core/Meshes/groundMesh";
import "@babylonjs/core/Lights/directionalLight";
import "@babylonjs/core/Lights/Shadows/shadowGeneratorSceneComponent";
import "@babylonjs/core/Materials/PBR/pbrMaterial";
import "@babylonjs/core/Materials/standardMaterial";
import "@babylonjs/core/XR/features/WebXRDepthSensing";
import "@babylonjs/core/Rendering/depthRendererSceneComponent";
import "@babylonjs/core/Rendering/prePassRendererSceneComponent";
import "@babylonjs/core/Materials/Textures/Loaders/envTextureLoader";
import "@babylonjs/core/Physics";
import "@babylonjs/materials/sky";
import { loadScene } from "babylonjs-editor-tools";
/**
* We import the map of all scripts attached to objects in the editor.
* This will allow the loader from `babylonjs-editor-tools` to attach the scripts to the
* loaded objects (scene, meshes, transform nodes, lights, cameras, etc.).
*/
import { scriptsMap } from "./scripts";
export class App {
private _canvas: HTMLCanvasElement;
private _engine: Engine | null = null;
private _scene: Scene | null = null;
constructor() {
const canvasElement = document.getElementById('canvas') as HTMLCanvasElement;
if (!canvasElement) {
throw new Error('Canvas element not found');
}
this._canvas = canvasElement;
}
public async init(): Promise<void> {
this._engine = new Engine(this._canvas, true, {
stencil: true,
antialias: true,
audioEngine: true,
adaptToDeviceRatio: true,
disableWebGL2Support: false,
useHighPrecisionFloats: true,
powerPreference: "high-performance",
failIfMajorPerformanceCaveat: false,
});
this._scene = new Scene(this._engine);
await this._handleLoad();
// Handle window resize
const handleResize = () => {
this._engine?.resize();
};
window.addEventListener("resize", handleResize);
// Start render loop
this._engine.runRenderLoop(() => {
this._scene?.render();
});
}
private async _handleLoad(): Promise<void> {
if (!this._engine || !this._scene) {return;}
const havok = await HavokPhysics();
this._scene.enablePhysics(new Vector3(0, -981, 0), new HavokPlugin(true, havok));
SceneLoaderFlags.ForceFullSceneLoadingForIncremental = true;
await loadScene("/scene/", "example.babylon", this._scene, scriptsMap, {
quality: "high",
});
if (this._scene.activeCamera) {
this._scene.activeCamera.attachControl();
}
}
public dispose(): void {
this._scene?.dispose();
this._engine?.dispose();
}
}

8
gameEditor/src/main.ts Normal file
View File

@ -0,0 +1,8 @@
import './style.css';
import { App } from './App';
// Initialize the app when DOM is loaded
document.addEventListener('DOMContentLoaded', () => {
const app = new App();
app.init();
});

17
gameEditor/src/scripts.ts Normal file
View File

@ -0,0 +1,17 @@
/**
* Generated by Babylon.js Editor
*/
import { loadScene, scriptsDictionary, scriptAssetsCache, _applyScriptsForObject, _removeRegisteredScriptInstance, _preloadScriptsAssets } from "babylonjs-editor-tools";
import * as scripts_editorScripts_AsteroidComponent from "./scripts/editorScripts/AsteroidComponent";
import * as scripts_editorScripts_ShipComponent from "./scripts/editorScripts/ShipComponent";
import * as scripts_editorScripts_BaseComponent from "./scripts/editorScripts/BaseComponent";
export const scriptsMap = {
"scripts/editorScripts/AsteroidComponent.ts": scripts_editorScripts_AsteroidComponent,
"scripts/editorScripts/ShipComponent.ts": scripts_editorScripts_ShipComponent,
"scripts/editorScripts/BaseComponent.ts": scripts_editorScripts_BaseComponent
};
export { loadScene, scriptsDictionary, scriptAssetsCache, _applyScriptsForObject, _removeRegisteredScriptInstance, _preloadScriptsAssets };

View File

@ -0,0 +1,20 @@
import { Mesh } from "@babylonjs/core/Meshes/mesh";
import { Vector3 } from "@babylonjs/core/Maths/math.vector";
import { IScript, visibleAsNumber } from "babylonjs-editor-tools";
export default class SceneComponent implements IScript {
@visibleAsNumber("Speed", {
min: 0,
max: 0.1,
})
private _speed: number = 0.04;
public constructor(public mesh: Mesh) {}
public onStart(): void {}
public onUpdate(): void {
this.mesh.rotate(Vector3.UpReadOnly, this._speed * this.mesh.getScene().getAnimationRatio());
}
}

1
gameEditor/src/style.css Normal file
View File

@ -0,0 +1 @@
@import 'tailwindcss';

13
gameEditor/tsconfig.json Normal file
View File

@ -0,0 +1,13 @@
{
"compilerOptions": {
"target": "ESNext",
"module": "ESNext",
"moduleResolution": "bundler",
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
"types": ["vite/client"],
"noEmit": true,
"isolatedModules": true,
"experimentalDecorators": true
}
}

15
gameEditor/vite.config.ts Normal file
View File

@ -0,0 +1,15 @@
import tailwindcss from '@tailwindcss/vite';
import { defineConfig } from 'vite';
export default defineConfig({
plugins: [tailwindcss()],
server: {
port: 3000,
},
optimizeDeps: {
exclude: ["@babylonjs/havok"],
},
build: {
target: 'esnext',
},
});