diff --git a/Content/Materials/dev/slick.flax b/Content/Materials/common/slick.flax similarity index 100% rename from Content/Materials/dev/slick.flax rename to Content/Materials/common/slick.flax diff --git a/Content/Settings/GameSettings/BrushMaterialAssets.json b/Content/Settings/GameSettings/BrushMaterialAssets.json deleted file mode 100644 index 21f8ea9..0000000 --- a/Content/Settings/GameSettings/BrushMaterialAssets.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "ID": "29a0b0c54b40eb3e6857ffb4c9cab71e", - "TypeName": "Game.BrushMaterialList", - "EngineBuild": 6224, - "Data": { - "materialAssets": [ - { - "name": "common/slick", - "asset": "c27c22ec429a17e827421e9a82ac79e4" - }, - { - "name": "dev/dev_128_gray", - "asset": "cfe2d8d64700dc00dc2c5088ee028477" - }, - { - "name": "dev/dev_128_red", - "asset": "a75d425f40ef7ba5df0fdb8d470e8a78" - } - ] -} -} \ No newline at end of file diff --git a/Source/Game/Q3MapImporter.cs b/Source/Game/Q3MapImporter.cs index 024ee98..7590fb7 100644 --- a/Source/Game/Q3MapImporter.cs +++ b/Source/Game/Q3MapImporter.cs @@ -181,27 +181,15 @@ namespace Game if (!oneMesh) { + Dictionary materials = new Dictionary(); { - BrushMaterialList brushMaterialList = Engine.GetCustomSettings("BrushMaterials") + BrushMaterialList brushMaterialList = Engine.GetCustomSettings("BrushMaterialsLegacy") ?.CreateInstance(); if (brushMaterialList != null) { foreach (var m in brushMaterialList.materialAssets) materials.Add(m.name, m.asset); - Console.Print("materials dictionary with " + materials.Count + " entries"); - } - else - { - Console.Print("no materials dictionary found"); - } - - BrushMaterialList brushMaterialList2 = Engine.GetCustomSettings("BrushMaterialsLegacy") - ?.CreateInstance(); - if (brushMaterialList2 != null) - { - foreach (var m in brushMaterialList2.materialAssets) - materials.Add(m.name, m.asset); } } @@ -238,9 +226,18 @@ namespace Game if (!materials.TryGetValue(textureName, out var brushMaterial)) { - Console.Print("Material '" + textureName + "' not found for brush"); - materials.Add(textureName, material); - brushMaterial = material; + var workDir = Directory.GetCurrentDirectory(); + var matBasePath = Path.Combine(workDir, "Content", "Materials"); + var assetPath = Path.Combine(matBasePath, textureName + ".flax"); + brushMaterial = Content.Load(assetPath); + if (brushMaterial != null) + materials.Add(textureName, brushMaterial); + else + { + Console.Print("Material '" + textureName + "' not found for brush"); + materials.Add(textureName, material); + brushMaterial = material; + } } brushMaterials.Add(textureName, brushMaterial); }