[NEW] Surfaces Importer (Custom Terrain Surfaces) - AlphaGaming7780/ExtraAssetsImporter GitHub Wiki
Folder structure
Under the Surfaces root, each category (Brick
, Concrete
, Grass
, Ground
, Misc
, Pavement
, Rock
, Sand
, Tiles
, Water
& Wood
) has subfolders for each surface asset. For example:
Surfaces/
└── Ground/
├── Gravel/
│ ├── _BaseColorMap.png
│ ├── _NormalMap.png
│ ├── _MaskMap.png
│ ├── icon.png
│ ├── Material.json
│ └── Prefab.json
└── Asphalt/
├── _BaseColorMap.png
├── _NormalMap.png
├── _MaskMap.png
├── Material.json
└── Prefab.json
(etc.)
_BaseColorMap.png
– Optional. The base color texture for the surface (diffuse/albedo)._NormalMap.png
– Optional. Normal map texture for the surface. If provided, it will be imported and applied; otherwise the surface will have no normal - mapping._MaskMap.png
– Optional. Mask map texture (RGBA channels typically encode Metallic, Smoothness, etc., depending on the shader). If provided, it will be imported and applied.icon.png
– Optional. A custom icon for this surface in the UI. If absent, the importer will auto-generate a thumbnail icon from the base color texture (resized to 128×128 pixels).Material.json
– Optional.Prefab.json
– Optional.
Prefab.json
{
"Components": {},
"m_Color": "RGBA(1, 1, 1, 1)",
"m_EdgeColor": "RGBA(1, 1, 1, 1)",
"m_SelectionColor": "RGBA(1, 1, 1, 1)",
"m_SelectionEdgeColor": "RGBA(1, 1, 1, 1)"
}
Material.json
{
"MaterialName": null,
"ShaderName": null,
"Float": {
"_Metallic": 1,
"_Smoothness": 1,
"colossal_DecalLayerMask": 1,
"_DecalColorMask0": 15,
"_DecalColorMask1": 15,
"_DecalColorMask2": 11,
"_DecalColorMask3": 8,
"_DrawOrder": 0,
"_AffectAlbedo": 1,
"_AffectNormal": 1,
"_AffectMetal": 1,
"_AffectSmoothness": 1,
"_DecalMeshBiasType": 0,
"_DecalMeshDepthBias": 0,
"_DecalMeshViewBias": 0,
"_DecalStencilRef": 16,
"_DecalStencilWriteMask": 16,
"_MetallicAlphaSource": 0,
"_MetallicOpacity": 1,
"_NormalAlphaSource": 0,
"_NormalOpacity": 1,
"colossal_EdgeNormal": 0.5,
"colossal_UVScale": 0.2
},
"Vector": {
"_BaseColor": {
"x": 1,
"y": 1,
"z": 1,
"w": 1
},
"unity_Lightmaps_ST": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"unity_Lightmaps_TexelSize": {
"x": 1,
"y": 1,
"z": 1,
"w": 1
},
"unity_Lightmaps_HDR": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"unity_LightmapsInd_ST": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"unity_LightmapsInd_TexelSize": {
"x": 1,
"y": 1,
"z": 1,
"w": 1
},
"unity_LightmapsInd_HDR": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"unity_ShadowMasks_ST": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"unity_ShadowMasks_TexelSize": {
"x": 1,
"y": 1,
"z": 1,
"w": 1
},
"unity_ShadowMasks_HDR": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"_BaseColorMap_ST": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"_BaseColorMap_TexelSize": {
"x": 1,
"y": 1,
"z": 1,
"w": 1
},
"_BaseColorMap_HDR": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"_MaskMap_ST": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"_MaskMap_TexelSize": {
"x": 1,
"y": 1,
"z": 1,
"w": 1
},
"_MaskMap_HDR": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"_NormalMap_ST": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"_NormalMap_TexelSize": {
"x": 1,
"y": 1,
"z": 1,
"w": 1
},
"_NormalMap_HDR": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"DefaultPVTStack_atlasParams0": {
"x": 0,
"y": 0,
"z": 0,
"w": 0
},
"DefaultPVTStack_atlasParams1": {
"x": 0,
"y": 0,
"z": 0,
"w": 0
},
"Vector2_a453d92aee7242ae912e8d91edfd2c50": {
"x": 1,
"y": 0.5,
"z": 0,
"w": 0
},
"colossal_AreaParameters": {
"x": 0.5,
"y": 4,
"z": 0,
"w": 0
},
"colossal_EdgeFadeRange": {
"x": 0.75,
"y": 0.25,
"z": 0,
"w": 0
},
"colossal_EdgeNoise": {
"x": 0.5,
"y": 0.5,
"z": 0,
"w": 0
},
"DefaultPVTStack_ST": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
},
"DefaultPVTStack_TexelSize": {
"x": 1,
"y": 1,
"z": 1,
"w": 1
},
"DefaultPVTStack_HDR": {
"x": 1,
"y": 1,
"z": 0,
"w": 0
}
}
}