diff --git a/.cursor/rules/aigame-basics.mdc b/.cursor/rules/aigame-basics.mdc index 846abf2..b3a6892 100644 --- a/.cursor/rules/aigame-basics.mdc +++ b/.cursor/rules/aigame-basics.mdc @@ -15,7 +15,9 @@ alwaysApply: true - sound → `Doc/ResDesc_Sound.md` - effect → `Doc/ResDesc_Effect.md` -2. **UI 自动生成(必须)**:业务面板使用 JSON→Prefab 管线,不要用运行时临时代码拼业务 UI 替代 Prefab。 +2. **3D 游戏网格**:导出 FBX 为 Y-up、原点在底面中点、**局部 -Z 为正面**。摆场景时让 -Z 朝向目标,不要用 Unity 默认 +Z forward。详见 `GameResProductProc.md` 附录 B。 + +3. **UI 自动生成(必须)**:业务面板使用 JSON→Prefab 管线,不要用运行时临时代码拼业务 UI 替代 Prefab。 - 总览:`Doc/UI_AutoGen_Overview.md` - 提示词契约:`Doc/Rule/UIGenerationPrompt.md` - 规则详解:`Doc/Rule/UIGenerationRules.md` diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..c4860d3 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "cmake.sourceDirectory": "D:/UD/AI/AIGame/AIServer" +} \ No newline at end of file diff --git a/AIClient/AgentScripts/BuildTownSquare.cs b/AIClient/AgentScripts/BuildTownSquare.cs new file mode 100644 index 0000000..765167d --- /dev/null +++ b/AIClient/AgentScripts/BuildTownSquare.cs @@ -0,0 +1,393 @@ +#if UNITY_EDITOR +using System.Collections.Generic; +using System.IO; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.Rendering; +using UnityEngine.SceneManagement; +using YooAsset.Editor; + +/// +/// 把 TownSquare 8 类分件做成 Prefab,拼成可加载场景,并登记 Art 收集。 +/// 由 Unity Pipeline: unity command run_script --file AgentScripts/BuildTownSquare.cs --entry BuildTownSquare.Run +/// +public static class BuildTownSquare +{ + const string SceneRoot = "Assets/Bundles/Scenes/Town/TownSquare"; + const string ScenePath = SceneRoot + "/TownSquare.unity"; + const string ScenePrefabPath = SceneRoot + "/TownSquare.prefab"; + const string XPbrShaderName = "Test/XPbr"; + const string ArtPackage = "Art"; + + static readonly string[] Parts = + { + "ground", "shop", "tree", "lamp", "board", "fountain", "bench", "bush" + }; + + public static string Run() + { + AssetDatabase.Refresh(); + Directory.CreateDirectory(SceneRoot.Replace("Assets/", Application.dataPath + "/../Assets/").Replace('/', Path.DirectorySeparatorChar)); + + var reports = new List(); + foreach (var name in Parts) + { + reports.Add(EnsurePartPrefab(name)); + } + + reports.Add(AssembleScenePrefab()); + reports.Add(EnsurePlayableScene()); + reports.Add(EnsureArtCollector()); + AssetDatabase.SaveAssets(); + AssetDatabase.Refresh(); + return string.Join(" | ", reports); + } + + static string EnsurePartPrefab(string name) + { + var dir = $"{SceneRoot}/{name}"; + var fbxPath = $"{dir}/{name}.fbx"; + var matPath = $"{dir}/{name}.mat"; + var basePath = $"{dir}/{name}_base.png"; + var mixPath = $"{dir}/{name}_mix.png"; + var prefabPath = $"{dir}/{name}.prefab"; + + if (!File.Exists(fbxPath)) + return $"{name}: missing fbx"; + + ConfigureTextures(basePath, mixPath); + ConfigureFbx(fbxPath, File.Exists(matPath), name); + + var xpbr = Shader.Find(XPbrShaderName); + var urpLit = Shader.Find("Universal Render Pipeline/Lit") ?? Shader.Find("Standard"); + var baseMap = AssetDatabase.LoadAssetAtPath(basePath); + var mixMap = AssetDatabase.LoadAssetAtPath(mixPath); + var useXpbr = xpbr != null && mixMap != null && baseMap != null; + var shader = useXpbr ? xpbr : urpLit; + + var mat = AssetDatabase.LoadAssetAtPath(matPath); + if (mat == null) + { + mat = new Material(shader); + AssetDatabase.CreateAsset(mat, matPath); + } + else + { + mat.shader = shader; + } + + if (useXpbr) + { + if (mat.HasProperty("_MainTex")) mat.SetTexture("_MainTex", baseMap); + if (mat.HasProperty("_MixTex")) mat.SetTexture("_MixTex", mixMap); + if (mat.HasProperty("_BaseColor")) mat.SetColor("_BaseColor", Color.white); + } + else if (baseMap != null && mat.HasProperty("_BaseMap")) + { + mat.SetTexture("_BaseMap", baseMap); + } + + EditorUtility.SetDirty(mat); + + var modelRoot = AssetDatabase.LoadAssetAtPath(fbxPath); + if (modelRoot == null) + return $"{name}: fbx not loaded"; + + var instance = (GameObject)PrefabUtility.InstantiatePrefab(modelRoot); + instance.name = name; + foreach (var renderer in instance.GetComponentsInChildren()) + renderer.sharedMaterial = mat; + + UprightAndSit(instance, name); + if (name == "ground") + EnsureGroundCollider(instance); + PrefabUtility.SaveAsPrefabAsset(instance, prefabPath); + Object.DestroyImmediate(instance); + return name == "ground" ? $"{name}.prefab+MeshCollider" : $"{name}.prefab"; + } + + static void ConfigureTextures(string basePath, string mixPath) + { + ConfigureOneTexture(basePath, srgb: true, alpha: true); + ConfigureOneTexture(mixPath, srgb: false, alpha: false); + } + + static void ConfigureOneTexture(string path, bool srgb, bool alpha) + { + if (!File.Exists(path)) return; + var importer = AssetImporter.GetAtPath(path) as TextureImporter; + if (importer == null) return; + importer.textureType = TextureImporterType.Default; + importer.sRGBTexture = srgb; + importer.mipmapEnabled = true; + importer.alphaIsTransparency = alpha; + importer.SaveAndReimport(); + } + + static void ConfigureFbx(string fbxPath, bool hasMat, string name) + { + var model = AssetImporter.GetAtPath(fbxPath) as ModelImporter; + if (model == null) return; + model.globalScale = 1f; + model.useFileScale = false; + model.bakeAxisConversion = true; + model.materialImportMode = hasMat + ? ModelImporterMaterialImportMode.ImportViaMaterialDescription + : ModelImporterMaterialImportMode.None; + model.meshCompression = ModelImporterMeshCompression.Medium; + // MeshCollider 烹饪需要可读网格;其它分件保持不可读。 + model.isReadable = name == "ground"; + model.addCollider = false; + model.SaveAndReimport(); + } + + static void EnsureGroundCollider(GameObject instance) + { + var added = 0; + foreach (var filter in instance.GetComponentsInChildren()) + { + if (filter.sharedMesh == null) continue; + var col = filter.GetComponent(); + if (col == null) + col = filter.gameObject.AddComponent(); + col.sharedMesh = filter.sharedMesh; + col.convex = false; + added++; + } + if (added == 0) + throw new System.InvalidOperationException("ground has no mesh for MeshCollider"); + } + + static void UprightAndSit(GameObject instance, string name) + { + instance.transform.localPosition = Vector3.zero; + instance.transform.localScale = Vector3.one; + instance.transform.localRotation = Quaternion.identity; + + var bounds = MeshBounds(instance); + var target = TargetSize(name, bounds); + var current = CurrentSize(name, bounds); + if (target > 0.01f && current > 0.01f) + instance.transform.localScale = Vector3.one * (target / current); + + // 游戏 FBX 原点已在底面中点,缩放后仍贴地;position 保持 0。 + } + + static float TargetSize(string name, Bounds bounds) + { + switch (name) + { + case "ground": return 18f; + case "shop": return 5.5f; + case "tree": return 5.5f; + case "lamp": return 3.6f; + case "board": return 2.4f; + case "fountain": return 3.2f; + case "bench": return 1.8f; + case "bush": return 0.9f; + default: return 1f; + } + } + + static float CurrentSize(string name, Bounds bounds) + { + if (name == "ground" || name == "bench") + return Mathf.Max(bounds.size.x, bounds.size.z); + return bounds.size.y; + } + + static Bounds MeshBounds(GameObject root) + { + Bounds bounds = default; + var has = false; + foreach (var r in root.GetComponentsInChildren()) + { + if (!has) + { + bounds = r.bounds; + has = true; + } + else bounds.Encapsulate(r.bounds); + } + return has ? bounds : new Bounds(root.transform.position, Vector3.one * 0.01f); + } + + static string AssembleScenePrefab() + { + var root = new GameObject("TownSquare"); + var ground = Place(root.transform, "ground", Vector3.zero, 0f); + Physics.SyncTransforms(); + + // 总览 L 形;游戏网格正面是局部 -Z,用 YawFrontToward 对准广场中心。 + // 水平位置按总览,Y 取地表 MeshCollider 碰撞高度。 + var sits = new List(); + void Sit(string part, Vector3 xz, float yaw, string instanceName = null) + { + var y = SampleGroundY(ground, xz.x, xz.z); + sits.Add($"{instanceName ?? part}={y:F3}"); + Place(root.transform, part, new Vector3(xz.x, y, xz.z), yaw, instanceName); + } + + var shopLeft = new Vector3(-6.3f, 0f, 3.4f); + var shopBack = new Vector3(0.6f, 0f, 6.7f); + Sit("shop", shopLeft, YawFrontToward(shopLeft, Vector3.zero), "shop_left"); + Sit("shop", shopBack, YawFrontToward(shopBack, Vector3.zero), "shop_back"); + Sit("tree", new Vector3(-8.0f, 0f, 5.2f), 15f, "tree_left"); + Sit("tree", new Vector3(7.5f, 0f, 6.2f), -15f, "tree_right"); + var boardPos = new Vector3(5.0f, 0f, 6.5f); + Sit("board", boardPos, YawFrontToward(boardPos, Vector3.zero)); + Sit("fountain", new Vector3(6.1f, 0f, 0.6f), 0f); + Sit("lamp", new Vector3(-6.4f, 0f, -2.8f), 0f, "lamp_front_left"); + Sit("lamp", new Vector3(2.7f, 0f, 6.6f), 10f, "lamp_back"); + Sit("lamp", new Vector3(8.1f, 0f, 1.3f), -15f, "lamp_right"); + var benchLeft = new Vector3(-5.2f, 0f, -5.2f); + var benchRight = new Vector3(5.6f, 0f, -4.2f); + Sit("bench", benchLeft, YawFrontToward(benchLeft, Vector3.zero), "bench_left"); + Sit("bench", benchRight, YawFrontToward(benchRight, Vector3.zero), "bench_right"); + Sit("bush", new Vector3(-6.2f, 0f, -5.8f), 0f, "bush_bench_l1"); + Sit("bush", new Vector3(-4.2f, 0f, -6.0f), 40f, "bush_bench_l2"); + Sit("bush", new Vector3(6.6f, 0f, -4.8f), 10f, "bush_bench_r"); + Sit("bush", new Vector3(7.4f, 0f, 2.0f), 25f, "bush_fountain_1"); + Sit("bush", new Vector3(4.8f, 0f, 1.4f), -10f, "bush_fountain_2"); + Sit("bush", new Vector3(7.0f, 0f, 0.2f), 20f, "bush_fountain_3"); + Sit("bush", new Vector3(6.6f, 0f, 6.8f), 0f, "bush_board"); + + PrefabUtility.SaveAsPrefabAsset(root, ScenePrefabPath); + Object.DestroyImmediate(root); + return "TownSquare.prefab sit=[" + string.Join(",", sits) + "]"; + } + + static GameObject Place(Transform parent, string part, Vector3 pos, float yaw, string instanceName = null) + { + var prefab = AssetDatabase.LoadAssetAtPath($"{SceneRoot}/{part}/{part}.prefab"); + if (prefab == null) + throw new System.InvalidOperationException($"missing part prefab {part}"); + var go = (GameObject)PrefabUtility.InstantiatePrefab(prefab, parent); + go.name = instanceName ?? part; + go.transform.position = pos; + go.transform.rotation = Quaternion.Euler(0f, yaw, 0f) * go.transform.rotation; + return go; + } + + static float SampleGroundY(GameObject ground, float x, float z) + { + if (ground == null) + return 0f; + Physics.SyncTransforms(); + var ray = new Ray(new Vector3(x, 80f, z), Vector3.down); + var bestDist = float.MaxValue; + var y = 0f; + var hitAny = false; + foreach (var col in ground.GetComponentsInChildren()) + { + if (col == null || !col.enabled) continue; + if (!col.Raycast(ray, out var hit, 160f)) continue; + if (hit.distance >= bestDist) continue; + bestDist = hit.distance; + y = hit.point.y; + hitAny = true; + } + if (!hitAny) + Debug.LogWarning($"[BuildTownSquare] ground miss at ({x:F2}, {z:F2}), y=0"); + return y; + } + + static float YawFrontToward(Vector3 from, Vector3 to) + { + // 导出网格正面是局部 -Z(不是 Unity 默认 +Z)。让 +Z 背对目标,则 -Z 朝向目标。 + var away = from - to; + away.y = 0f; + if (away.sqrMagnitude < 0.0001f) return 0f; + return Quaternion.LookRotation(away).eulerAngles.y; + } + + static string EnsurePlayableScene() + { + var scene = EditorSceneManager.NewScene(NewSceneSetup.EmptyScene, NewSceneMode.Single); + + var lightGo = new GameObject("Directional Light"); + var light = lightGo.AddComponent(); + light.type = LightType.Directional; + light.color = new Color(1f, 0.96f, 0.88f); + light.intensity = 1.05f; + light.shadows = LightShadows.Soft; + lightGo.transform.rotation = Quaternion.Euler(50f, -30f, 0f); + + var camGo = new GameObject("Main Camera"); + camGo.tag = "MainCamera"; + var cam = camGo.AddComponent(); + cam.clearFlags = CameraClearFlags.SolidColor; + cam.backgroundColor = new Color(0.78f, 0.88f, 0.94f); + cam.fieldOfView = 40f; + cam.nearClipPlane = 0.1f; + cam.farClipPlane = 80f; + camGo.AddComponent(); + camGo.transform.position = new Vector3(0f, 12f, -22f); + camGo.transform.rotation = Quaternion.Euler(28f, 0f, 0f); + + var plaza = AssetDatabase.LoadAssetAtPath(ScenePrefabPath); + PrefabUtility.InstantiatePrefab(plaza); + + RenderSettings.ambientMode = AmbientMode.Trilight; + RenderSettings.ambientSkyColor = new Color(0.55f, 0.7f, 0.85f); + RenderSettings.ambientEquatorColor = new Color(0.5f, 0.52f, 0.48f); + RenderSettings.ambientGroundColor = new Color(0.35f, 0.32f, 0.28f); + + EditorSceneManager.SaveScene(scene, ScenePath); + return ScenePath; + } + + static string EnsureArtCollector() + { + var setting = BundleCollectorSettingData.Setting; + setting.ShowPackageView = true; + var package = setting.Packages.Find(p => p.PackageName == ArtPackage); + if (package == null) + package = BundleCollectorSettingData.CreatePackage(ArtPackage); + + package.PackageDesc = "角色/场景美术"; + package.EnableAddressable = true; + package.SupportExtensionless = true; + package.AutoCollectShaders = true; + package.IgnoreRuleName = nameof(NormalIgnoreRule); + BundleCollectorSettingData.ModifyPackage(package); + + var group = package.Groups.Find(g => g.GroupName == "Scenes"); + if (group == null) + group = BundleCollectorSettingData.CreateGroup(package, "Scenes"); + group.ActiveRuleName = nameof(EnableGroup); + group.AssetTags = "art"; + BundleCollectorSettingData.ModifyGroup(package, group); + + const string collectPath = "Assets/Bundles/Scenes"; + var collector = group.Collectors.Find(c => c.CollectPath == collectPath); + if (collector == null) + { + collector = new BundleCollector + { + CollectPath = collectPath, + CollectorGUID = AssetDatabase.AssetPathToGUID(collectPath), + CollectorType = ECollectorType.MainAssetCollector, + AddressRuleName = nameof(AddressByFileName), + PackRuleName = nameof(PackDirectory), + FilterRuleName = nameof(CollectAll), + AssetTags = "art", + }; + BundleCollectorSettingData.CreateCollector(group, collector); + } + else + { + collector.CollectorGUID = AssetDatabase.AssetPathToGUID(collectPath); + collector.AddressRuleName = nameof(AddressByFileName); + collector.PackRuleName = nameof(PackDirectory); + collector.FilterRuleName = nameof(CollectAll); + BundleCollectorSettingData.ModifyCollector(group, collector); + } + + package.CheckConfigError(); + BundleCollectorSettingData.SaveFile(); + return $"art collect={collectPath}"; + } +} +#endif diff --git a/AIClient/AgentScripts/FrameTownSquare.cs b/AIClient/AgentScripts/FrameTownSquare.cs new file mode 100644 index 0000000..ad71a3d --- /dev/null +++ b/AIClient/AgentScripts/FrameTownSquare.cs @@ -0,0 +1,18 @@ +using UnityEditor; +using UnityEngine; + +public static class FrameTownSquare +{ + public static string Run() + { + SceneView.FocusWindowIfItsOpen(); + var v = SceneView.lastActiveSceneView; + if (v == null && SceneView.sceneViews.Count > 0) + v = SceneView.sceneViews[0] as SceneView; + if (v == null) + return "no scene view"; + v.LookAt(new Vector3(0f, 1.0f, 0.5f), Quaternion.Euler(38f, 12f, 0f), 22f); + v.Repaint(); + return "framed"; + } +} diff --git a/AIClient/AgentScripts/InspectTownSquare.cs b/AIClient/AgentScripts/InspectTownSquare.cs new file mode 100644 index 0000000..afd968c --- /dev/null +++ b/AIClient/AgentScripts/InspectTownSquare.cs @@ -0,0 +1,35 @@ +using System.Text; +using UnityEngine; +using UnityEngine.SceneManagement; + +public static class InspectTownSquare +{ + public static string Run() + { + var sb = new StringBuilder(); + var root = GameObject.Find("TownSquare"); + if (root == null) + return "no TownSquare"; + foreach (Transform t in root.transform) + { + var b = default(Bounds); + var has = false; + foreach (var r in t.GetComponentsInChildren()) + { + if (!has) { b = r.bounds; has = true; } + else b.Encapsulate(r.bounds); + } + var cols = t.GetComponentsInChildren().Length; + sb.AppendFormat( + "{0} pos={1} euler={2} scale={3} boundsC={4} size={5} meshCol={6}\n", + t.name, + t.position, + t.eulerAngles, + t.localScale, + has ? b.center : Vector3.zero, + has ? b.size : Vector3.zero, + cols); + } + return sb.ToString(); + } +} diff --git a/AIClient/Assets/BundleCollectorSetting.asset b/AIClient/Assets/BundleCollectorSetting.asset index a5d6880..b22fe73 100644 --- a/AIClient/Assets/BundleCollectorSetting.asset +++ b/AIClient/Assets/BundleCollectorSetting.asset @@ -60,3 +60,16 @@ MonoBehaviour: FilterRuleName: CollectAll AssetTags: art UserData: + - GroupName: Scenes + GroupDesc: + AssetTags: art + ActiveRuleName: EnableGroup + Collectors: + - CollectPath: Assets/Bundles/Scenes + CollectorGUID: b0ed5e8d619c68a4fb7a5375f27dc6d8 + CollectorType: 0 + AddressRuleName: AddressByFileName + PackRuleName: PackDirectory + FilterRuleName: CollectAll + AssetTags: art + UserData: diff --git a/AIClient/Assets/Bundles/Characters/MaleExplorer/concept.png b/AIClient/Assets/Bundles/Characters/MaleExplorer/concept.png deleted file mode 100644 index b4891b5..0000000 Binary files a/AIClient/Assets/Bundles/Characters/MaleExplorer/concept.png and /dev/null differ diff --git a/AIClient/Assets/Bundles/Characters/Textures.meta b/AIClient/Assets/Bundles/Characters/zhaoyun.meta similarity index 77% rename from AIClient/Assets/Bundles/Characters/Textures.meta rename to AIClient/Assets/Bundles/Characters/zhaoyun.meta index 15c7fca..7650f10 100644 --- a/AIClient/Assets/Bundles/Characters/Textures.meta +++ b/AIClient/Assets/Bundles/Characters/zhaoyun.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 2579b7f8d4760cf479310562e005a7b4 +guid: 2a492169ea402324cb65c69fa774539b folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/AIClient/Assets/Bundles/Characters/zhaoyun/zhaoyun.glb b/AIClient/Assets/Bundles/Characters/zhaoyun/zhaoyun.glb new file mode 100644 index 0000000..8280e50 Binary files /dev/null and b/AIClient/Assets/Bundles/Characters/zhaoyun/zhaoyun.glb differ diff --git a/AIClient/Assets/Bundles/Characters/zhaoyun/zhaoyun.glb.meta b/AIClient/Assets/Bundles/Characters/zhaoyun/zhaoyun.glb.meta new file mode 100644 index 0000000..dc1718a --- /dev/null +++ b/AIClient/Assets/Bundles/Characters/zhaoyun/zhaoyun.glb.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 23d4b07af196bbe46b8281d93f574119 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Characters/Models.meta b/AIClient/Assets/Bundles/Objects.meta similarity index 77% rename from AIClient/Assets/Bundles/Characters/Models.meta rename to AIClient/Assets/Bundles/Objects.meta index d4463bf..547471d 100644 --- a/AIClient/Assets/Bundles/Characters/Models.meta +++ b/AIClient/Assets/Bundles/Objects.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 3bf2ea9f18173e349a1d79eadbc7b486 +guid: 9f5074b45542d8447a00910145a4ff0d folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/AIClient/Assets/Bundles/Characters/Prefabs.meta b/AIClient/Assets/Bundles/Scenes/Town.meta similarity index 77% rename from AIClient/Assets/Bundles/Characters/Prefabs.meta rename to AIClient/Assets/Bundles/Scenes/Town.meta index 3970f95..1814351 100644 --- a/AIClient/Assets/Bundles/Characters/Prefabs.meta +++ b/AIClient/Assets/Bundles/Scenes/Town.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 0575d8260b338e84aacc3f29aab3cc72 +guid: 9f729a8fb8375d8459357197a27fc8ed folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare.meta new file mode 100644 index 0000000..d12f775 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e087a8433113717479c10d798ca7d58a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.prefab b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.prefab new file mode 100644 index 0000000..2906915 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.prefab @@ -0,0 +1,1230 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &9152170130150289587 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7763301070212305587} + m_Layer: 0 + m_Name: TownSquare + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7763301070212305587 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9152170130150289587} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 4293817592590564154} + - {fileID: 8441515262735298683} + - {fileID: 7949109967394972703} + - {fileID: 8720237554403338166} + - {fileID: 7722727046218954797} + - {fileID: 1224333897956492147} + - {fileID: 1379368979238596724} + - {fileID: 3356811204385584102} + - {fileID: 9001004293040969737} + - {fileID: 3496461176028689788} + - {fileID: 8206890212530257200} + - {fileID: 8142382449011867195} + - {fileID: 3570982630662476568} + - {fileID: 7864698265470887858} + - {fileID: 4033915300871063138} + - {fileID: 1152728081318508526} + - {fileID: 8400083889455037229} + - {fileID: 1431965699284209203} + - {fileID: 8584653561546441762} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &719836235406907081 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 8472501788905752657, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_Name + value: bush_board + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.x + value: 6.6 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.y + value: 0.58455855 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.z + value: 6.8 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} +--- !u!4 &8584653561546441762 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + m_PrefabInstance: {fileID: 719836235406907081} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &742135280312805830 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 8472501788905752657, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_Name + value: bush_fountain_2 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.x + value: 4.8 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.y + value: 0.58723086 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.z + value: 1.4 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9961947 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.y + value: -0.08715574 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} +--- !u!4 &8400083889455037229 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + m_PrefabInstance: {fileID: 742135280312805830} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1004434530219334561 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 1558007469531853167, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} + propertyPath: m_Name + value: fountain + objectReference: {fileID: 0} + - target: {fileID: 2221672256238103509, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} + propertyPath: m_LocalPosition.x + value: 6.1 + objectReference: {fileID: 0} + - target: {fileID: 2221672256238103509, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} + propertyPath: m_LocalPosition.y + value: 0.58903354 + objectReference: {fileID: 0} + - target: {fileID: 2221672256238103509, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} + propertyPath: m_LocalPosition.z + value: 0.6 + objectReference: {fileID: 0} + - target: {fileID: 2221672256238103509, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2221672256238103509, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2221672256238103509, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2221672256238103509, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2221672256238103509, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2221672256238103509, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2221672256238103509, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} +--- !u!4 &1379368979238596724 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2221672256238103509, guid: 9ba066298d11b474dac45a4dfa4e8a0c, type: 3} + m_PrefabInstance: {fileID: 1004434530219334561} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1439615549735925081 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 8472501788905752657, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_Name + value: bush_bench_l2 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.x + value: -4.2 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.y + value: 0.5834071 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.z + value: -6 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9396927 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.y + value: 0.34202015 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} +--- !u!4 &7864698265470887858 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + m_PrefabInstance: {fileID: 1439615549735925081} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &2684959409113588289 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 5971994386471821554, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_Name + value: lamp_back + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalPosition.x + value: 2.7 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalPosition.y + value: 0.5931935 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalPosition.z + value: 6.6 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9961947 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalRotation.y + value: 0.08715574 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} +--- !u!4 &9001004293040969737 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + m_PrefabInstance: {fileID: 2684959409113588289} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &3405606639571946969 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalPosition.x + value: 0.6 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalPosition.y + value: 0.59815377 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalPosition.z + value: 6.7 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalRotation.w + value: 0.99900305 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalRotation.y + value: 0.044642154 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5357063622626227068, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_Name + value: shop_back + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} +--- !u!4 &7949109967394972703 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + m_PrefabInstance: {fileID: 3405606639571946969} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &3762059572758305213 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalPosition.x + value: -6.3 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalPosition.y + value: 0.5972598 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalPosition.z + value: 3.4 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalRotation.w + value: -0.8587587 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalRotation.y + value: 0.51238024 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5357063622626227068, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + propertyPath: m_Name + value: shop_left + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} +--- !u!4 &8441515262735298683 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4689316314336848326, guid: 910d7b88412b9c145a0bdccbc8e61ab5, type: 3} + m_PrefabInstance: {fileID: 3762059572758305213} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &4578848078401984664 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 296641951909782434, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 296641951909782434, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 296641951909782434, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 296641951909782434, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 296641951909782434, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 296641951909782434, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 296641951909782434, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 296641951909782434, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 296641951909782434, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 296641951909782434, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1105126713462880536, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} + propertyPath: m_Name + value: ground + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} +--- !u!4 &4293817592590564154 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 296641951909782434, guid: 483219c51459bb54290a72cbd4ab2973, type: 3} + m_PrefabInstance: {fileID: 4578848078401984664} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &5270574166931166345 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 8472501788905752657, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_Name + value: bush_bench_r + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.x + value: 6.6 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.y + value: 0.6196274 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.z + value: -4.8 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9961947 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.y + value: 0.08715574 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} +--- !u!4 &4033915300871063138 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + m_PrefabInstance: {fileID: 5270574166931166345} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &5715386889047671283 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 8472501788905752657, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_Name + value: bush_bench_l1 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.x + value: -6.2 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.y + value: 0.63241756 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.z + value: -5.8 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} +--- !u!4 &3570982630662476568 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + m_PrefabInstance: {fileID: 5715386889047671283} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &6706111644710170049 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 5090897852391339016, guid: 766282722268357408dc144817d72e7d, type: 3} + propertyPath: m_Name + value: board + objectReference: {fileID: 0} + - target: {fileID: 5615232490997673650, guid: 766282722268357408dc144817d72e7d, type: 3} + propertyPath: m_LocalPosition.x + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 5615232490997673650, guid: 766282722268357408dc144817d72e7d, type: 3} + propertyPath: m_LocalPosition.y + value: 0.58773005 + objectReference: {fileID: 0} + - target: {fileID: 5615232490997673650, guid: 766282722268357408dc144817d72e7d, type: 3} + propertyPath: m_LocalPosition.z + value: 6.5 + objectReference: {fileID: 0} + - target: {fileID: 5615232490997673650, guid: 766282722268357408dc144817d72e7d, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9467375 + objectReference: {fileID: 0} + - target: {fileID: 5615232490997673650, guid: 766282722268357408dc144817d72e7d, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5615232490997673650, guid: 766282722268357408dc144817d72e7d, type: 3} + propertyPath: m_LocalRotation.y + value: 0.3220063 + objectReference: {fileID: 0} + - target: {fileID: 5615232490997673650, guid: 766282722268357408dc144817d72e7d, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5615232490997673650, guid: 766282722268357408dc144817d72e7d, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5615232490997673650, guid: 766282722268357408dc144817d72e7d, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5615232490997673650, guid: 766282722268357408dc144817d72e7d, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 766282722268357408dc144817d72e7d, type: 3} +--- !u!4 &1224333897956492147 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 5615232490997673650, guid: 766282722268357408dc144817d72e7d, type: 3} + m_PrefabInstance: {fileID: 6706111644710170049} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &7406613348130783644 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 481568918761005835, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_Name + value: tree_right + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalPosition.x + value: 7.5 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalPosition.y + value: 0.6298449 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalPosition.z + value: 6.2 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9914449 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalRotation.y + value: -0.1305262 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} +--- !u!4 &7722727046218954797 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + m_PrefabInstance: {fileID: 7406613348130783644} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &7579264630587232052 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 5971994386471821554, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_Name + value: lamp_right + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalPosition.x + value: 8.1 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalPosition.y + value: 0.6178468 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalPosition.z + value: 1.3 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9914449 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalRotation.y + value: -0.1305262 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} +--- !u!4 &3496461176028689788 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + m_PrefabInstance: {fileID: 7579264630587232052} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &7854509640523422936 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 8472501788905752657, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_Name + value: bush_fountain_3 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.x + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.y + value: 0.59122396 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.z + value: 0.2 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9848078 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.y + value: 0.1736482 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} +--- !u!4 &1431965699284209203 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + m_PrefabInstance: {fileID: 7854509640523422936} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &7928544030861079458 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 1488636833012782120, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_Name + value: bench_left + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalPosition.x + value: -5.2 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalPosition.y + value: 0.5858458 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalPosition.z + value: -5.2 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalRotation.w + value: -0.3826834 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalRotation.y + value: 0.92387956 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 26500fe63073b69458312f629cd758f8, type: 3} +--- !u!4 &8206890212530257200 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + m_PrefabInstance: {fileID: 7928544030861079458} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &8006536269741977769 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 1488636833012782120, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_Name + value: bench_right + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalPosition.x + value: 5.6 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalPosition.y + value: 0.6013606 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalPosition.z + value: -4.2 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.44721365 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalRotation.y + value: 0.8944272 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 26500fe63073b69458312f629cd758f8, type: 3} +--- !u!4 &8142382449011867195 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2297790063208713874, guid: 26500fe63073b69458312f629cd758f8, type: 3} + m_PrefabInstance: {fileID: 8006536269741977769} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &8151761364449092869 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 8472501788905752657, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_Name + value: bush_fountain_1 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.x + value: 7.4 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.y + value: 0.6377788 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalPosition.z + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.w + value: 0.976296 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.y + value: 0.21643962 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} +--- !u!4 &1152728081318508526 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 9142183893244744427, guid: 8be50e233ef041041be3f4ae70575d45, type: 3} + m_PrefabInstance: {fileID: 8151761364449092869} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &8422207491845479943 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 481568918761005835, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_Name + value: tree_left + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalPosition.x + value: -8 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalPosition.y + value: 0.5927529 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalPosition.z + value: 5.2 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9914449 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalRotation.y + value: 0.1305262 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} +--- !u!4 &8720237554403338166 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1001260152595036593, guid: 8f5cec98df935e04a88041ee3f2ac5a3, type: 3} + m_PrefabInstance: {fileID: 8422207491845479943} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &8592538154660252078 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 7763301070212305587} + m_Modifications: + - target: {fileID: 5971994386471821554, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_Name + value: lamp_front_left + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalPosition.x + value: -6.4 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalPosition.y + value: 0.5878977 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalPosition.z + value: -2.8 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} +--- !u!4 &3356811204385584102 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 6461286593892710984, guid: fdc33772fdea5604abd4299d30ff0dd7, type: 3} + m_PrefabInstance: {fileID: 8592538154660252078} + m_PrefabAsset: {fileID: 0} diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.prefab.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.prefab.meta new file mode 100644 index 0000000..b053928 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d2f9f138bfd02b74789dd8208a22a87e +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.unity b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.unity new file mode 100644 index 0000000..824efae --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.unity @@ -0,0 +1,374 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.55, g: 0.7, b: 0.85, a: 1} + m_AmbientEquatorColor: {r: 0.5, g: 0.52, b: 0.48, a: 1} + m_AmbientGroundColor: {r: 0.35, g: 0.32, b: 0.28, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 1 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1001 &1182938795 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 7763301070212305587, guid: d2f9f138bfd02b74789dd8208a22a87e, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7763301070212305587, guid: d2f9f138bfd02b74789dd8208a22a87e, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7763301070212305587, guid: d2f9f138bfd02b74789dd8208a22a87e, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7763301070212305587, guid: d2f9f138bfd02b74789dd8208a22a87e, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7763301070212305587, guid: d2f9f138bfd02b74789dd8208a22a87e, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7763301070212305587, guid: d2f9f138bfd02b74789dd8208a22a87e, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7763301070212305587, guid: d2f9f138bfd02b74789dd8208a22a87e, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7763301070212305587, guid: d2f9f138bfd02b74789dd8208a22a87e, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7763301070212305587, guid: d2f9f138bfd02b74789dd8208a22a87e, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7763301070212305587, guid: d2f9f138bfd02b74789dd8208a22a87e, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9152170130150289587, guid: d2f9f138bfd02b74789dd8208a22a87e, type: 3} + propertyPath: m_Name + value: TownSquare + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: d2f9f138bfd02b74789dd8208a22a87e, type: 3} +--- !u!1 &1319296323 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1319296326} + - component: {fileID: 1319296325} + - component: {fileID: 1319296324} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &1319296324 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1319296323} + m_Enabled: 1 +--- !u!20 &1319296325 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1319296323} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.78, g: 0.88, b: 0.94, a: 1} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.1 + far clip plane: 80 + field of view: 40 + orthographic: 0 + orthographic size: 5 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &1319296326 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1319296323} + serializedVersion: 2 + m_LocalRotation: {x: 0.2419219, y: 0, z: 0, w: 0.9702957} + m_LocalPosition: {x: 0, y: 12, z: -22} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2073245440 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2073245442} + - component: {fileID: 2073245441} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &2073245441 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2073245440} + m_Enabled: 1 + serializedVersion: 10 + m_Type: 1 + m_Shape: 0 + m_Color: {r: 1, g: 0.96, b: 0.88, a: 1} + m_Intensity: 1.05 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &2073245442 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2073245440} + serializedVersion: 2 + m_LocalRotation: {x: 0.40821794, y: -0.23456973, z: 0.10938166, w: 0.8754261} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 2073245442} + - {fileID: 1319296326} + - {fileID: 1182938795} diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.unity.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.unity.meta new file mode 100644 index 0000000..1298af0 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f540d06f45f292a42bf64f9378311ef0 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench.meta new file mode 100644 index 0000000..e055730 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 96e53e34f52eb074b8ab562a6b83ca79 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.fbx b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.fbx new file mode 100644 index 0000000..46f5a88 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.fbx differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.fbx.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.fbx.meta new file mode 100644 index 0000000..916a9d1 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.fbx.meta @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: 226566fab2d64da2add0f480326ea0f7 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: bench + second: {fileID: 2100000, guid: 55230c5f30ea4d29b076ad7d47473768, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 2 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.mat b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.mat new file mode 100644 index 0000000..3faa4ba --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: bench + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: fd1b81c49178493496127fb1c4f4349d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: c897eeeae69f45dea81f6f9622934804, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.mat.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.mat.meta new file mode 100644 index 0000000..f01a702 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 55230c5f30ea4d29b076ad7d47473768 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.prefab b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.prefab new file mode 100644 index 0000000..15b2171 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.prefab @@ -0,0 +1,71 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &1759177502062225785 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalScale.x + value: 1.7928138 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalScale.y + value: 1.7928138 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalScale.z + value: 1.7928138 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} + propertyPath: m_Name + value: bench + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 226566fab2d64da2add0f480326ea0f7, type: 3} diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.prefab.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.prefab.meta new file mode 100644 index 0000000..ba553ce --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 26500fe63073b69458312f629cd758f8 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench_base.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench_base.png new file mode 100644 index 0000000..e8de7ce Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench_base.png differ diff --git a/AIClient/Assets/Bundles/Characters/MaleExplorer/concept.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench_base.png.meta similarity index 94% rename from AIClient/Assets/Bundles/Characters/MaleExplorer/concept.png.meta rename to AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench_base.png.meta index d01f9e5..2c91207 100644 --- a/AIClient/Assets/Bundles/Characters/MaleExplorer/concept.png.meta +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench_base.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 9cc915e55ce2c8945ba546d42029a5be +guid: fd1b81c49178493496127fb1c4f4349d TextureImporter: internalIDToNameTable: [] externalObjects: {} @@ -31,7 +31,7 @@ TextureImporter: cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 - maxTextureSize: 2048 + maxTextureSize: 1024 textureSettings: serializedVersion: 2 filterMode: 1 @@ -69,7 +69,7 @@ TextureImporter: platformSettings: - serializedVersion: 3 buildTarget: DefaultTexturePlatform - maxTextureSize: 2048 + maxTextureSize: 1024 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 @@ -82,7 +82,7 @@ TextureImporter: forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 buildTarget: Standalone - maxTextureSize: 2048 + maxTextureSize: 1024 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 @@ -95,7 +95,7 @@ TextureImporter: forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 buildTarget: iPhone - maxTextureSize: 2048 + maxTextureSize: 1024 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 @@ -108,7 +108,7 @@ TextureImporter: forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 buildTarget: WebGL - maxTextureSize: 2048 + maxTextureSize: 1024 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 @@ -121,7 +121,7 @@ TextureImporter: forceMaximumCompressionQuality_BC6H_BC7: 0 - serializedVersion: 3 buildTarget: Android - maxTextureSize: 2048 + maxTextureSize: 1024 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench_mix.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench_mix.png new file mode 100644 index 0000000..e4b6fae Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench_mix.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench_mix.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench_mix.png.meta new file mode 100644 index 0000000..b5f551a --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/bench_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: c897eeeae69f45dea81f6f9622934804 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board.meta new file mode 100644 index 0000000..b2083a4 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7a37f641be7059e4aa061c123d58ad5e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.fbx b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.fbx new file mode 100644 index 0000000..2474863 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.fbx differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.fbx.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.fbx.meta new file mode 100644 index 0000000..637d601 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.fbx.meta @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: 2f1665ece9e74a84bc219d29feb8c479 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: board + second: {fileID: 2100000, guid: 48215abcd83d4be78bf763ddbd8bf5b9, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 2 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.mat b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.mat new file mode 100644 index 0000000..eb02211 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: board + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: edb2761cf05c48f4979fdb48a2ceecf4, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: 3895a530acae4babb5e4640e6e4c9391, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.mat.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.mat.meta new file mode 100644 index 0000000..56f85d2 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 48215abcd83d4be78bf763ddbd8bf5b9 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.prefab b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.prefab new file mode 100644 index 0000000..1cbbc67 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.prefab @@ -0,0 +1,71 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &5361510404161309017 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalScale.x + value: 2.9276035 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalScale.y + value: 2.9276035 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalScale.z + value: 2.9276035 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} + propertyPath: m_Name + value: board + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 2f1665ece9e74a84bc219d29feb8c479, type: 3} diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.prefab.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.prefab.meta new file mode 100644 index 0000000..19fa992 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 766282722268357408dc144817d72e7d +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board_base.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board_base.png new file mode 100644 index 0000000..dcc6148 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board_base.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board_base.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board_base.png.meta new file mode 100644 index 0000000..44fa0df --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board_base.png.meta @@ -0,0 +1,153 @@ +fileFormatVersion: 2 +guid: edb2761cf05c48f4979fdb48a2ceecf4 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board_mix.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board_mix.png new file mode 100644 index 0000000..709d9af Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board_mix.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board_mix.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board_mix.png.meta new file mode 100644 index 0000000..93526d3 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/board_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 3895a530acae4babb5e4640e6e4c9391 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush.meta new file mode 100644 index 0000000..7ebbba4 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9d1e2ef118d495147a7507afd81f5b5a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.fbx b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.fbx new file mode 100644 index 0000000..b0647b5 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.fbx differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.fbx.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.fbx.meta new file mode 100644 index 0000000..851293f --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.fbx.meta @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: eb5252e1abad43c4997f02c745ab54a5 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: bush + second: {fileID: 2100000, guid: 859a730b4c2e47509b323df9aa67ff48, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 2 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.mat b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.mat new file mode 100644 index 0000000..d0703f9 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: bush + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: 540b11023a16465daf769198ab0605e4, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: fafff3b99b2a4abdb19435873668b77d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.mat.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.mat.meta new file mode 100644 index 0000000..c47c84c --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 859a730b4c2e47509b323df9aa67ff48 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.prefab b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.prefab new file mode 100644 index 0000000..e61b382 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.prefab @@ -0,0 +1,71 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &8742954369250227456 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalScale.x + value: 1.366722 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalScale.y + value: 1.366722 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalScale.z + value: 1.366722 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} + propertyPath: m_Name + value: bush + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: eb5252e1abad43c4997f02c745ab54a5, type: 3} diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.prefab.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.prefab.meta new file mode 100644 index 0000000..9bd58eb --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8be50e233ef041041be3f4ae70575d45 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush_base.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush_base.png new file mode 100644 index 0000000..c2e5f57 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush_base.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush_base.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush_base.png.meta new file mode 100644 index 0000000..5789c3d --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush_base.png.meta @@ -0,0 +1,153 @@ +fileFormatVersion: 2 +guid: 540b11023a16465daf769198ab0605e4 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush_mix.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush_mix.png new file mode 100644 index 0000000..4a9b7a4 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush_mix.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush_mix.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush_mix.png.meta new file mode 100644 index 0000000..9fe20f3 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/bush_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: fafff3b99b2a4abdb19435873668b77d +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain.meta new file mode 100644 index 0000000..6c22bf4 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9718b42be3f495b48a0bb76634613af8 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.fbx b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.fbx new file mode 100644 index 0000000..7fa4bb4 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.fbx differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.fbx.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.fbx.meta new file mode 100644 index 0000000..b3be0a9 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.fbx.meta @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: 6c96e775588a46d1a79bbc57503c5342 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: fountain + second: {fileID: 2100000, guid: bcfd4e6476794bc1b6ed06f5fcadd94e, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 2 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.mat b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.mat new file mode 100644 index 0000000..df7af27 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: fountain + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: 553d63347e0347fd87d8f793e938c2d0, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: 1ef97907d7854d19bc5c09129b09244a, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.mat.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.mat.meta new file mode 100644 index 0000000..050d236 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bcfd4e6476794bc1b6ed06f5fcadd94e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.prefab b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.prefab new file mode 100644 index 0000000..81fef92 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.prefab @@ -0,0 +1,71 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &1827984639006133310 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalScale.x + value: 4.449792 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalScale.y + value: 4.449792 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalScale.z + value: 4.449792 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} + propertyPath: m_Name + value: fountain + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 6c96e775588a46d1a79bbc57503c5342, type: 3} diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.prefab.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.prefab.meta new file mode 100644 index 0000000..fa2d794 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9ba066298d11b474dac45a4dfa4e8a0c +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain_base.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain_base.png new file mode 100644 index 0000000..fa59420 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain_base.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain_base.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain_base.png.meta new file mode 100644 index 0000000..59f649c --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain_base.png.meta @@ -0,0 +1,153 @@ +fileFormatVersion: 2 +guid: 553d63347e0347fd87d8f793e938c2d0 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain_mix.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain_mix.png new file mode 100644 index 0000000..6f60679 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain_mix.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain_mix.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain_mix.png.meta new file mode 100644 index 0000000..598c554 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/fountain_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 1ef97907d7854d19bc5c09129b09244a +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground.meta new file mode 100644 index 0000000..2b072df --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1e63427267c80684fbe388230b4a9e73 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.fbx b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.fbx new file mode 100644 index 0000000..19be66d Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.fbx differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.fbx.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.fbx.meta new file mode 100644 index 0000000..b03314c --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.fbx.meta @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: b390ab0d88514e4bbfd4958f51381630 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: ground + second: {fileID: 2100000, guid: c68e560375d04856a2ee162b8191dc96, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 2 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.mat b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.mat new file mode 100644 index 0000000..f2e7dde --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ground + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: d90020924f924727afbba0cbf1f39ffc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: 2ae033e6268d4109a410ed17ff6d1495, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.mat.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.mat.meta new file mode 100644 index 0000000..5337659 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c68e560375d04856a2ee162b8191dc96 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.prefab b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.prefab new file mode 100644 index 0000000..f9bab0f --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.prefab @@ -0,0 +1,101 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &258775790675739721 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalScale.x + value: 21.102217 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalScale.y + value: 21.102217 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalScale.z + value: 21.102217 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + propertyPath: m_Name + value: ground + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + insertIndex: -1 + addedObject: {fileID: 3957376469491048071} + m_SourcePrefab: {fileID: 100100000, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} +--- !u!1 &1105126713462880536 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} + m_PrefabInstance: {fileID: 258775790675739721} + m_PrefabAsset: {fileID: 0} +--- !u!64 &3957376469491048071 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1105126713462880536} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 5 + m_Convex: 0 + m_CookingOptions: 30 + m_Mesh: {fileID: -3920555075548088813, guid: b390ab0d88514e4bbfd4958f51381630, type: 3} diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.prefab.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.prefab.meta new file mode 100644 index 0000000..68537b0 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 483219c51459bb54290a72cbd4ab2973 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground_base.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground_base.png new file mode 100644 index 0000000..48d3374 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground_base.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground_base.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground_base.png.meta new file mode 100644 index 0000000..89bae42 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground_base.png.meta @@ -0,0 +1,153 @@ +fileFormatVersion: 2 +guid: d90020924f924727afbba0cbf1f39ffc +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground_mix.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground_mix.png new file mode 100644 index 0000000..63f6615 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground_mix.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground_mix.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground_mix.png.meta new file mode 100644 index 0000000..9f109d0 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/ground_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 2ae033e6268d4109a410ed17ff6d1495 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp.meta new file mode 100644 index 0000000..1c0dab1 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 417b00084214c7348bb42bd40a51f5b0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.fbx b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.fbx new file mode 100644 index 0000000..7e827ac Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.fbx differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.fbx.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.fbx.meta new file mode 100644 index 0000000..07a42fc --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.fbx.meta @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: ff5acbe2307d447498be0bbe355379a2 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lamp + second: {fileID: 2100000, guid: 4b0b81bb411e4e039ce2e6465f3451ec, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 2 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.mat b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.mat new file mode 100644 index 0000000..51239f7 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: lamp + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: be30cac86190498b80056e9674c9f2ea, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: a9b52565251c4340bb32866ec397c2d8, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.mat.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.mat.meta new file mode 100644 index 0000000..b47eac4 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4b0b81bb411e4e039ce2e6465f3451ec +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.prefab b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.prefab new file mode 100644 index 0000000..454bbce --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.prefab @@ -0,0 +1,71 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &6782879058465824163 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalScale.x + value: 3.0233471 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalScale.y + value: 3.0233471 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalScale.z + value: 3.0233471 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} + propertyPath: m_Name + value: lamp + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ff5acbe2307d447498be0bbe355379a2, type: 3} diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.prefab.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.prefab.meta new file mode 100644 index 0000000..525001e --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: fdc33772fdea5604abd4299d30ff0dd7 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp_base.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp_base.png new file mode 100644 index 0000000..4cce96b Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp_base.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp_base.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp_base.png.meta new file mode 100644 index 0000000..26bb034 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp_base.png.meta @@ -0,0 +1,153 @@ +fileFormatVersion: 2 +guid: be30cac86190498b80056e9674c9f2ea +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp_mix.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp_mix.png new file mode 100644 index 0000000..cc72625 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp_mix.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp_mix.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp_mix.png.meta new file mode 100644 index 0000000..1225a6a --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/lamp_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: a9b52565251c4340bb32866ec397c2d8 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop.meta new file mode 100644 index 0000000..646dd9a --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 440a2a706b61a49469cca11764000473 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.fbx b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.fbx new file mode 100644 index 0000000..dd070c4 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.fbx differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.fbx.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.fbx.meta new file mode 100644 index 0000000..79a65a2 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.fbx.meta @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: shop + second: {fileID: 2100000, guid: 2a414afe20754afeb9dac51f39b5ad66, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 2 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.mat b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.mat new file mode 100644 index 0000000..17feb35 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: shop + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: a0a548d530b24caab5da0cf358c3e03d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: 3944b80257f14402a5b19ee022deabbb, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.mat.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.mat.meta new file mode 100644 index 0000000..14ff344 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2a414afe20754afeb9dac51f39b5ad66 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.prefab b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.prefab new file mode 100644 index 0000000..5be4659 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.prefab @@ -0,0 +1,71 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &5087226080524275245 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalScale.x + value: 7.5466785 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalScale.y + value: 7.5466785 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalScale.z + value: 7.5466785 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} + propertyPath: m_Name + value: shop + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e, type: 3} diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.prefab.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.prefab.meta new file mode 100644 index 0000000..1f1c444 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 910d7b88412b9c145a0bdccbc8e61ab5 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop_base.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop_base.png new file mode 100644 index 0000000..3fbd02a Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop_base.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop_base.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop_base.png.meta new file mode 100644 index 0000000..ffaea2f --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop_base.png.meta @@ -0,0 +1,153 @@ +fileFormatVersion: 2 +guid: a0a548d530b24caab5da0cf358c3e03d +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop_mix.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop_mix.png new file mode 100644 index 0000000..e848684 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop_mix.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop_mix.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop_mix.png.meta new file mode 100644 index 0000000..56fb958 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/shop_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 3944b80257f14402a5b19ee022deabbb +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree.meta new file mode 100644 index 0000000..42840f0 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 358adbacca30231438e68a2a02dfc8eb +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.fbx b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.fbx new file mode 100644 index 0000000..1b612d6 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.fbx differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.fbx.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.fbx.meta new file mode 100644 index 0000000..329f8be --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.fbx.meta @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: 7efa4251f48c424da9b7ede1a8b28ddf +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: tree + second: {fileID: 2100000, guid: b7aba4b7bc7842c2a137e14bf8c5946c, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 2 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.mat b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.mat new file mode 100644 index 0000000..5f9b258 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: tree + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: ef36f5faaa2643bdabd30c5e5d2033b8, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: a1aad368ce7e44cbb2872bcc89ab34cd, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.mat.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.mat.meta new file mode 100644 index 0000000..5e3154f --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b7aba4b7bc7842c2a137e14bf8c5946c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.prefab b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.prefab new file mode 100644 index 0000000..f153756 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.prefab @@ -0,0 +1,71 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &751971054847745626 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalScale.x + value: 5.1825867 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalScale.y + value: 5.1825867 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalScale.z + value: 5.1825867 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} + propertyPath: m_Name + value: tree + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 7efa4251f48c424da9b7ede1a8b28ddf, type: 3} diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.prefab.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.prefab.meta new file mode 100644 index 0000000..469ead9 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8f5cec98df935e04a88041ee3f2ac5a3 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree_base.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree_base.png new file mode 100644 index 0000000..7c4f3ed Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree_base.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree_base.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree_base.png.meta new file mode 100644 index 0000000..99ca150 --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree_base.png.meta @@ -0,0 +1,153 @@ +fileFormatVersion: 2 +guid: ef36f5faaa2643bdabd30c5e5d2033b8 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree_mix.png b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree_mix.png new file mode 100644 index 0000000..a6a92e2 Binary files /dev/null and b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree_mix.png differ diff --git a/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree_mix.png.meta b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree_mix.png.meta new file mode 100644 index 0000000..d5cf39f --- /dev/null +++ b/AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/tree_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: a1aad368ce7e44cbb2872bcc89ab34cd +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/HotUpdate/Scripts/CharacterSpawner.cs b/AIClient/Assets/HotUpdate/Scripts/CharacterSpawner.cs index c80e4c1..ec158ed 100644 --- a/AIClient/Assets/HotUpdate/Scripts/CharacterSpawner.cs +++ b/AIClient/Assets/HotUpdate/Scripts/CharacterSpawner.cs @@ -67,11 +67,11 @@ namespace HotUpdate _instance = Instantiate(prefab); _instance.name = "MaleExplorer_Runtime"; - var y = _instance.transform.position.y; - _instance.transform.position = new Vector3(0f, y, 2.5f); + var plaza = GameObject.Find("TownSquare_Runtime"); + var y = GroundSit.Height(Vector3.zero, plaza != null ? plaza.transform : null); + _instance.transform.position = new Vector3(0f, y, 0f); DontDestroyOnLoad(_instance); - // 仅对概念图 Billboard 子节点做朝向;真 3D 网格不要转,否则会拧成纸片 var billboardTf = _instance.transform.Find("Billboard"); if (billboardTf != null && Camera.main != null) { @@ -82,8 +82,7 @@ namespace HotUpdate billboardTf.rotation = Quaternion.LookRotation(-dir.normalized); } - // 调整主相机看向角色(竖屏) - if (Camera.main != null) + if (GameObject.Find("TownSquare_Runtime") == null && Camera.main != null) { var cam = Camera.main; cam.transform.position = new Vector3(0f, 1.2f, -2.2f); diff --git a/AIClient/Assets/HotUpdate/Scripts/Gameplay/GameplayBootstrap.cs b/AIClient/Assets/HotUpdate/Scripts/Gameplay/GameplayBootstrap.cs index 0d68641..29caf5c 100644 --- a/AIClient/Assets/HotUpdate/Scripts/Gameplay/GameplayBootstrap.cs +++ b/AIClient/Assets/HotUpdate/Scripts/Gameplay/GameplayBootstrap.cs @@ -28,6 +28,14 @@ namespace HotUpdate.Gameplay WireNet(); MaybeShowBootNotice(); + var plaza = gameObject.AddComponent(); + plaza.Bind(_ctx); + StartCoroutine(SpawnWorld(plaza)); + } + + System.Collections.IEnumerator SpawnWorld(TownSquareSpawner plaza) + { + yield return plaza.SpawnCo(); var spawner = gameObject.AddComponent(); spawner.Bind(_ctx); spawner.Spawn(); diff --git a/AIClient/Assets/HotUpdate/Scripts/GroundSit.cs b/AIClient/Assets/HotUpdate/Scripts/GroundSit.cs new file mode 100644 index 0000000..08b7626 --- /dev/null +++ b/AIClient/Assets/HotUpdate/Scripts/GroundSit.cs @@ -0,0 +1,64 @@ +using UnityEngine; + +namespace HotUpdate +{ + /// + /// 用地表 MeshCollider 的碰撞高度作为放置 Y。原点在底面中点的物件直接用该值。 + /// + public static class GroundSit + { + const float RayStartY = 80f; + const float RayLength = 160f; + + public static float Height(Vector3 xz, Transform searchRoot = null, float fallback = 0f) + { + Physics.SyncTransforms(); + var ray = new Ray(new Vector3(xz.x, RayStartY, xz.z), Vector3.down); + var bestDist = float.MaxValue; + var y = fallback; + var hitAny = false; + + foreach (var col in Collect(searchRoot)) + { + if (col == null || !col.enabled) continue; + if (!IsGroundCollider(col)) continue; + if (!col.Raycast(ray, out var hit, RayLength)) continue; + if (hit.distance >= bestDist) continue; + bestDist = hit.distance; + y = hit.point.y; + hitAny = true; + } + + if (hitAny) return y; + + foreach (var col in Collect(searchRoot)) + { + if (col == null || !col.enabled) continue; + if (!col.Raycast(ray, out var hit, RayLength)) continue; + if (hit.distance >= bestDist) continue; + bestDist = hit.distance; + y = hit.point.y; + hitAny = true; + } + + return hitAny ? y : fallback; + } + + static MeshCollider[] Collect(Transform searchRoot) + { + if (searchRoot != null) + return searchRoot.GetComponentsInChildren(); + return Object.FindObjectsByType(FindObjectsSortMode.None); + } + + static bool IsGroundCollider(MeshCollider col) + { + for (var t = col.transform; t != null; t = t.parent) + { + if (t.name.IndexOf("ground", System.StringComparison.OrdinalIgnoreCase) >= 0) + return true; + } + return false; + } + } +} diff --git a/AIClient/Assets/HotUpdate/Scripts/GroundSit.cs.meta b/AIClient/Assets/HotUpdate/Scripts/GroundSit.cs.meta new file mode 100644 index 0000000..12bd92f --- /dev/null +++ b/AIClient/Assets/HotUpdate/Scripts/GroundSit.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 64eb3db5d5ad0e54e97d931d86a31bbb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/AIClient/Assets/HotUpdate/Scripts/TownSquareSpawner.cs b/AIClient/Assets/HotUpdate/Scripts/TownSquareSpawner.cs new file mode 100644 index 0000000..40c4c9e --- /dev/null +++ b/AIClient/Assets/HotUpdate/Scripts/TownSquareSpawner.cs @@ -0,0 +1,67 @@ +using System.Collections; +using AOT.Boot; +using UnityEngine; +using YooAsset; + +namespace HotUpdate +{ + /// + /// 加载小镇广场环境,供角色站在广场中央。 + /// + public sealed class TownSquareSpawner : MonoBehaviour + { + public const string PrefabAddress = "TownSquare"; + public const string EditorPrefabPath = "Assets/Bundles/Scenes/Town/TownSquare/TownSquare.prefab"; + public const string ArtPackageName = "Art"; + + BootContext _ctx; + GameObject _instance; + + public void Bind(BootContext ctx) => _ctx = ctx; + + public IEnumerator SpawnCo() + { + GameObject prefab = null; + + if (YooAssets.IsInitialized && YooAssets.TryGetPackage(ArtPackageName, out var art) && + art.InitializeStatus == EOperationStatus.Succeeded) + { + var handle = art.LoadAssetAsync(PrefabAddress); + yield return handle; + if (handle.Status == EOperationStatus.Succeeded) + prefab = handle.GetAssetObject(); + else + handle.Release(); + } + +#if UNITY_EDITOR + if (prefab == null) + prefab = UnityEditor.AssetDatabase.LoadAssetAtPath(EditorPrefabPath); +#endif + + if (prefab == null) + { + Debug.LogError("[TownSquareSpawner] TownSquare prefab not found"); + yield break; + } + + if (_instance != null) + Destroy(_instance); + + _instance = Instantiate(prefab); + _instance.name = "TownSquare_Runtime"; + DontDestroyOnLoad(_instance); + + if (Camera.main != null) + { + var cam = Camera.main; + cam.transform.position = new Vector3(0f, 12f, -22f); + cam.transform.rotation = Quaternion.Euler(28f, 0f, 0f); + cam.fieldOfView = 40f; + cam.backgroundColor = new Color(0.78f, 0.88f, 0.94f); + } + + Debug.Log($"[TownSquareSpawner] spawned ok res={_ctx?.ResVersion}"); + } + } +} diff --git a/AIClient/Assets/HotUpdate/Scripts/TownSquareSpawner.cs.meta b/AIClient/Assets/HotUpdate/Scripts/TownSquareSpawner.cs.meta new file mode 100644 index 0000000..2898c06 --- /dev/null +++ b/AIClient/Assets/HotUpdate/Scripts/TownSquareSpawner.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 561555ac8c9a26a498a4416023b2810e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Agents.md b/Agents.md index 55cc1d4..9959a08 100644 --- a/Agents.md +++ b/Agents.md @@ -16,7 +16,9 @@ - sound → `Doc/ResDesc_Sound.md` - effect → `Doc/ResDesc_Effect.md` -2. **UI 自动生成(必须)**:业务面板走 JSON→Prefab,禁止用运行时代码临时拼业务 UI 骨架替代 Prefab。 +2. **3D 游戏网格**:导出 FBX 为 Y-up、原点在底面中点、局部 **-Z 为正面**。摆放时 -Z 朝向目标。细则见 [GameResProductProc.md](GameResProductProc.md) 附录 B。 + +3. **UI 自动生成(必须)**:业务面板走 JSON→Prefab,禁止用运行时代码临时拼业务 UI 骨架替代 Prefab。 - 总览:`Doc/UI_AutoGen_Overview.md` - JSON 目录:`Doc/UIPrefabCreater/` - Prefab 输出:`AIClient/Assets/Bundles/UI/Prefab/` diff --git a/Doc/Design/Character/CaoCao/caocao.png b/Doc/Design/Character/CaoCao/caocao.png new file mode 100644 index 0000000..71aadbc Binary files /dev/null and b/Doc/Design/Character/CaoCao/caocao.png differ diff --git a/Doc/Design/Scene/TownSquare/bench.png b/Doc/Design/Scene/TownSquare/bench.png new file mode 100644 index 0000000..86e3e77 Binary files /dev/null and b/Doc/Design/Scene/TownSquare/bench.png differ diff --git a/Doc/Design/Scene/TownSquare/board.png b/Doc/Design/Scene/TownSquare/board.png new file mode 100644 index 0000000..f861b61 Binary files /dev/null and b/Doc/Design/Scene/TownSquare/board.png differ diff --git a/Doc/Design/Scene/TownSquare/bush.png b/Doc/Design/Scene/TownSquare/bush.png new file mode 100644 index 0000000..b76ed72 Binary files /dev/null and b/Doc/Design/Scene/TownSquare/bush.png differ diff --git a/Doc/Design/Scene/TownSquare/fountain.png b/Doc/Design/Scene/TownSquare/fountain.png new file mode 100644 index 0000000..0919eca Binary files /dev/null and b/Doc/Design/Scene/TownSquare/fountain.png differ diff --git a/Doc/Design/Scene/TownSquare/ground.png b/Doc/Design/Scene/TownSquare/ground.png new file mode 100644 index 0000000..9bf9e24 Binary files /dev/null and b/Doc/Design/Scene/TownSquare/ground.png differ diff --git a/Doc/Design/Scene/TownSquare/lamp.png b/Doc/Design/Scene/TownSquare/lamp.png new file mode 100644 index 0000000..292735e Binary files /dev/null and b/Doc/Design/Scene/TownSquare/lamp.png differ diff --git a/Doc/Design/Scene/TownSquare/shop.png b/Doc/Design/Scene/TownSquare/shop.png new file mode 100644 index 0000000..60a6cc0 Binary files /dev/null and b/Doc/Design/Scene/TownSquare/shop.png differ diff --git a/Doc/Design/Scene/TownSquare/town_square.png b/Doc/Design/Scene/TownSquare/town_square.png new file mode 100644 index 0000000..9608e38 Binary files /dev/null and b/Doc/Design/Scene/TownSquare/town_square.png differ diff --git a/Doc/Design/Scene/TownSquare/tree.png b/Doc/Design/Scene/TownSquare/tree.png new file mode 100644 index 0000000..d705ad4 Binary files /dev/null and b/Doc/Design/Scene/TownSquare/tree.png differ diff --git a/Doc/Design/UI/Casual/casual_ui.png b/Doc/Design/UI/Casual/casual_ui.png new file mode 100644 index 0000000..ba3a4a5 Binary files /dev/null and b/Doc/Design/UI/Casual/casual_ui.png differ diff --git a/Doc/ResDesc_Model.md b/Doc/ResDesc_Model.md index 8d1bd27..7e99218 100644 --- a/Doc/ResDesc_Model.md +++ b/Doc/ResDesc_Model.md @@ -2,14 +2,27 @@ 3D 模型及相关烘焙贴图。每条包含:路径、简要说明。 -约定:游戏用角色放在 `AIClient/Assets/Bundles/Characters/{ActorName}/`(YooAsset Art / `PackDirectory`)。 +约定: +- 角色:`AIClient/Assets/Bundles/Characters/{ActorName}/` +- 场景分件:`AIClient/Assets/Bundles/Scenes/{类型}/{场景号}/{英文短名}/` | 资源路径 | 简要说明 | | --- | --- | +| `AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.prefab` | 小镇广场拼装体;Pipeline `BuildTownSquare.Run`;运行时地址 `TownSquare`;物件 Y 取地表碰撞高度 | +| `AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.unity` | 可进游戏的广场场景(相机约 28° 俯斜 + 方向光) | +| `AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground/` | 广场地表;减面 800;XPbr;Prefab 带非凸 MeshCollider | +| `AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop/` | 红顶店铺;减面 1797;XPbr | +| `AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree/` | 树;减面 1498;XPbr | +| `AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp/` | 路灯;减面 500;XPbr | +| `AIClient/Assets/Bundles/Scenes/Town/TownSquare/board/` | 告示牌;减面 800;XPbr | +| `AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain/` | 两层喷泉;减面 1798;XPbr | +| `AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench/` | 长椅;减面 699;XPbr | +| `AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush/` | 灌木花箱;collapse 卡住后体素重网格,减面 436;XPbr | +| `Tools/output/townsquare_3d/` | TownSquare 混元高模 GLB(不进 Bundle) | +| `Tools/output/townsquare_game/` | TownSquare 减面/烘焙中间输出(不进 Bundle) | | `AIClient/Assets/Bundles/Characters/MaleExplorer/` | 角色 MaleExplorer 目录(寻址 Prefab=`MaleExplorer`) | | `…/MaleExplorer.fbx` | 混元高模减面低模(约 5k tris) | | `…/MaleExplorer_*.png` | color / normal / ao / metallic / roughness 烘焙贴图 | -| `…/concept.png` | 图生3D 概念参考图 | | `…/MaleExplorer.prefab` | 运行时加载 Prefab(菜单 `AIGame/M3/Setup Character…` 生成) | | `Tools/output/male_explorer_3d/male_explorer.glb` | 混元高模中间件(不进 Bundle) | | `Tools/output/male_explorer_game/` | 减面/烘焙中间输出(不进 Bundle) | diff --git a/Doc/ResDesc_Picture.md b/Doc/ResDesc_Picture.md index e0f5bb8..0fece3d 100644 --- a/Doc/ResDesc_Picture.md +++ b/Doc/ResDesc_Picture.md @@ -4,6 +4,17 @@ | 资源路径 | 简要说明 | | --- | --- | +| `Doc/Design/UI/Casual/casual_ui.png` | 轻松休闲竖屏 UI 设计图;gpt-image-2.5、`--aspect-ratio 9:16`、实测 940×1672、参考 `Doc/Design/ui_design.jpg`、纯白底 | +| `Doc/Design/Scene/TownSquare/town_square.png` | 简单小镇广场总览设计图(多人活动空地);gpt-image-2.5、`1:1`、实测 1254×1254、纯白底 | +| `Doc/Design/Scene/TownSquare/ground.png` | TownSquare 分件·地表;gpt-image-2.5、`1:1`、1254×1254、参考总览、纯白底 | +| `Doc/Design/Scene/TownSquare/shop.png` | TownSquare 分件·店铺(红顶代表);gpt-image-2.5、`1:1`、1254×1254、参考总览、纯白底 | +| `Doc/Design/Scene/TownSquare/tree.png` | TownSquare 分件·树;gpt-image-2.5、`1:1`、1254×1254、参考总览、纯白底 | +| `Doc/Design/Scene/TownSquare/lamp.png` | TownSquare 分件·路灯;gpt-image-2.5、`2:3`、1024×1536、参考总览、纯白底 | +| `Doc/Design/Scene/TownSquare/board.png` | TownSquare 分件·告示牌;gpt-image-2.5、`1:1`、1254×1254、参考总览、纯白底 | +| `Doc/Design/Scene/TownSquare/fountain.png` | TownSquare 分件·喷泉(两层,对齐总览);gpt-image-2.5、`1:1`、1254×1254、参考总览、纯白底 | +| `Doc/Design/Scene/TownSquare/bench.png` | TownSquare 分件·长椅;gpt-image-2.5、`1:1`、1254×1254、参考总览、纯白底 | +| `Doc/Design/Scene/TownSquare/bush.png` | TownSquare 分件·灌木花箱;gpt-image-2.5、`1:1`、1254×1254、参考总览、纯白底 | +| `Doc/Design/Character/CaoCao/caocao.png` | 轻科幻曹操全身设计图,正面 T Pose;gpt-image-2.5、`2:3`、实测 1024×1536、纯白底 | | `Tools/output/ui_simple_atlas_gpt.png` | UI Simple Set 图集;gpt-image-2.5 + 参考 `Doc/ui_design.jpg`;约 1254×1254;对应 `Doc/UI_Simple_Set.md` | | `Tools/output/ui_normal_atlas_gpt.png` | UI Normal Set 图集;gpt-image-2-vip、2048×2048、透明底 + 参考图;对应 `Doc/UI_Normal_Set.md` | | `AIClient/Assets/Bundles/UI/Texture/Common/*.png` | Normal 图集切出的 **38** 张 Common 单图;脚本 `Tools/slice_ui_normal_atlas.py` | @@ -11,7 +22,7 @@ | `AIClient/Assets/Bundles/UI/Font/siyuan_CN_Bold SDF.asset` | TMP 动态 SDF 字体资源;JSON→Prefab 默认使用;菜单 `Tools/UI/Ensure SiYuan TMP Font Asset` | | `Tools/output/male_explorer_test.png` | 男性探险者角色试做;项目文生图脚本 | | `Tools/output/male_explorer_cursor.png` | 男性探险者对照;Cursor GenerateImage | -| `AIClient/Assets/Bundles/Characters/MaleExplorer/concept.png` | MaleExplorer 概念图(进角色目录) | +| `Tools/output/male_explorer_test.png` | 男性探险者角色试做;项目文生图脚本 | | `AIClient/Assets/Bundles/Characters/MaleExplorer/MaleExplorer_*.png` | 低模烘焙贴图(color/normal/ao/metallic/roughness) | | `Doc/ui_design.jpg` | UI 视觉基准图;糖果休闲风控件参考(`Doc/Design/ui_design.jpg` 为同内容副本) | | `Doc/UI_AutoGen_Overview.md` | UI 自动生成方案总览(JSON→Prefab + 图集) | diff --git a/GameResProductProc.md b/GameResProductProc.md new file mode 100644 index 0000000..17fe2b3 --- /dev/null +++ b/GameResProductProc.md @@ -0,0 +1,288 @@ +# 游戏资源生产流程 + +> 本文说明游戏内各类资源从设计到入库的生产步骤。 +> 工具用法见 [`ResourceCreate.md`](ResourceCreate.md)。生成完成后必须登记 [`Doc/ResDesc.md`](Doc/ResDesc.md) 对应分册,未登记视为流程未完成。 + +当前状态:**框架已立**。各条的细化与实跑验证按文末清单逐条进行;标「待细化」的条目只保留步骤骨架,不写未经验证的命令。 + +--- + +## 0. 总则 + +1. **画图**一律走项目画图方案(见附录 A)。设计图、UI 原图、序列帧、粒子贴图的生成底为**纯白**。 +2. **3D**一律走 3D 模型生成流程(见附录 B)。面数是减面后的游戏用三角面,不是混元高模面数。游戏 FBX:**Y-up**、原点在**底面中点**、局部 **-Z 为正面**(设计图朝向相机的那面)。摆放时正面朝向目标,不要按 Unity 默认 +Z forward。 +3. **中间件**放 `Tools/output/`,不进正式包。**游戏用资源**放 `AIClient/Assets/Bundles/` 对应目录。 +4. **设计原稿**放 `Doc/Design/{类型}/{名称}/`,**不要拷进** `AIClient/`。`{类型}` 与下文各大类对应(如 `Scene`、`Character`、`UI`、`Weapon`、`Prop`、`Effect`)。 +5. **英文名称**用于 Bundle 目录与文件名:帕斯卡或既有角色名风格均可,目录内保持一致,不含空格与中文。 +6. **确认点**写在步骤里的,必须等人确认后再进入下一步。 +7. **Unity 操作**一律走 Unity Pipeline(`unity command …`),见 [`UNITY-GUIDE.md`](UNITY-GUIDE.md) 与 `unity-pipeline` 技能。不要用 Unity MCP;场景、Prefab、材质、导入设置、以及 `Assets/` 下文件的移动/重命名/删除,都通过 Pipeline 完成。 + +| 登记 | 文件 | +| --- | --- | +| 图、设计原稿、UI 切图 | `Doc/ResDesc_Picture.md` | +| 模型、贴图、Prefab | `Doc/ResDesc_Model.md` | +| 动画 | `Doc/ResDesc_Animation.md` | +| 特效 | `Doc/ResDesc_Effect.md` | +| 音乐、音效 | `Doc/ResDesc_Sound.md` | + +--- + +## 一、2D 资源 + +### 1. 设计图 + +状态:已跑通。样例为轻松休闲 UI、小镇广场、轻科幻曹操(2026-09-28)。 + +1. 用 `Tools/gpt_image_generate.py` 出图。默认模型 `gpt-image-2.5`,`--quality high`。背景写进提示词:纯白 `#FFFFFF`,不要场景底、渐变和纸纹。 +2. 比例用字符串,不要自己传大于 1K 的像素。本次实测映射为: + +| 用途 | `--aspect-ratio` | 实测尺寸 | +| --- | --- | --- | +| 竖屏 UI | `9:16` | 940×1672 | +| 场景总览 | `1:1` | 1254×1254 | +| 全身角色 | `2:3` | 1024×1536 | + +3. 需要锁已有风格时加 `-i` 参考图。UI 样例参考 `Doc/Design/ui_design.jpg`。 +4. 原稿放到 `Doc/Design/{类型}/{名称}/`,文件名用英文。本次: + +| 类型 | 路径 | +| --- | --- | +| UI | `Doc/Design/UI/Casual/casual_ui.png` | +| Scene | `Doc/Design/Scene/TownSquare/town_square.png` | +| Character | `Doc/Design/Character/CaoCao/caocao.png` | + +5. 检查四角 RGB。接近 255(本次均 ≥253)即视为纯白通过。 +6. 在 `Doc/ResDesc_Picture.md` 登记路径、用途、模型与尺寸。 + +角色若接着走 3D,设计图按人物条目画成正面 T Pose、双手空、全身入画。本次曹操已按此出图。 + +本条产出不进 `Bundles`。场景总览画出后先归纳物件类型(10 种以内)等人确认,再进入分件。 + +```bash +python Tools/gpt_image_generate.py --result-only --quality high --aspect-ratio 9:16 -i Doc/Design/ui_design.jpg -o Doc/Design/UI/Casual/casual_ui.png -p "..." +python Tools/gpt_image_generate.py --result-only --quality high --aspect-ratio 1:1 -o Doc/Design/Scene/TownSquare/town_square.png -p "..." +python Tools/gpt_image_generate.py --result-only --quality high --aspect-ratio 2:3 -o Doc/Design/Character/CaoCao/caocao.png -p "..." +``` + +### 2. UI 图 + +状态:待细化。切图与 Sprite 导入已有样例(`Doc/UI_Normal_Set.md`、`Tools/slice_ui_normal_atlas.py`、`Assets/Bundles/UI/Texture/Common/`),新风格组件仍按本条重走一遍并核对。 + +1. 参考既有 UI 范例图,用项目画图方案绘制新的风格组件图,背景纯白。 + - 视觉基准:`Doc/Design/ui_design.jpg`、`Doc/Design/UI_Design_Principles.md`。 + - 范例图集:`Doc/UI_Simple_Set.md`、`Doc/UI_Normal_Set.md`。 + - 原稿放到 `Doc/Design/UI/{名称}/`。 +2. 把组件图拆成单张图。 +3. 导入 Unity,贴图类型改为 **Sprite (2D and UI)**。 + - 落点:`AIClient/Assets/Bundles/UI/Texture/Common/`(或该套组件的子目录)。 + - 现有 Common 图:`spriteMode: 1`(Single),`textureType: 8`(Sprite),`spritePixelsToUnits: 100`,关闭 Mip Map。 +4. 业务界面仍走 JSON→Prefab,见 `Doc/UI_AutoGen_Overview.md`。不要用运行时代码拼业务 UI。 +5. 登记 `Doc/ResDesc_Picture.md`。 + +--- + +## 二、3D 资源 + +### 1. 场景 + +状态:a / b / c / d 已用 `TownSquare` 跑通。 + +**a. 整体设计图(需确认)** + +1. 用项目画图方案绘制整场景设计图(样例:`Doc/Design/Scene/TownSquare/town_square.png`)。 +2. 从设计图归纳场景物件类型,**控制在 10 种以内**(含地表计 1 种)。 +3. **停在这里等人确认**类型清单与整体设计图。未确认不画组件、不生成模型。 +4. 原稿放到 `Doc/Design/Scene/{场景号}/`。 + +`TownSquare` 已确认 8 类:地表、店铺、树、路灯、告示牌、喷泉、长椅、灌木花箱。 + +**b. 分件设计图** + +确认后,总览图作 `-i` 参考,一类一张、单件、纯白底、3/4 视角。文件放在 `Doc/Design/Scene/{场景号}/`,英文短名: + +| 类型 | 文件 | +| --- | --- | +| 地表 | `ground.png` | +| 店铺 | `shop.png` | +| 树 | `tree.png` | +| 路灯 | `lamp.png` | +| 告示牌 | `board.png` | +| 喷泉 | `fountain.png` | +| 长椅 | `bench.png` | +| 灌木花箱 | `bush.png` | + +提示词约束:只画该类型一件,不要把总览里的其它物件带进来。分件必须对齐总览(本次喷泉第一次出成三层,已按总览改回两层)。比例默认 `1:1`;瘦高件(路灯)用 `2:3`。四角纯白检查同「一.1」。登记 `Doc/ResDesc_Picture.md`。 + +```bash +python Tools/gpt_image_generate.py --result-only --quality high --aspect-ratio 1:1 -i Doc/Design/Scene/TownSquare/town_square.png -o Doc/Design/Scene/TownSquare/{name}.png -p "..." +``` + +**c. 生成模型并入库** + +1. 分件设计图逐一走附录 B:混元 `--faces 50k` → `model_lowpoly_bake.py --tris <目标> --size 1024`。 +2. 减面后面数 **300~2000**。`TownSquare` 取值:地表 800、店铺 1800、树 1500、路灯 500、告示牌 800、喷泉 1800、长椅 700、灌木 500。 +3. 碎叶类(灌木)普通 collapse 会卡在约 2 万面;减面脚本在超差且仍高于目标 2 倍时改用**体素重网格**回退。本次灌木最终 **436** 面。 +4. 校验 GLB 文件头须为 `glTF`,且**内嵌贴图能解码**(`hunyuan_3d.glb_check`)。中断拷贝可能得到全 0 文件;贴图 CRC 损坏时 Blender 当缺贴图处理,颜色烘焙会出品红(路灯曾中招)。 +5. 最终资源放到 `AIClient/Assets/Bundles/Scenes/{类型}/{场景号}/{英文短名}/`,含 `{名}.fbx`、`{名}_base.png`、`{名}_mix.png`、`{名}.mat`。设计图留在 `Doc/Design/Scene/{场景号}/`,不进 Unity。 + - 样例:`AIClient/Assets/Bundles/Scenes/Town/TownSquare/{ground,shop,tree,lamp,board,fountain,bench,bush}/` +6. 高模与烘焙中间件留在 `Tools/output/townsquare_3d/`、`Tools/output/townsquare_game/`。编排脚本:`Tools/output/run_townsquare_pipeline.py`。 +7. 登记 `Doc/ResDesc_Model.md`。 + +**d. 摆场景(可进游戏)** + +状态:已用 `TownSquare` 跑通(Unity Pipeline)。 + +1. 所有 Unity 操作走 Pipeline:`unity command run_script --file AgentScripts/BuildTownSquare.cs --entry BuildTownSquare.Run`。 +2. 每个分件做成 Prefab(缩放、XPbr),再拼 `TownSquare.prefab`。游戏 FBX 与混元 GLB 同为 Y-up,原点在底面中点,**正面为局部 -Z**。地表 Prefab 加非凸 **MeshCollider**(FBX Read/Write 打开以便烹饪)。其它物件水平位置按总览图 L 形,**Y 用地表碰撞高度**(从上往下打到 MeshCollider)。店铺/告示牌/长椅的 **-Z 朝向广场中心**。只有红顶店网格,两座店共用。运行时角色同样用 `GroundSit` 贴地。 +3. 可编辑场景:`AIClient/Assets/Bundles/Scenes/Town/TownSquare/TownSquare.unity`(主相机 + 方向光 + 广场实例)。 +4. 运行时由 `TownSquareSpawner` 按地址 `TownSquare` 加载 Prefab(YooAsset Art;编辑器走 AssetDatabase)。`GameplayBootstrap` 先摆广场再刷角色。 +5. Art 收集增加 `Assets/Bundles/Scenes`(`PackDirectory` / `AddressByFileName`)。 + +`TownSquare` 实测三角面:ground 800、shop 1797、tree 1498、lamp 500、board 800、fountain 1798、bench 699、bush 436。 + +### 2. 角色 + +#### A. 人物角色 + +状态:待细化。工具链已在 MaleExplorer 上跑通过(`Doc/ResDesc_Model.md`);本条按新目录与约 3000 面重核。 + +1. 参照风格图绘制设计图:**T Pose**,背景纯白。 +2. 原稿放到 `Doc/Design/Character/{英文名称}/`。 +3. 设计图走附录 B,减面后约 **3000** 面。 +4. 最终资源放到 `AIClient/Assets/Bundles/Characters/{类型}/{英文名称}/`。 +5. 登记 `Doc/ResDesc_Model.md` 与 `Doc/ResDesc_Picture.md`。 + +既有 `Characters/MaleExplorer/` 是早期平铺目录,新角色按 `{类型}/{英文名称}` 存放。 + +#### B. 非人角色 + +状态:待细化。 + +步骤骨架与人物相同(风格图 → 纯白设计图 → 附录 B → 入库 → 登记)。差异留到细化时写明:姿势、面数、`{类型}` 取值、是否需要与人形共用骨骼。 + +### 3. 动画 + +状态:待细化。仓库尚无入库的动画生产脚本,本节不预设工具。 + +#### A. 人形角色动画 + +骨架:动作列表确认 → 生成或导入剪辑 → 绑定到对应角色 → 放到该角色目录或统一动画目录 → 登记 `Doc/ResDesc_Animation.md`。 + +#### B. 非人角色动画 + +骨架同上。与人形是否共用动作、是否单独绑定,细化时确定。 + +### 4. 独立物件 + +状态:待细化。生产走附录 B;**入库目录细化时确定**(本框架不先占一个未使用的 Bundle 路径)。 + +#### A. 武器 + +骨架:纯白设计图 `Doc/Design/Weapon/{英文名称}/` → 附录 B → 入库 → 登记 Model / Picture。 + +#### B. 道具 + +骨架:纯白设计图 `Doc/Design/Prop/{英文名称}/` → 附录 B → 入库 → 登记 Model / Picture。 + +面数在细化时按物件尺度定,默认参照场景组件的 300~2000,不默认使用角色的 3000。 + +### 5. 特效 + +用户提纲里本条与「独立物件」同为第 4 点,流程文档中改为第 5 点。 + +#### A. 序列帧动画 + +状态:待细化。 + +1. 用项目画图方案生成 **4×4** 序列帧,画布 **1024×1024**,背景纯白。 +2. 整图缩小为 **256×256**。 +3. 在 Unity 中做成 Particle 特效供游戏使用。 +4. 图片、Prefab 及相关资源全部放到 `AIClient/Assets/Bundles/Effects/{英文名称}/`。 +5. 登记 `Doc/ResDesc_Effect.md`(序列帧图可同时在 Picture 记一笔)。 + +#### B. 粒子动画 + +状态:待细化。 + +1. 用项目画图方案生成粒子图,画布 **1024×1024**,背景纯白。 +2. 缩小为 **128×128**。 +3. 在 Unity 中做成 Particle 特效供游戏使用。 +4. 图片、Prefab 及相关资源全部放到 `AIClient/Assets/Bundles/Effects/{英文名称}/`。 +5. 登记 `Doc/ResDesc_Effect.md`。 + +--- + +## 三、声音资源 + +状态:待细化。仓库尚无入库的音频生成脚本,本节不预设工具。 + +### 1. 音乐 + +骨架:确定用途与时长 → 生成或导入 → 放到声音 Bundle 目录 → 登记 `Doc/ResDesc_Sound.md`。目录在细化时确定。 + +### 2. 音效 + +骨架同上,与音乐分开登记。 + +--- + +## 附录 A. 项目画图方案 + +节点说明与命令见 [`ResourceCreate.md`](ResourceCreate.md)「文/图生图」。 + +- 脚本:`Tools/gpt_image_generate.py` +- 边长 ≤1024(含 `1024×1024`):默认模型 `gpt-image-2.5` +- 任一边 >1024:必须用 `gpt-image-2-vip`,并传像素尺寸(如 `2048x2048`),不要用 `"16:9"` 这类比例字符串 +- 需要锁风格时用图生图(`--image` / JSON `image`),参考图为对应风格图或 UI 范例图 +- 本流程额外约束:**背景纯白**。写进提示词,出图后目视确认,不把灰底、场景底直接交给切图或图生 3D + +### 出图尺寸(与上文条目对应) + +| 用途 | 尺寸 | 模型 | +| --- | --- | --- | +| 设计图 | 见「一.1」:UI `9:16`、场景 `1:1`、角色 `2:3`(比例字符串,默认模型) | 默认模型 | +| UI 组件图集(沿用现有图集) | `2048×2048` | VIP | +| 序列帧 | 先 `1024×1024`(4×4),再缩到 `256×256` | 默认模型 | +| 粒子图 | 先 `1024×1024`,再缩到 `128×128` | 默认模型 | + +缩小在细化时写成固定步骤(脚本或图像工具二选一,选定后写回本节)。 + +--- + +## 附录 B. 3D 模型生成流程 + +节点说明见 [`ResourceCreate.md`](ResourceCreate.md)「腾讯混元 3D」与「高模减面与贴图烘焙」。调用方只改面数、输出目录和登记类型。 + +```text +纯白设计图 + → 混元图生 3D(Tools/hunyuan_3d_generate.py)→ GLB 高模 + → 减面 + 烘焙 + XPbr(Tools/model_tools/model_lowpoly_bake.py) + → 安装到对应 Bundles 目录 + → 登记 Doc/ResDesc_*.md +``` + +- 混元面数档:`--faces 50k|500k|1m`(默认 `50k`)。这是高模档,不是游戏面数。 +- 游戏面数用 `--tris` 控制。场景组件 / 地表:**300~2000**。人物:约 **3000**。 +- 高模与烘焙中间件留在 `Tools/output/`。 +- 角色安装可参考:`Tools/install_character_bundles.py`。场景分件:拷到 `Bundles/Scenes/{类型}/{场景号}/{英文短名}/`(`Tools/output/run_townsquare_pipeline.py`)。设计原稿不进 Bundles。 +- 碎叶等非流形:`bl_decimate.py` 在 collapse 卡住后会体素重网格再减面。 +- 轴向:混元 GLB = glTF Y-up。烘焙在 Blender 里用 Z-up;**导出 FBX 时** `prepare_game_export` 转回 Y-up,原点放在**底面中点**。**局部 -Z 是正面**(设计图朝相机的那面,与 glTF 相机看向 -Z 一致)。Unity 摆放用「-Z 指向目标」,不要用 `LookRotation` 默认的 +Z forward,也不要再绕 X 扶正或抬高度。 +- 角色 Prefab:Unity 菜单 `AIGame/M3/Setup Character Prefab`。其他类型的 Prefab 步骤在细化时写明。 + +--- + +## 细化验证清单 + +按表从上到下逐条做。一条通过(步骤可重复执行、路径与登记写回本文)后再做下一条。 + +| 顺序 | 条目 | 验证时要写回本文的内容 | +| --- | --- | --- | +| 1 | 一.1 设计图 | 已写回:比例与实测尺寸、三张样例路径、四角纯白检查 | +| 2 | 一.2 UI 图 | 参考图、拆单图步骤、Sprite 导入参数、与 JSON→Prefab 的衔接 | +| 3 | 二.1 场景 | a/b/c/d 已写回:TownSquare 分件入库、拼装 Prefab/场景、运行时加载 | +| 4 | 二.2.A 人物 | 按约 3000 面与 `{类型}/{英文名称}` 重跑或核对 MaleExplorer 差异 | +| 5 | 二.2.B 非人角色 | 姿势、面数、骨骼、目录 | +| 6 | 二.3 动画 | 人形 / 非人各自的生成与绑定方式 | +| 7 | 二.4 独立物件 | 武器与道具的面数和 Bundle 目录 | +| 8 | 二.5 特效 | 缩小步骤、序列帧切格、Particle Prefab 做法 | +| 9 | 三 声音 | 音乐与音效的生成方式和目录 | diff --git a/GameResourceProduct.md b/GameResourceProduct.md new file mode 100644 index 0000000..d4f23c0 --- /dev/null +++ b/GameResourceProduct.md @@ -0,0 +1,401 @@ +# 游戏资源生产流程 + +> 文档状态:**框架已完成,逐条细化与验证中**
+> 适用项目:AIGame(Unity、竖屏、YooAsset)
+> 关联规范:[`ResourceCreate.md`](ResourceCreate.md)、[`UNITY-GUIDE.md`](UNITY-GUIDE.md)、[`Doc/ResDesc.md`](Doc/ResDesc.md) + +## 1. 文档目标与使用方式 + +本文规定游戏资源从需求、设计图、生成、处理、Unity 导入、验收,到资源登记和发布的统一流程。本文先固定流程骨架;带有“待确认”“待验证”的项目,在实际生产前逐条补齐,并在验收记录中留下结论。 + +每个资源都必须经过以下状态: + +```text +需求单 + → 设计图 / 参考图 + → AI 或 DCC 生成 + → 格式、尺寸、面数、贴图处理 + → Unity 导入与组装 + → 功能、视觉、性能验收 + → Doc/ResDesc_*.md 登记 + → YooAsset 打包 / 发布 +``` + +### 1.1 角色分工(框架) + +| 角色 | 主要责任 | 必须产出 | +| --- | --- | --- | +| 需求 / 设计 | 用途、风格、规格、引用图、验收标准 | 资源需求单、参考图 | +| 资源制作 | 设计图、模型、贴图、动画、音频或特效源文件 | 可编辑源文件与中间产物 | +| Unity 集成 | 导入设置、Prefab、场景组装、粒子参数、播放配置 | Unity 资产 | +| 验收 | 检查视觉、规格、运行效果、性能和命名 | 验收记录、问题清单 | +| 资源维护 | 登记路径、生成方式、版本和依赖 | `Doc/ResDesc_*.md` 条目 | + +### 1.2 统一门禁 + +| 门禁 | 检查内容 | 未通过时 | +| --- | --- | --- | +| G0 需求 | 用途、类型、中文名、英文名、目标路径明确 | 退回补需求 | +| G1 设计 | 风格、构图、尺寸、背景、参考图符合要求 | 退回重绘 | +| G2 生成 | 使用项目规定的生成工具或 DCC 流程,有源文件 | 补齐工具和源文件 | +| G3 处理 | 格式、面数、贴图、命名、目录符合本表 | 重新处理 | +| G4 Unity | 导入设置正确,Prefab / 场景 / Animator / Particle 可用 | 在 Unity 中修复并复验 | +| G5 验收 | 运行效果、性能和目标平台通过 | 记录问题并回到对应步骤 | +| G6 登记 | `Doc/ResDesc_*.md` 已记录用途、路径、生成方式 | 不得进入正式 Bundle | + +## 2. 目录、命名与版本约定 + +### 2.1 目录约定 + +| 内容 | 路径 | 状态 | +| --- | --- | --- | +| 设计图、参考图 | `Doc/Design/{类型}/{名称}/` | 已确定 | +| 临时源文件和中间文件 | `TempResource/` 或 `Tools/output/` | 已确定;不直接进入 Bundle | +| UI 生成 JSON | `Doc/UIPrefabCreater/{界面名}.json` | 已确定 | +| UI 单图 / 图集 | `AIClient/Assets/Bundles/UI/Texture/Common/` 或业务子目录 | 已确定 | +| UI Prefab | `AIClient/Assets/Bundles/UI/Prefab/` | 已确定 | +| 场景资源 | `AIClient/Assets/Bundles/Scenes/{类型}/{场景号}/` | 已确定 | +| 角色资源 | `AIClient/Assets/Bundles/Characters/{类型}/{英文名称}/` | 已确定 | +| 特效资源 | `AIClient/Assets/Bundles/Effects/{英文名称}/` | 已确定 | +| 武器、道具 | `AIClient/Assets/Bundles/Items/{类型}/{英文名称}/` | **暂定,待确认** | +| 音乐、音效 | `AIClient/Assets/Bundles/Audio/{类型}/{英文名称}/` | **暂定,待确认** | + +移动、重命名或删除 `AIClient/Assets/` 下已有资源时遵循 [`UNITY-GUIDE.md`](UNITY-GUIDE.md),通过 Unity Pipeline 操作,不手改 `.meta` 文件。 + +### 2.2 命名约定 + +- 中文名称用于需求和设计目录;英文名称用于 Unity 资产、Prefab、动画片段和运行时寻址。 +- 英文名称只使用 `A-Z`、`a-z`、数字和下划线;同一资源全流程保持一致。 +- 目录名、Prefab 名、主模型名、主贴图名和登记名应能互相对应。 +- 版本建议采用 `名称_v主版本.次版本`;正式资源的版本号由项目版本策略最终确认。 +- 设计源文件、导出文件、中间文件和 Bundle 成品应区分存放,避免把中间文件误收集进 YooAsset。 + +### 2.3 资源登记矩阵 + +| 资源类型 | 登记文件 | 至少记录 | +| --- | --- | --- | +| 2D 设计图、UI 图、贴图、参考图 | [`Doc/ResDesc_Picture.md`](Doc/ResDesc_Picture.md) | 路径、用途、生成方式、尺寸或图集信息 | +| 3D 场景、角色、武器、道具、模型贴图 | [`Doc/ResDesc_Model.md`](Doc/ResDesc_Model.md) | 路径、用途、生成方式、面数、配套资源 | +| 人形 / 非人形动画 | [`Doc/ResDesc_Animation.md`](Doc/ResDesc_Animation.md) | 路径、绑定对象、片段清单、生成方式 | +| 序列帧 / 粒子特效 | [`Doc/ResDesc_Effect.md`](Doc/ResDesc_Effect.md) | 路径、粒子预设、贴图规格、生成方式 | +| 音乐 / 音效 | [`Doc/ResDesc_Sound.md`](Doc/ResDesc_Sound.md) | 路径、用途、格式、时长、生成方式 | + +**登记是 G6 门禁的一部分。** 本文新增流程不会替代资源登记文件;实际产出完成后必须同时更新对应登记表。 + +## 3. 通用生产卡(每个资源一份) + +在开始制作前建立一张生产卡,可放在对应的 `Doc/Design/{类型}/{名称}/` 目录中。字段如下: + +```text +资源 ID: +中文名称: +英文名称: +资源类型: +用途 / 使用场景: +风格参考: +输入设计图 / 参考图: +生成工具与版本: +源文件路径: +中间文件路径: +Unity 成品路径: +规格预算(尺寸 / 面数 / 时长 / 帧数): +依赖资源: +验收人: +状态:G0 / G1 / G2 / G3 / G4 / G5 / G6 +问题与待确认项: +``` + +## 4. 一、2D 资源 + +### 4.1 设计图 + +**目标**:为 UI、场景、角色、物件和特效提供统一的风格设计依据。 + +#### 流程 + +1. 明确资源用途、视角、构图、尺寸和使用平台。 +2. 读取项目画图方案并选定生成模型、提示词和参考图。工具用法遵循 [`ResourceCreate.md`](ResourceCreate.md)。 +3. 使用项目画图方案绘制,背景保持纯白;如后续用途要求透明通道,单独导出透明版本,不能用白底文件直接代替。 +4. 将源图、导出图和生产卡保存到 `Doc/Design/{类型}/{名称}/`。 +5. 通过 G1 设计验收后,才能作为 3D、UI 或特效生成输入。 + +#### 设计图验收 + +- [ ] 主体完整、比例和视角符合用途。 +- [ ] 风格与项目参考图一致,并记录引用文件。 +- [ ] 背景为纯白;透明版本(如需要)另行检查 Alpha。 +- [ ] 文件尺寸、色彩空间和导出格式已写入生产卡。 +- [ ] 文件名、目录名和资源 ID 一致。 + +**待确认**:各资源类型的标准分辨率、源文件格式、是否必须保留可编辑图层。 + +### 4.2 UI 图 + +**目标**:生成可复用的风格组件图,并在 Unity 中转换为 Sprite UI 资源。 + +#### 流程 + +1. 参考现有 UI 范例图和项目风格文件:`Doc/Design/ui_design.jpg`、`Doc/UI_Simple_Set.md`、`Doc/UI_Normal_Set.md`、`Doc/UI_Pic_Set.md`。 +2. 使用项目画图方案绘制新的风格组件图,初稿背景纯白;需要运行时透明的组件另导出带 Alpha 的版本。 +3. 将组件拆成单一图,建立单图名称、用途和九宫格信息清单。若保留图集,则按对应图集文档记录切片坐标。 +4. 将单图或图集导入 `AIClient/Assets/Bundles/UI/Texture/Common/` 或业务子目录。 +5. Unity 导入设置:`Texture Type = Sprite (2D and UI)`;单图使用 `Sprite Mode = Single`,图集使用 `Multiple`;`Mesh Type = Full Rect`;按项目规范选择过滤和压缩。 +6. 业务面板必须建立 `Doc/UIPrefabCreater/{界面名}.json`,通过 JSON→Prefab 生成 `AIClient/Assets/Bundles/UI/Prefab/{界面名}.prefab`,不能用运行时代码临时拼业务 UI 骨架。 +7. UI 设计分辨率固定为竖屏 `[1080, 1920]`;文字控件使用 TextMeshPro,节点使用英文命名。 +8. 通过 Unity 检查九宫格、锚点、透明边缘、不同分辨率适配和交互态,再登记图片资源。 + +#### UI 图验收 + +- [ ] 与现有 UI 风格一致,组件边缘和圆角无明显接缝。 +- [ ] 单图名称与清单、JSON 和代码引用一致。 +- [ ] Sprite 类型、模式、Full Rect、过滤、压缩和 Alpha 设置正确。 +- [ ] 9-slice 的 Border 已在 Sprite Editor 中验证;图标类不误设九宫格。 +- [ ] 业务 Prefab 来源于 JSON,分辨率为 `[1080,1920]`。 +- [ ] 已在 `Doc/ResDesc_Picture.md` 登记图集、单图或设计图。 + +**待确认**:各 UI 组件的标准尺寸、是否统一使用白底源图、公共图集与业务图集的拆分策略。 + +## 5. 二、3D 资源 + +### 5.1 场景 + +#### A. 整体场景设计图 + +1. 收集关卡功能、相机、路线、部署区和风格参考。 +2. 参照风格图绘制整体设计图,标出地表、建筑、机关、装饰和交互区域。 +3. 整体场景中的物件类型控制在 **10 种以内**,同时列出类型编号、用途、复用关系和数量预估。 +4. 在 G1 提交整体设计图和物件类型清单,等待确认;未确认前不进入批量建模。 + +交付物:整体设计图、物件类型表、场景号、相机 / 尺度说明、确认记录。 + +#### B. 场景组件与地表设计图 + +1. 按整体设计图逐一拆出场景各类型组件和地表模块。 +2. 每个组件绘制正视图、侧视图或必要的尺寸标注;背景纯白。 +3. 地表设计图应标明拼接边、可行走区域、碰撞或阻挡区域,以及重复使用方式。 +4. 为每个组件分配英文名称和类型编号,保存到 `Doc/Design/Scene/{场景号}/{类型}/`(目录大小写以项目最终约定为准)。 + +交付物:组件设计图、地表设计图、尺寸 / 枢轴说明、组件清单。 + +#### C. 3D 模型生成与 Unity 集成 + +1. 将组件和地表设计图逐一送入项目 3D 模型生成流程:图生 3D、低模处理、UV、贴图烘焙和格式导出,具体命令遵循 [`ResourceCreate.md`](ResourceCreate.md)。 +2. 游戏成品的目标面数为 **300–2,000**;“面数”统计口径(面 / 三角面、是否包含碰撞体)必须在验收前确认并记录。 +3. 完成材质、贴图、碰撞、枢轴、缩放和 LOD(如需要)处理。 +4. 将最终模型、贴图、材质、Prefab 和场景配套资源放入: + + `AIClient/Assets/Bundles/Scenes/{类型}/{场景号}/` + +5. 在 Unity 中验证拼接、光照、相机可见性、碰撞、批次 / 内存和移动端表现。 +6. 通过 G5 后登记 `Doc/ResDesc_Model.md`;中间 GLB、减面和烘焙目录留在 `Tools/output/` 或 `TempResource/`,不进入正式 Bundle。 + +#### 场景验收 + +- [ ] 整体设计图已确认,物件类型不超过 10 种或有书面例外。 +- [ ] 每种组件与地表都有独立设计图和资源 ID。 +- [ ] 面数落在 300–2,000 目标内,统计口径已记录。 +- [ ] UV、贴图、材质、碰撞、枢轴和缩放正确。 +- [ ] 场景可在目标设备档位运行,无明显穿插、漏面、紫材质或拼接缝。 +- [ ] 最终资源路径和模型登记已完成。 + +**待确认**:场景类型命名、场景号格式、地表模块尺寸、碰撞体规则、LOD 档位和面数统计工具。 + +### 5.2 角色 + +#### A. 人物角色 + +1. 参照风格图绘制角色设计图,采用 **T Pose**,背景纯白;正面、侧面和关键装备应清晰可见。 +2. 通过项目图生 3D、减面、UV 和贴图烘焙流程生成模型。 +3. 游戏角色模型目标约 **3,000 面**;面数口径和是否包含配件需在验收时记录。 +4. 角色、贴图、材质、Prefab、骨骼和概念图放入: + + `AIClient/Assets/Bundles/Characters/{类型}/{英文名称}/` + +5. 通过 Unity 验证骨骼、材质、比例、T Pose、Animator 绑定和目标平台性能。 +6. 完成后登记 `Doc/ResDesc_Model.md`;动画另登记 `Doc/ResDesc_Animation.md`。 + +#### B. 非人角色 + +1. 先确定体型、移动方式、攻击方式、骨骼需求和是否需要飞行 / 多足 / 触手等特殊结构。 +2. 按对应动作姿态绘制设计图;若需要建模对照,背景纯白,并提供关键视图。 +3. 走与人物角色相同的图生 3D、低模、UV、烘焙和 Unity 验收流程;面数预算按角色类型单独记录,不能直接套用人物预算。 +4. 最终目录沿用:`AIClient/Assets/Bundles/Characters/{类型}/{英文名称}/`。 + +**待确认**:非人角色的标准姿态、骨骼模板、面数预算、动画重定向策略和飞行单位的碰撞规则。 + +### 5.3 动画 + +动画资源与绑定对象一起评审,避免模型完成后才发现骨骼或动作缺失。默认建议将动画放在角色目录下: + +`AIClient/Assets/Bundles/Characters/{类型}/{英文名称}/Animations/`(**目录方案待确认**) + +#### A. 人形角色动画 + +1. 确认骨骼 / Avatar、单位比例和根节点规则。 +2. 建立动作清单:待机、移动、攻击、受击、死亡、技能、胜利 / 失败等,按实际角色裁剪。 +3. 统一片段命名、循环设置、Root Motion 规则和 Animator 状态机参数。 +4. 在 Unity 中验证过渡、循环首尾、脚底滑动、攻击事件和技能时序。 + +#### B. 非人角色动画 + +1. 按移动方式和攻击方式建立动作清单,覆盖多足、飞行、爬行或特殊肢体。 +2. 验证根骨骼、碰撞体、寻路方向和攻击判定点与动画同步。 +3. 特殊动画不能假设可直接重定向到人形 Avatar,应在生产卡中写明绑定方式。 + +#### 动画验收与登记 + +- [ ] 所有片段可在目标 Animator 中播放。 +- [ ] 循环、速度、过渡、Root Motion 和事件经过实机或模拟验证。 +- [ ] 片段清单、帧率、时长、绑定对象和路径已登记。 +- [ ] 生成方式和源文件可追溯。 + +## 6. 三、独立物件 + +独立物件沿用场景 / 角色的 3D 生成、低模、UV、烘焙和 Unity 验收流程;若物件需要动画或特效,按相应章节追加门禁。 + +### 6.1 武器 + +- 先确定持握点、尺寸、攻击方向、挂点和角色 / 机关兼容关系。 +- 设计图应标注正面、侧面、关键结构和材质区域;背景纯白。 +- 模型需验证 Pivot、缩放、碰撞、材质和挂点;武器若独立寻址,使用英文名称。 +- 暂定成品路径:`AIClient/Assets/Bundles/Items/Weapons/{英文名称}/`。 + +### 6.2 道具 + +- 先确定拾取、摆放、交互、破坏或掉落状态。 +- 设计图应标明可见面、底部接触面和与场景地表的关系;背景纯白。 +- 模型需验证 Pivot、碰撞、交互点、材质和是否需要 LOD / 简化版。 +- 暂定成品路径:`AIClient/Assets/Bundles/Items/Props/{英文名称}/`。 + +**待确认**:武器和道具是否统一放入 `Items`,是否需要独立的登记文件,以及各类别面数预算。 + +## 7. 四、特效 + +特效成品目录必须包含使用所需的图片、材质、粒子系统、Prefab 及其他依赖资源: + +`AIClient/Assets/Bundles/Effects/{英文名称}/` + +特效在 Unity 中制作和持久化;不得用运行时代码临时拼出正式特效资源。 + +### 7.1 序列帧动画 + +1. 使用项目画图方案生成 **4×4 序列帧动画**,源图尺寸为 **1024×1024**。 +2. 检查 16 帧排列、帧间距、主体中心、透明边缘和播放顺序。 +3. 将序列帧缩小为 **256×256** 的运行时图;源图和运行时图均保留可追溯关系。 +4. 导入 Unity,按序列帧切片并制作 Particle System / VFX Prefab。 +5. 将图片、材质、粒子配置、Prefab 和依赖资源放入 `Effects/{英文名称}/`。 +6. 验证播放速度、循环 / 单次、朝向、排序、过度绘制和移动端性能。 + +### 7.2 粒子动画 + +1. 使用项目画图方案生成粒子图,源图尺寸为 **1024×1024**。 +2. 将粒子图缩小为 **128×128** 的运行时图。 +3. 在 Unity 中制作粒子系统和 Prefab,验证贴图采样、混合、生命周期、发射量和回收。 +4. 将图片、材质、粒子配置、Prefab 和依赖资源放入 `Effects/{英文名称}/`。 + +#### 特效验收与登记 + +- [ ] 序列帧为 4×4、源图 1024×1024、运行时图 256×256;粒子图运行时为 128×128。 +- [ ] 背景 / Alpha、混合模式、采样边缘和排序正确;透明要求需在生产卡明确。 +- [ ] Prefab 在目标场景中可播放,生命周期和销毁策略正确。 +- [ ] 同屏数量、粒子数、Overdraw 和内存达到目标平台要求。 +- [ ] 已登记 `Doc/ResDesc_Effect.md` 和其中引用的图片资源。 + +**待确认**:粒子源图是否强制透明、序列帧切片命名、特效粒子数预算、低端机降级方案。 + +## 8. 五、声音资源 + +音乐和音效使用同一套“需求 → 试听样片 → 编辑 / 导出 → Unity 导入 → 播放验证 → 登记”流程。暂定运行时目录为 `AIClient/Assets/Bundles/Audio/{类型}/{英文名称}/`,最终目录需确认。 + +### 8.1 音乐 + +1. 明确使用场景:主界面、战斗、Boss、胜利、失败或活动。 +2. 记录情绪、速度、循环点、时长、层次切换和是否支持无缝循环。 +3. 生成或采购后保留源工程、母带和运行时导出文件,写明授权 / 来源。 +4. 按目标平台导出并在 Unity 中验证循环、淡入淡出、暂停恢复、切场景和内存占用。 +5. 登记路径、格式、采样率、声道、时长、循环点和生成方式。 + +### 8.2 音效 + +1. 建立事件清单:UI、召唤、合成、攻击、受击、技能、警告、Boss、胜负等。 +2. 为每个事件指定英文名称、变体数量、随机 / 顺序播放规则和优先级。 +3. 编辑音量、起始静音、尾部、响度和循环属性;具体响度标准待确认。 +4. Unity 中验证多次触发、并发上限、混音组、距离衰减(如有)和低端设备表现。 +5. 登记到 `Doc/ResDesc_Sound.md`。 + +**待确认**:音频目录、主格式(如 WAV / OGG)、采样率、响度基准、音乐循环格式、音效并发上限和授权字段。 + +## 9. Unity 导入、打包与发布检查 + +### 9.1 导入检查 + +- [ ] 资源放在正确的 `AIClient/Assets/Bundles/` 子目录。 +- [ ] 使用 Unity Pipeline 或编辑器完成导入和序列化资源变更。 +- [ ] 纹理、模型、音频、动画、材质和粒子设置与生产卡一致。 +- [ ] 没有缺失引用、紫色材质、错误坐标、异常缩放、重复 GUID 或无关中间文件。 + +### 9.2 YooAsset 检查 + +- [ ] Collector 收集到正确 Package,场景 / 角色 / UI / 特效 / 音频的更新策略符合项目规划。 +- [ ] Bundle 中不包含 `Tools/output/`、`TempResource/` 或源工程等中间文件。 +- [ ] 资源寻址名、依赖和版本可通过开发期加载模式验证。 +- [ ] 打包前对应 `Doc/ResDesc_*.md` 已更新。 + +### 9.3 运行检查 + +- [ ] 编辑器模拟模式可加载并使用。 +- [ ] 目标平台或等效性能档通过视觉、内存、加载和帧率检查。 +- [ ] 资源卸载、切场景、重复播放和异常中断后无明显泄漏或残留。 +- [ ] 变更记录包含资源 ID、版本、变更内容、验证环境和已知问题。 + +## 10. 逐条细化与验证计划 + +本文下一阶段按下列顺序把“待确认”项变成可执行标准,每完成一条就更新对应章节的验收表和示例: + +1. **工具与输入**:确认画图、图生 3D、减面、烘焙、音频编辑工具及版本。 +2. **路径与命名**:确认武器、道具、动画和音频的最终目录、英文命名和寻址规则。 +3. **尺寸与性能**:确认各类 2D 尺寸、模型面数统计口径、贴图尺寸、粒子预算和音频规格。 +4. **设计评审**:用一个场景样例验证“10 种以内组件”和“等待确认”门禁。 +5. **2D 样例**:验证一张设计图、一套 UI 单图和一个 JSON→Prefab 面板。 +6. **3D 样例**:验证一个场景组件、一个人物角色、一个非人角色、一个武器和一个道具。 +7. **动画与特效样例**:验证一套人形动作、一套非人动作、一个 4×4 序列帧和一个粒子特效。 +8. **声音样例**:验证一首循环音乐和三类常用音效的导入、混音与登记。 +9. **打包回归**:将已验收样例走完 YooAsset 收集、加载、卸载和登记流程。 + +### 10.1 验证记录模板 + +```text +验证日期: +资源 ID / 版本: +验证章节: +验证环境:Unity 版本 / 平台 / 性能档 +输入文件: +检查项: +结果:通过 / 不通过 / 待确认 +问题: +修复记录: +验收人: +关联登记文件: +``` + +## 11. 首轮待确认清单 + +| 编号 | 事项 | 影响章节 | 当前结论 | +| --- | --- | --- | --- | +| C01 | “项目画图方案”的固定模型、提示词和参考图 | 2D、特效 | 待确认 | +| C02 | 纯白背景与透明 Alpha 的适用边界 | 2D、特效 | 待确认 | +| C03 | 2D 各类标准分辨率和源文件格式 | 2D | 待确认 | +| C04 | 场景组件不超过 10 种的计数口径和审批人 | 场景 | 待确认 | +| C05 | “面数”是面数还是三角面数,以及统计工具 | 场景、角色 | 待确认 | +| C06 | 非人角色姿态、骨骼和面数预算 | 角色、动画 | 待确认 | +| C07 | 动画目录、片段命名和 Root Motion 规则 | 动画 | 待确认 | +| C08 | 武器、道具最终目录和面数预算 | 独立物件 | 待确认 | +| C09 | 序列帧 / 粒子 Alpha、切片命名和粒子预算 | 特效 | 待确认 | +| C10 | 音频目录、格式、采样率、响度和授权字段 | 声音 | 待确认 | +| C11 | 各类型资源的验收人和审批记录位置 | 全部 | 待确认 | + +## 12. 变更记录 + +| 日期 | 版本 | 变更 | 状态 | +| --- | --- | --- | --- | +| 2026-09-28 | 0.1 | 建立 2D、3D、动画、独立物件、特效、声音的生产流程框架;加入目录、门禁、登记和逐条验证计划 | 框架完成 | diff --git a/Tools/hunyuan_3d/auth.py b/Tools/hunyuan_3d/auth.py index c5c699f..f6a273e 100644 --- a/Tools/hunyuan_3d/auth.py +++ b/Tools/hunyuan_3d/auth.py @@ -81,7 +81,17 @@ def status() -> dict: def is_logged_in() -> bool: - return storage_state_path().is_file() + path = storage_state_path() + if not path.is_file() or path.stat().st_size < 8: + return False + try: + with path.open("rb") as fp: + if fp.read(1) != b"{": + return False + json.loads(path.read_text("utf-8")) + return True + except (OSError, ValueError, UnicodeDecodeError): + return False def logout() -> dict: diff --git a/Tools/hunyuan_3d/client.py b/Tools/hunyuan_3d/client.py index 3b03985..b576f4e 100644 --- a/Tools/hunyuan_3d/client.py +++ b/Tools/hunyuan_3d/client.py @@ -798,6 +798,9 @@ def generate_from_image( saved = directory / "hunyuan_raw.glb" _download_url(context.request, glb_url, saved, log) mesh = _extract_mesh(saved, directory) + from .glb_check import assert_glb_textures_ok + + assert_glb_textures_ok(mesh) log.write(f"extracted {mesh}\n") (directory / "hunyuan_network.json").write_text( json.dumps(network_hits[-120:], ensure_ascii=False, indent=2), diff --git a/Tools/hunyuan_3d/glb_check.py b/Tools/hunyuan_3d/glb_check.py new file mode 100644 index 0000000..c829b1e --- /dev/null +++ b/Tools/hunyuan_3d/glb_check.py @@ -0,0 +1,88 @@ +"""检查混元 GLB 内嵌贴图能否解码。损坏 PNG 在 Blender 里是品红,烘进 color 就会整灯发紫。""" +from __future__ import annotations + +import json +import struct +from pathlib import Path +from typing import List, Tuple + + +def _glb_chunks(data: bytes) -> Tuple[dict, bytes]: + if len(data) < 12 or data[:4] != b"glTF": + raise ValueError("不是 glTF GLB") + offset = 12 + gltf = None + blob = b"" + while offset + 8 <= len(data): + chunk_len, chunk_type = struct.unpack_from(" List[bytes]: + views = gltf.get("bufferViews") or [] + out: List[bytes] = [] + for image in gltf.get("images") or []: + uri = image.get("uri") + if isinstance(uri, str) and uri.startswith("data:"): + continue + index = image.get("bufferView") + if index is None: + continue + view = views[int(index)] + start = int(view.get("byteOffset") or 0) + length = int(view.get("byteLength") or 0) + out.append(blob[start : start + length]) + return out + + +def glb_textures_ok(path: Path) -> Tuple[bool, str]: + """内嵌贴图都能解码则 (True, '')。无贴图或损坏返回 False 与原因。""" + path = Path(path) + if not path.is_file() or path.stat().st_size < 12: + return False, "文件不存在或过短" + data = path.read_bytes() + if data[:4] != b"glTF": + return False, "文件头不是 glTF" + try: + gltf, blob = _glb_chunks(data) + blobs = _image_blobs(gltf, blob) + except Exception as exc: # noqa: BLE001 + return False, str(exc) + if not blobs: + return False, "没有内嵌贴图" + try: + from PIL import Image + except ImportError: + for raw in blobs: + if not (raw.startswith(b"\x89PNG") or raw[:2] == b"\xff\xd8"): + return False, "内嵌贴图不是 PNG/JPEG" + return True, "" + import io + + for i, raw in enumerate(blobs): + try: + img = Image.open(io.BytesIO(raw)) + img.load() + if img.size[0] < 8 or img.size[1] < 8: + return False, f"贴图 {i} 尺寸无效 {img.size}" + except Exception as exc: # noqa: BLE001 + return False, f"贴图 {i} 无法解码: {exc}" + return True, "" + + +def assert_glb_textures_ok(path: Path) -> None: + ok, reason = glb_textures_ok(path) + if not ok: + raise RuntimeError( + f"{path} 内嵌贴图不可用({reason})。Blender 会显示品红并烘进 color。" + ) diff --git a/Tools/install_character_bundles.py b/Tools/install_character_bundles.py index 349a9f1..03fd6fb 100644 --- a/Tools/install_character_bundles.py +++ b/Tools/install_character_bundles.py @@ -6,13 +6,14 @@ {ActorName}_base.png # RGB albedo, A=AO/透明 {ActorName}_mix.png # RG sphere-normal, B=metallic, A=roughness {ActorName}.mat # Test/XPbr - concept.png # 可选 {ActorName}.prefab # Unity 菜单生成 +概念图留在 Doc/Design/Character/,不要拷进 Bundles。 + 兼容旧五通道烘焙目录(_color/_normal/_ao/_metallic/_roughness)。 用法: - python Tools/install_character_bundles.py -a MaleExplorer -b Tools/output/actor_game/actor_xpbr -c ref.png + python Tools/install_character_bundles.py -a MaleExplorer -b Tools/output/actor_game/actor_xpbr """ from __future__ import annotations @@ -116,19 +117,13 @@ def install( shutil.copy2(meta, Path(str(target) + ".meta")) copied.append(str(target.relative_to(_repo_root())).replace("\\", "/")) - concept_rel = None if concept is not None: concept = concept.expanduser().resolve() if not concept.is_file(): raise FileNotFoundError(f"概念图不存在: {concept}") - target = dest / "concept.png" - if not dry_run: - shutil.copy2(concept, target) - concept_rel = str(target.relative_to(_repo_root())).replace("\\", "/") - copied.append(concept_rel) mode = "xpbr" if "base" in sources else "legacy_pbr" - return { + result = { "ok": True, "actor": actor, "mode": mode, @@ -139,6 +134,9 @@ def install( f"生成挂 XPbr 的 {actor}.prefab;并登记 Doc/ResDesc_Model.md" ), } + if concept is not None: + result["design"] = str(concept.relative_to(_repo_root())).replace("\\", "/") + return result def main(argv: list[str] | None = None) -> int: @@ -150,7 +148,12 @@ def main(argv: list[str] | None = None) -> int: required=True, help="model_lowpoly_bake 的 *_xpbr 目录,或旧五通道 bake 子目录", ) - p.add_argument("--concept", "-c", default=None, help="可选概念图,复制为 concept.png") + p.add_argument( + "--concept", + "-c", + default=None, + help="设计原稿路径(仅校验存在,不拷进 Bundles;应放在 Doc/Design/)", + ) p.add_argument("--dry-run", action="store_true") args = p.parse_args(argv) try: diff --git a/Tools/model_tools/bl_bake.py b/Tools/model_tools/bl_bake.py index 5ad4ad2..f758532 100644 --- a/Tools/model_tools/bl_bake.py +++ b/Tools/model_tools/bl_bake.py @@ -91,6 +91,7 @@ def _import_model_joined(path, warnings): bpy.ops.object.select_all(action='DESELECT') obj.select_set(True) bpy.context.view_layer.objects.active = obj + # 导入补偿(FBX +90°X)烤进顶点,烘焙在 Blender Z-up 下进行;导出前 restore_source_yup。 bpy.ops.object.transform_apply(location=True, rotation=True, scale=True) return obj @@ -269,11 +270,13 @@ def main(): # 导出低模:剥掉烘焙 image 节点,材质名保留 stem(工具3 兜底识别用) bake_mat.node_tree.nodes.remove(target_node) + from bl_decimate import export_fbx_source_yup, prepare_game_export + prepare_game_export(low, restore_axis=True) out_fbx = os.path.join(outdir, stem + ".fbx") bpy.ops.object.select_all(action='DESELECT') low.select_set(True) - bpy.ops.export_scene.fbx(filepath=out_fbx, use_selection=True, - path_mode='STRIP', embed_textures=False) + bpy.context.view_layer.objects.active = low + export_fbx_source_yup(out_fbx) print("MT_SUMMARY " + json.dumps( {"stem": stem, "fbx": os.path.basename(out_fbx), "outputs": outputs, diff --git a/Tools/model_tools/bl_convert.py b/Tools/model_tools/bl_convert.py index 6dcdf4f..a4e406e 100644 --- a/Tools/model_tools/bl_convert.py +++ b/Tools/model_tools/bl_convert.py @@ -397,8 +397,17 @@ def main(): for m in used_mats] _strip_textures() + from bl_decimate import export_fbx_source_yup, prepare_game_export + meshes = [o for o in bpy.data.objects if o.type == "MESH"] + for obj in meshes: + prepare_game_export(obj) + bpy.ops.object.select_all(action="DESELECT") + for obj in meshes: + obj.select_set(True) + if meshes: + bpy.context.view_layer.objects.active = meshes[0] fbx_out = os.path.join(outdir, model_name + ".fbx") - bpy.ops.export_scene.fbx(filepath=fbx_out, path_mode='STRIP', embed_textures=False) + export_fbx_source_yup(fbx_out) print("MT_SUMMARY " + json.dumps( {"model": model_name, "fbx": os.path.basename(fbx_out), "materials": results}, diff --git a/Tools/model_tools/bl_decimate.py b/Tools/model_tools/bl_decimate.py index 3c6dba2..96887a6 100644 --- a/Tools/model_tools/bl_decimate.py +++ b/Tools/model_tools/bl_decimate.py @@ -32,6 +32,74 @@ def import_model_objects(path): bpy.ops.import_scene.gltf(filepath=path) return [obj for obj in bpy.data.objects if obj not in before] + +def restore_source_yup(obj): + """Blender Z-up 顶点还原为混元/glTF Y-up(-90°X)。须在 transform_apply 之后调用。""" + import math + import bpy + bpy.ops.object.select_all(action='DESELECT') + obj.select_set(True) + bpy.context.view_layer.objects.active = obj + obj.rotation_mode = "XYZ" + obj.rotation_euler = (-math.pi / 2.0, 0.0, 0.0) + bpy.ops.object.transform_apply(location=False, rotation=True, scale=False) + + +def snap_origin_bottom_center(obj): + """原点放到底面中点:X/Z 居中,Y = 最低点。须已是 Y-up 且 transform 已 apply。""" + from mathutils import Vector + verts = obj.data.vertices + if not verts: + return + xs = [v.co.x for v in verts] + ys = [v.co.y for v in verts] + zs = [v.co.z for v in verts] + origin = Vector(( + (min(xs) + max(xs)) * 0.5, + min(ys), + (min(zs) + max(zs)) * 0.5, + )) + for v in verts: + v.co -= origin + obj.data.update() + obj.location = (0.0, 0.0, 0.0) + + +def prepare_game_export(obj, restore_axis=None): + """最终游戏 FBX:Y-up,原点在底面中点。 + + restore_axis: True 强制 -90°X;False 跳过;None 则导入后物体仍带约 +90°X 才还原。 + 烘焙结束时顶点已是 Z-up、旋转已 apply,必须传 True。 + 导出后:Y-up、原点底面中点、局部 -Z 为正面(与混元/glTF 一致)。 + """ + import math + import bpy + bpy.ops.object.select_all(action='DESELECT') + obj.select_set(True) + bpy.context.view_layer.objects.active = obj + if restore_axis is None: + obj.rotation_mode = "XYZ" + restore_axis = abs(obj.rotation_euler.x) > math.radians(45.0) + bpy.ops.object.transform_apply(location=True, rotation=True, scale=True) + if restore_axis: + restore_source_yup(obj) + snap_origin_bottom_center(obj) + + +def export_fbx_source_yup(filepath): + """导出与混元 GLB 相同的 Y-up FBX。调用前顶点须已是 Y-up。""" + import bpy + bpy.ops.export_scene.fbx( + filepath=filepath, + use_selection=True, + object_types={"MESH"}, + axis_forward="-Z", + axis_up="Y", + bake_space_transform=False, + path_mode="STRIP", + embed_textures=False, + ) + TOLERANCE = 0.03 # 面数相对误差容忍 MAX_RETRY = 2 # ratio 修正轮数上限 @@ -159,6 +227,56 @@ def _decimate(obj, ratio): _apply_modifier(obj, mod) +def _voxel_remesh(obj, voxel_size): + import bpy + bpy.context.view_layer.objects.active = obj + obj.select_set(True) + mod = obj.modifiers.new("mt_voxel", "REMESH") + mod.mode = "VOXEL" + mod.voxel_size = max(float(voxel_size), 1e-4) + _apply_modifier(obj, mod) + + +def _voxel_fallback(obj, target, warnings): + """碎叶/非流形上 collapse 会卡在高面数;复制试体素尺寸后重网格,再 collapse。""" + import bpy + import mathutils + + bb = [mathutils.Vector(c) for c in obj.bound_box] + diag = (bb[0] - bb[6]).length + if diag <= 0.0: + return len(obj.data.polygons) + + bpy.context.view_layer.objects.active = obj + obj.select_set(True) + best_size = diag / 16.0 + best_diff = None + for div in (12, 16, 20, 24, 32): + size = diag / float(div) + bpy.ops.object.duplicate() + dup = bpy.context.view_layer.objects.active + _voxel_remesh(dup, size) + cur = len(dup.data.polygons) + diff = abs(cur - target) + if best_diff is None or diff < best_diff: + best_diff = diff + best_size = size + bpy.data.objects.remove(dup, do_unlink=True) + bpy.context.view_layer.objects.active = obj + obj.select_set(True) + + _voxel_remesh(obj, best_size) + cur = len(obj.data.polygons) + warnings.append( + "collapse 卡住后改用体素重网格 voxel=%.5f → %d 面" % (best_size, cur) + ) + if cur > target: + _decimate(obj, decimate_ratio(target, cur)) + _triangulate(obj) + cur = len(obj.data.polygons) + return cur + + def _clean_mesh(obj, warnings): """减面前清理:按局部包围盒对角线相对焊接重合点 + 去退化面,给 collapse 更干净的流形, 减少被迫加的 seam。各步失败降级不中断。""" @@ -474,6 +592,8 @@ def main(): # 重试用尽仍超差且偏多:记录警告,交由上层决定是否可接受 if not within_tolerance(target, cur) and cur > target: warnings.append("修正 %d 轮后仍超差:%d 面(目标 %d ±3%%)" % (MAX_RETRY, cur, target)) + if cur > max(target * 2, target + 500): + cur = _voxel_fallback(obj, target, warnings) uv_info = _do_unwrap(obj, unwrap_mode, warnings, overlap_tol) uv_png = os.path.splitext(os.path.abspath(out_fbx))[0] + "_uv.png" diff --git a/Tools/model_tools/bl_restore_yup.py b/Tools/model_tools/bl_restore_yup.py new file mode 100644 index 0000000..ca8f6f9 --- /dev/null +++ b/Tools/model_tools/bl_restore_yup.py @@ -0,0 +1,58 @@ +"""把游戏 FBX 整理成混元 GLB 轴向(Y-up)且原点在底面中点。可重复执行。 +调用:blender -b --factory-startup --python bl_restore_yup.py -- [fbx...] +""" +import json +import os +import sys + +sys.path.insert(0, os.path.dirname(os.path.abspath(__file__))) + +from bl_decimate import ( # noqa: E402 + export_fbx_source_yup, + import_model_objects, + prepare_game_export, +) + + +def restore_file(path): + import bpy + + bpy.ops.wm.read_factory_settings(use_empty=True) + imported = import_model_objects(path) + meshes = [o for o in imported if o.type == "MESH"] + if not meshes: + return {"path": path, "error": "no mesh"} + for obj in meshes: + prepare_game_export(obj) + bpy.ops.object.select_all(action="DESELECT") + for obj in meshes: + obj.select_set(True) + bpy.context.view_layer.objects.active = meshes[0] + export_fbx_source_yup(path) + verts = meshes[0].data.vertices + xs = [v.co.x for v in verts] + ys = [v.co.y for v in verts] + zs = [v.co.z for v in verts] + return { + "path": os.path.basename(path), + "meshes": len(meshes), + "min_y": round(min(ys), 6), + "mid_x": round((min(xs) + max(xs)) * 0.5, 6), + "mid_z": round((min(zs) + max(zs)) * 0.5, 6), + } + + +def main(): + argv = sys.argv[sys.argv.index("--") + 1 :] + results = [] + for raw in argv: + path = os.path.abspath(raw) + if not os.path.isfile(path): + results.append({"path": raw, "error": "missing"}) + continue + results.append(restore_file(path)) + print("MT_SUMMARY " + json.dumps(results, ensure_ascii=False)) + + +if __name__ == "__main__" and "--" in sys.argv: + main() diff --git a/Tools/output/run_townsquare_pipeline.py b/Tools/output/run_townsquare_pipeline.py new file mode 100644 index 0000000..70bb07e --- /dev/null +++ b/Tools/output/run_townsquare_pipeline.py @@ -0,0 +1,193 @@ +"""TownSquare 分件:图生3D → 减面烘焙 → 安装到 Bundles/Scenes/Town/TownSquare/{name}/""" +from __future__ import annotations + +import json +import os +import shutil +import subprocess +import sys +from pathlib import Path + +ROOT = Path(__file__).resolve().parents[2] +if str(ROOT / "Tools") not in sys.path: + sys.path.insert(0, str(ROOT / "Tools")) +PARTS = [ + ("ground", 800), + ("shop", 1800), + ("tree", 1500), + ("lamp", 500), + ("board", 800), + ("fountain", 1800), + ("bench", 700), + ("bush", 500), +] +SCENE_TYPE = "Town" +SCENE_ID = "TownSquare" +TEX_SIZE = 1024 + + +def _decode(raw: bytes | None) -> str: + if not raw: + return "" + return raw.decode("utf-8", errors="replace") + + +def run(cmd: list[str]) -> dict: + print(f"RUN {' '.join(cmd)}", flush=True) + env = dict(os.environ) + env["PYTHONIOENCODING"] = "utf-8" + proc = subprocess.run(cmd, cwd=ROOT, capture_output=True, env=env) + out = _decode(proc.stdout).strip() + err = _decode(proc.stderr).strip() + if proc.returncode != 0: + raise RuntimeError( + f"exit {proc.returncode}\nstdout:\n{out[-4000:]}\nstderr:\n{err[-4000:]}" + ) + last = None + for line in out.splitlines(): + line = line.strip() + if line.startswith("{") and line.endswith("}"): + try: + last = json.loads(line) + except json.JSONDecodeError: + continue + if last is None and out.startswith("{"): + try: + last = json.loads(out) + except json.JSONDecodeError: + last = None + return last or {"ok": True, "raw": out[-2000:]} + + +def is_valid_glb(path: Path) -> bool: + from hunyuan_3d.glb_check import glb_textures_ok + + ok, _ = glb_textures_ok(path) + return ok + + +def pick(files: list[Path], pred) -> Path | None: + for path in files: + if path.is_file() and pred(path.name.lower()): + return path + return None + + +def install_part(name: str, xpbr_dir: Path, concept: Path) -> Path: + dest = ROOT / "AIClient/Assets/Bundles/Scenes" / SCENE_TYPE / SCENE_ID / name + dest.mkdir(parents=True, exist_ok=True) + files = list(xpbr_dir.iterdir()) + fbx = pick(files, lambda n: n.endswith(".fbx")) + base = pick(files, lambda n: n.endswith("_base.png") or n.endswith("_basemap.png")) + mix = pick(files, lambda n: n.endswith("_mix.png") or n.endswith("_mixmap.png")) + mat = pick(files, lambda n: n.endswith(".mat")) + if not fbx or not base: + raise FileNotFoundError(f"XPbr 不完整: {xpbr_dir} files={[p.name for p in files]}") + mapping = { + fbx: dest / f"{name}.fbx", + base: dest / f"{name}_base.png", + mix: dest / f"{name}_mix.png" if mix else None, + mat: dest / f"{name}.mat" if mat else None, + } + copied = [] + for src, target in mapping.items(): + if src is None or target is None: + continue + shutil.copy2(src, target) + meta = Path(str(src) + ".meta") + if meta.is_file(): + shutil.copy2(meta, Path(str(target) + ".meta")) + copied.append(target.name) + print(json.dumps({"installed": str(dest), "files": copied, "design": str(concept)}, ensure_ascii=False), flush=True) + return dest + + +def main() -> int: + summary = [] + for name, tris in PARTS: + img = ROOT / "Doc/Design/Scene/TownSquare" / f"{name}.png" + glb = ROOT / "Tools/output/townsquare_3d" / name / f"{name}.glb" + bake_out = ROOT / "Tools/output/townsquare_game" / name + glb.parent.mkdir(parents=True, exist_ok=True) + print(json.dumps({"event": "part_start", "name": name, "tris": tris}, ensure_ascii=False), flush=True) + + if not is_valid_glb(glb): + if glb.is_file(): + print( + json.dumps({"event": "hunyuan_regen", "name": name, "reason": "invalid_glb"}, ensure_ascii=False), + flush=True, + ) + glb.unlink() + hunyuan = run( + [ + sys.executable, + str(ROOT / "Tools/hunyuan_3d_generate.py"), + "-i", + str(img), + "-o", + str(glb), + "--faces", + "50k", + "--result-only", + "--quiet", + ] + ) + if hunyuan.get("ok") is False or hunyuan.get("status") not in (None, "succeeded"): + raise RuntimeError(f"hunyuan failed {name}: {hunyuan}") + if not is_valid_glb(glb): + raise RuntimeError(f"hunyuan produced invalid glb: {glb}") + else: + print( + json.dumps({"event": "hunyuan_skip", "name": name}, ensure_ascii=False), + flush=True, + ) + + xpbr_dir = bake_out / f"{name}_xpbr" + bake: dict = {} + has_xpbr = xpbr_dir.is_dir() and any(xpbr_dir.glob("*.fbx")) + if has_xpbr: + print( + json.dumps({"event": "bake_skip", "name": name}, ensure_ascii=False), + flush=True, + ) + else: + bake = run( + [ + sys.executable, + str(ROOT / "Tools/model_tools/model_lowpoly_bake.py"), + str(glb), + "-o", + str(bake_out), + "--tris", + str(tris), + "--size", + str(TEX_SIZE), + "--result-only", + "--quiet", + ] + ) + if bake.get("xpbr_dir"): + xpbr_dir = Path(bake["xpbr_dir"]) + dest = install_part(name, xpbr_dir, img) + rec = { + "name": name, + "tris_target": tris, + "tris_after": bake.get("tris_after"), + "glb": str(glb.relative_to(ROOT)).replace("\\", "/"), + "dest": str(dest.relative_to(ROOT)).replace("\\", "/"), + } + summary.append(rec) + print(json.dumps({"event": "part_done", **rec}, ensure_ascii=False), flush=True) + + out = ROOT / "Tools/output/townsquare_pipeline_summary.json" + out.write_text(json.dumps(summary, ensure_ascii=False, indent=2), encoding="utf-8") + print(json.dumps({"ok": True, "summary": summary}, ensure_ascii=False), flush=True) + return 0 + + +if __name__ == "__main__": + try: + raise SystemExit(main()) + except Exception as exc: + print(json.dumps({"ok": False, "error": str(exc)}, ensure_ascii=False), flush=True) + raise diff --git a/Tools/output/townsquare_3d/bench/bench.glb b/Tools/output/townsquare_3d/bench/bench.glb new file mode 100644 index 0000000..da8e97e Binary files /dev/null and b/Tools/output/townsquare_3d/bench/bench.glb differ diff --git a/Tools/output/townsquare_3d/board/board.glb b/Tools/output/townsquare_3d/board/board.glb new file mode 100644 index 0000000..7fb8530 Binary files /dev/null and b/Tools/output/townsquare_3d/board/board.glb differ diff --git a/Tools/output/townsquare_3d/bush/bush.glb b/Tools/output/townsquare_3d/bush/bush.glb new file mode 100644 index 0000000..4120056 Binary files /dev/null and b/Tools/output/townsquare_3d/bush/bush.glb differ diff --git a/Tools/output/townsquare_3d/fountain/fountain.glb b/Tools/output/townsquare_3d/fountain/fountain.glb new file mode 100644 index 0000000..19879ba Binary files /dev/null and b/Tools/output/townsquare_3d/fountain/fountain.glb differ diff --git a/Tools/output/townsquare_3d/ground/ground.glb b/Tools/output/townsquare_3d/ground/ground.glb new file mode 100644 index 0000000..286db79 Binary files /dev/null and b/Tools/output/townsquare_3d/ground/ground.glb differ diff --git a/Tools/output/townsquare_3d/lamp/lamp.glb b/Tools/output/townsquare_3d/lamp/lamp.glb new file mode 100644 index 0000000..9faad56 Binary files /dev/null and b/Tools/output/townsquare_3d/lamp/lamp.glb differ diff --git a/Tools/output/townsquare_3d/shop/shop.glb b/Tools/output/townsquare_3d/shop/shop.glb new file mode 100644 index 0000000..3d7d592 Binary files /dev/null and b/Tools/output/townsquare_3d/shop/shop.glb differ diff --git a/Tools/output/townsquare_3d/tree/tree.glb b/Tools/output/townsquare_3d/tree/tree.glb new file mode 100644 index 0000000..80c2331 Binary files /dev/null and b/Tools/output/townsquare_3d/tree/tree.glb differ diff --git a/Tools/output/townsquare_game/bench/bench/bench.fbx b/Tools/output/townsquare_game/bench/bench/bench.fbx new file mode 100644 index 0000000..41fc9ca Binary files /dev/null and b/Tools/output/townsquare_game/bench/bench/bench.fbx differ diff --git a/Tools/output/townsquare_game/bench/bench/bench_ao.png b/Tools/output/townsquare_game/bench/bench/bench_ao.png new file mode 100644 index 0000000..938322f Binary files /dev/null and b/Tools/output/townsquare_game/bench/bench/bench_ao.png differ diff --git a/Tools/output/townsquare_game/bench/bench/bench_color.png b/Tools/output/townsquare_game/bench/bench/bench_color.png new file mode 100644 index 0000000..6851dec Binary files /dev/null and b/Tools/output/townsquare_game/bench/bench/bench_color.png differ diff --git a/Tools/output/townsquare_game/bench/bench/bench_metallic.png b/Tools/output/townsquare_game/bench/bench/bench_metallic.png new file mode 100644 index 0000000..74cdd61 Binary files /dev/null and b/Tools/output/townsquare_game/bench/bench/bench_metallic.png differ diff --git a/Tools/output/townsquare_game/bench/bench/bench_normal.png b/Tools/output/townsquare_game/bench/bench/bench_normal.png new file mode 100644 index 0000000..d480d9c Binary files /dev/null and b/Tools/output/townsquare_game/bench/bench/bench_normal.png differ diff --git a/Tools/output/townsquare_game/bench/bench/bench_roughness.png b/Tools/output/townsquare_game/bench/bench/bench_roughness.png new file mode 100644 index 0000000..a10a139 Binary files /dev/null and b/Tools/output/townsquare_game/bench/bench/bench_roughness.png differ diff --git a/Tools/output/townsquare_game/bench/bench_low.fbx b/Tools/output/townsquare_game/bench/bench_low.fbx new file mode 100644 index 0000000..4630de6 Binary files /dev/null and b/Tools/output/townsquare_game/bench/bench_low.fbx differ diff --git a/Tools/output/townsquare_game/bench/bench_low_uv.png b/Tools/output/townsquare_game/bench/bench_low_uv.png new file mode 100644 index 0000000..083fb58 Binary files /dev/null and b/Tools/output/townsquare_game/bench/bench_low_uv.png differ diff --git a/Tools/output/townsquare_game/bench/bench_xpbr/bench.fbx b/Tools/output/townsquare_game/bench/bench_xpbr/bench.fbx new file mode 100644 index 0000000..6d7900e Binary files /dev/null and b/Tools/output/townsquare_game/bench/bench_xpbr/bench.fbx differ diff --git a/Tools/output/townsquare_game/bench/bench_xpbr/bench.fbx.meta b/Tools/output/townsquare_game/bench/bench_xpbr/bench.fbx.meta new file mode 100644 index 0000000..679e856 --- /dev/null +++ b/Tools/output/townsquare_game/bench/bench_xpbr/bench.fbx.meta @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 226566fab2d64da2add0f480326ea0f7 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: bench + second: {fileID: 2100000, guid: 55230c5f30ea4d29b076ad7d47473768, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/bench/bench_xpbr/bench.mat b/Tools/output/townsquare_game/bench/bench_xpbr/bench.mat new file mode 100644 index 0000000..db6c1cd --- /dev/null +++ b/Tools/output/townsquare_game/bench/bench_xpbr/bench.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: bench + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: fd1b81c49178493496127fb1c4f4349d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: c897eeeae69f45dea81f6f9622934804, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/Tools/output/townsquare_game/bench/bench_xpbr/bench.mat.meta b/Tools/output/townsquare_game/bench/bench_xpbr/bench.mat.meta new file mode 100644 index 0000000..f01a702 --- /dev/null +++ b/Tools/output/townsquare_game/bench/bench_xpbr/bench.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 55230c5f30ea4d29b076ad7d47473768 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/bench/bench_xpbr/bench_base.png b/Tools/output/townsquare_game/bench/bench_xpbr/bench_base.png new file mode 100644 index 0000000..e8de7ce Binary files /dev/null and b/Tools/output/townsquare_game/bench/bench_xpbr/bench_base.png differ diff --git a/Tools/output/townsquare_game/bench/bench_xpbr/bench_base.png.meta b/Tools/output/townsquare_game/bench/bench_xpbr/bench_base.png.meta new file mode 100644 index 0000000..f47c4ba --- /dev/null +++ b/Tools/output/townsquare_game/bench/bench_xpbr/bench_base.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: fd1b81c49178493496127fb1c4f4349d +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/bench/bench_xpbr/bench_mix.png b/Tools/output/townsquare_game/bench/bench_xpbr/bench_mix.png new file mode 100644 index 0000000..e4b6fae Binary files /dev/null and b/Tools/output/townsquare_game/bench/bench_xpbr/bench_mix.png differ diff --git a/Tools/output/townsquare_game/bench/bench_xpbr/bench_mix.png.meta b/Tools/output/townsquare_game/bench/bench_xpbr/bench_mix.png.meta new file mode 100644 index 0000000..b5f551a --- /dev/null +++ b/Tools/output/townsquare_game/bench/bench_xpbr/bench_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: c897eeeae69f45dea81f6f9622934804 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/board/board/board.fbx b/Tools/output/townsquare_game/board/board/board.fbx new file mode 100644 index 0000000..5bd7f99 Binary files /dev/null and b/Tools/output/townsquare_game/board/board/board.fbx differ diff --git a/Tools/output/townsquare_game/board/board/board_ao.png b/Tools/output/townsquare_game/board/board/board_ao.png new file mode 100644 index 0000000..72d5d24 Binary files /dev/null and b/Tools/output/townsquare_game/board/board/board_ao.png differ diff --git a/Tools/output/townsquare_game/board/board/board_color.png b/Tools/output/townsquare_game/board/board/board_color.png new file mode 100644 index 0000000..de38109 Binary files /dev/null and b/Tools/output/townsquare_game/board/board/board_color.png differ diff --git a/Tools/output/townsquare_game/board/board/board_metallic.png b/Tools/output/townsquare_game/board/board/board_metallic.png new file mode 100644 index 0000000..022ac5b Binary files /dev/null and b/Tools/output/townsquare_game/board/board/board_metallic.png differ diff --git a/Tools/output/townsquare_game/board/board/board_normal.png b/Tools/output/townsquare_game/board/board/board_normal.png new file mode 100644 index 0000000..4f0cc53 Binary files /dev/null and b/Tools/output/townsquare_game/board/board/board_normal.png differ diff --git a/Tools/output/townsquare_game/board/board/board_roughness.png b/Tools/output/townsquare_game/board/board/board_roughness.png new file mode 100644 index 0000000..88dad63 Binary files /dev/null and b/Tools/output/townsquare_game/board/board/board_roughness.png differ diff --git a/Tools/output/townsquare_game/board/board_low.fbx b/Tools/output/townsquare_game/board/board_low.fbx new file mode 100644 index 0000000..8295fea Binary files /dev/null and b/Tools/output/townsquare_game/board/board_low.fbx differ diff --git a/Tools/output/townsquare_game/board/board_low_uv.png b/Tools/output/townsquare_game/board/board_low_uv.png new file mode 100644 index 0000000..2f84332 Binary files /dev/null and b/Tools/output/townsquare_game/board/board_low_uv.png differ diff --git a/Tools/output/townsquare_game/board/board_xpbr/board.fbx b/Tools/output/townsquare_game/board/board_xpbr/board.fbx new file mode 100644 index 0000000..96eaa3f Binary files /dev/null and b/Tools/output/townsquare_game/board/board_xpbr/board.fbx differ diff --git a/Tools/output/townsquare_game/board/board_xpbr/board.fbx.meta b/Tools/output/townsquare_game/board/board_xpbr/board.fbx.meta new file mode 100644 index 0000000..9191e08 --- /dev/null +++ b/Tools/output/townsquare_game/board/board_xpbr/board.fbx.meta @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 2f1665ece9e74a84bc219d29feb8c479 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: board + second: {fileID: 2100000, guid: 48215abcd83d4be78bf763ddbd8bf5b9, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/board/board_xpbr/board.mat b/Tools/output/townsquare_game/board/board_xpbr/board.mat new file mode 100644 index 0000000..ae2971e --- /dev/null +++ b/Tools/output/townsquare_game/board/board_xpbr/board.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: board + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: edb2761cf05c48f4979fdb48a2ceecf4, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: 3895a530acae4babb5e4640e6e4c9391, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/Tools/output/townsquare_game/board/board_xpbr/board.mat.meta b/Tools/output/townsquare_game/board/board_xpbr/board.mat.meta new file mode 100644 index 0000000..56f85d2 --- /dev/null +++ b/Tools/output/townsquare_game/board/board_xpbr/board.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 48215abcd83d4be78bf763ddbd8bf5b9 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/board/board_xpbr/board_base.png b/Tools/output/townsquare_game/board/board_xpbr/board_base.png new file mode 100644 index 0000000..dcc6148 Binary files /dev/null and b/Tools/output/townsquare_game/board/board_xpbr/board_base.png differ diff --git a/Tools/output/townsquare_game/board/board_xpbr/board_base.png.meta b/Tools/output/townsquare_game/board/board_xpbr/board_base.png.meta new file mode 100644 index 0000000..89237eb --- /dev/null +++ b/Tools/output/townsquare_game/board/board_xpbr/board_base.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: edb2761cf05c48f4979fdb48a2ceecf4 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/board/board_xpbr/board_mix.png b/Tools/output/townsquare_game/board/board_xpbr/board_mix.png new file mode 100644 index 0000000..709d9af Binary files /dev/null and b/Tools/output/townsquare_game/board/board_xpbr/board_mix.png differ diff --git a/Tools/output/townsquare_game/board/board_xpbr/board_mix.png.meta b/Tools/output/townsquare_game/board/board_xpbr/board_mix.png.meta new file mode 100644 index 0000000..93526d3 --- /dev/null +++ b/Tools/output/townsquare_game/board/board_xpbr/board_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 3895a530acae4babb5e4640e6e4c9391 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/bush/bush/bush.fbx b/Tools/output/townsquare_game/bush/bush/bush.fbx new file mode 100644 index 0000000..1ec71c5 Binary files /dev/null and b/Tools/output/townsquare_game/bush/bush/bush.fbx differ diff --git a/Tools/output/townsquare_game/bush/bush/bush_ao.png b/Tools/output/townsquare_game/bush/bush/bush_ao.png new file mode 100644 index 0000000..9a040e4 Binary files /dev/null and b/Tools/output/townsquare_game/bush/bush/bush_ao.png differ diff --git a/Tools/output/townsquare_game/bush/bush/bush_color.png b/Tools/output/townsquare_game/bush/bush/bush_color.png new file mode 100644 index 0000000..d149f4f Binary files /dev/null and b/Tools/output/townsquare_game/bush/bush/bush_color.png differ diff --git a/Tools/output/townsquare_game/bush/bush/bush_metallic.png b/Tools/output/townsquare_game/bush/bush/bush_metallic.png new file mode 100644 index 0000000..54cd418 Binary files /dev/null and b/Tools/output/townsquare_game/bush/bush/bush_metallic.png differ diff --git a/Tools/output/townsquare_game/bush/bush/bush_normal.png b/Tools/output/townsquare_game/bush/bush/bush_normal.png new file mode 100644 index 0000000..2abf3e4 Binary files /dev/null and b/Tools/output/townsquare_game/bush/bush/bush_normal.png differ diff --git a/Tools/output/townsquare_game/bush/bush/bush_roughness.png b/Tools/output/townsquare_game/bush/bush/bush_roughness.png new file mode 100644 index 0000000..d7028d5 Binary files /dev/null and b/Tools/output/townsquare_game/bush/bush/bush_roughness.png differ diff --git a/Tools/output/townsquare_game/bush/bush_low.fbx b/Tools/output/townsquare_game/bush/bush_low.fbx new file mode 100644 index 0000000..5b7d78f Binary files /dev/null and b/Tools/output/townsquare_game/bush/bush_low.fbx differ diff --git a/Tools/output/townsquare_game/bush/bush_low_uv.png b/Tools/output/townsquare_game/bush/bush_low_uv.png new file mode 100644 index 0000000..f5887d3 Binary files /dev/null and b/Tools/output/townsquare_game/bush/bush_low_uv.png differ diff --git a/Tools/output/townsquare_game/bush/bush_xpbr/bush.fbx b/Tools/output/townsquare_game/bush/bush_xpbr/bush.fbx new file mode 100644 index 0000000..15e55b3 Binary files /dev/null and b/Tools/output/townsquare_game/bush/bush_xpbr/bush.fbx differ diff --git a/Tools/output/townsquare_game/bush/bush_xpbr/bush.fbx.meta b/Tools/output/townsquare_game/bush/bush_xpbr/bush.fbx.meta new file mode 100644 index 0000000..ecc5a9c --- /dev/null +++ b/Tools/output/townsquare_game/bush/bush_xpbr/bush.fbx.meta @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: eb5252e1abad43c4997f02c745ab54a5 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: bush + second: {fileID: 2100000, guid: 859a730b4c2e47509b323df9aa67ff48, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/bush/bush_xpbr/bush.mat b/Tools/output/townsquare_game/bush/bush_xpbr/bush.mat new file mode 100644 index 0000000..1c238b7 --- /dev/null +++ b/Tools/output/townsquare_game/bush/bush_xpbr/bush.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: bush + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: 540b11023a16465daf769198ab0605e4, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: fafff3b99b2a4abdb19435873668b77d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/Tools/output/townsquare_game/bush/bush_xpbr/bush.mat.meta b/Tools/output/townsquare_game/bush/bush_xpbr/bush.mat.meta new file mode 100644 index 0000000..c47c84c --- /dev/null +++ b/Tools/output/townsquare_game/bush/bush_xpbr/bush.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 859a730b4c2e47509b323df9aa67ff48 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/bush/bush_xpbr/bush_base.png b/Tools/output/townsquare_game/bush/bush_xpbr/bush_base.png new file mode 100644 index 0000000..c2e5f57 Binary files /dev/null and b/Tools/output/townsquare_game/bush/bush_xpbr/bush_base.png differ diff --git a/Tools/output/townsquare_game/bush/bush_xpbr/bush_base.png.meta b/Tools/output/townsquare_game/bush/bush_xpbr/bush_base.png.meta new file mode 100644 index 0000000..3848efc --- /dev/null +++ b/Tools/output/townsquare_game/bush/bush_xpbr/bush_base.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 540b11023a16465daf769198ab0605e4 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/bush/bush_xpbr/bush_mix.png b/Tools/output/townsquare_game/bush/bush_xpbr/bush_mix.png new file mode 100644 index 0000000..4a9b7a4 Binary files /dev/null and b/Tools/output/townsquare_game/bush/bush_xpbr/bush_mix.png differ diff --git a/Tools/output/townsquare_game/bush/bush_xpbr/bush_mix.png.meta b/Tools/output/townsquare_game/bush/bush_xpbr/bush_mix.png.meta new file mode 100644 index 0000000..9fe20f3 --- /dev/null +++ b/Tools/output/townsquare_game/bush/bush_xpbr/bush_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: fafff3b99b2a4abdb19435873668b77d +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/fountain/fountain/fountain.fbx b/Tools/output/townsquare_game/fountain/fountain/fountain.fbx new file mode 100644 index 0000000..68d29de Binary files /dev/null and b/Tools/output/townsquare_game/fountain/fountain/fountain.fbx differ diff --git a/Tools/output/townsquare_game/fountain/fountain/fountain_ao.png b/Tools/output/townsquare_game/fountain/fountain/fountain_ao.png new file mode 100644 index 0000000..8a5e2df Binary files /dev/null and b/Tools/output/townsquare_game/fountain/fountain/fountain_ao.png differ diff --git a/Tools/output/townsquare_game/fountain/fountain/fountain_color.png b/Tools/output/townsquare_game/fountain/fountain/fountain_color.png new file mode 100644 index 0000000..29744ad Binary files /dev/null and b/Tools/output/townsquare_game/fountain/fountain/fountain_color.png differ diff --git a/Tools/output/townsquare_game/fountain/fountain/fountain_metallic.png b/Tools/output/townsquare_game/fountain/fountain/fountain_metallic.png new file mode 100644 index 0000000..51aadfc Binary files /dev/null and b/Tools/output/townsquare_game/fountain/fountain/fountain_metallic.png differ diff --git a/Tools/output/townsquare_game/fountain/fountain/fountain_normal.png b/Tools/output/townsquare_game/fountain/fountain/fountain_normal.png new file mode 100644 index 0000000..ad1a81f Binary files /dev/null and b/Tools/output/townsquare_game/fountain/fountain/fountain_normal.png differ diff --git a/Tools/output/townsquare_game/fountain/fountain/fountain_roughness.png b/Tools/output/townsquare_game/fountain/fountain/fountain_roughness.png new file mode 100644 index 0000000..989fd20 Binary files /dev/null and b/Tools/output/townsquare_game/fountain/fountain/fountain_roughness.png differ diff --git a/Tools/output/townsquare_game/fountain/fountain_low.fbx b/Tools/output/townsquare_game/fountain/fountain_low.fbx new file mode 100644 index 0000000..3be392b Binary files /dev/null and b/Tools/output/townsquare_game/fountain/fountain_low.fbx differ diff --git a/Tools/output/townsquare_game/fountain/fountain_low_uv.png b/Tools/output/townsquare_game/fountain/fountain_low_uv.png new file mode 100644 index 0000000..d2c3d91 Binary files /dev/null and b/Tools/output/townsquare_game/fountain/fountain_low_uv.png differ diff --git a/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain.fbx b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain.fbx new file mode 100644 index 0000000..369200c Binary files /dev/null and b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain.fbx differ diff --git a/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain.fbx.meta b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain.fbx.meta new file mode 100644 index 0000000..e900591 --- /dev/null +++ b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain.fbx.meta @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 6c96e775588a46d1a79bbc57503c5342 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: fountain + second: {fileID: 2100000, guid: bcfd4e6476794bc1b6ed06f5fcadd94e, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain.mat b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain.mat new file mode 100644 index 0000000..95b6895 --- /dev/null +++ b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: fountain + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: 553d63347e0347fd87d8f793e938c2d0, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: 1ef97907d7854d19bc5c09129b09244a, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain.mat.meta b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain.mat.meta new file mode 100644 index 0000000..050d236 --- /dev/null +++ b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bcfd4e6476794bc1b6ed06f5fcadd94e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain_base.png b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain_base.png new file mode 100644 index 0000000..fa59420 Binary files /dev/null and b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain_base.png differ diff --git a/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain_base.png.meta b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain_base.png.meta new file mode 100644 index 0000000..ad1b579 --- /dev/null +++ b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain_base.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 553d63347e0347fd87d8f793e938c2d0 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain_mix.png b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain_mix.png new file mode 100644 index 0000000..6f60679 Binary files /dev/null and b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain_mix.png differ diff --git a/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain_mix.png.meta b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain_mix.png.meta new file mode 100644 index 0000000..598c554 --- /dev/null +++ b/Tools/output/townsquare_game/fountain/fountain_xpbr/fountain_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 1ef97907d7854d19bc5c09129b09244a +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/ground/ground/ground.fbx b/Tools/output/townsquare_game/ground/ground/ground.fbx new file mode 100644 index 0000000..38d3246 Binary files /dev/null and b/Tools/output/townsquare_game/ground/ground/ground.fbx differ diff --git a/Tools/output/townsquare_game/ground/ground/ground_ao.png b/Tools/output/townsquare_game/ground/ground/ground_ao.png new file mode 100644 index 0000000..40f1456 Binary files /dev/null and b/Tools/output/townsquare_game/ground/ground/ground_ao.png differ diff --git a/Tools/output/townsquare_game/ground/ground/ground_color.png b/Tools/output/townsquare_game/ground/ground/ground_color.png new file mode 100644 index 0000000..53a8896 Binary files /dev/null and b/Tools/output/townsquare_game/ground/ground/ground_color.png differ diff --git a/Tools/output/townsquare_game/ground/ground/ground_metallic.png b/Tools/output/townsquare_game/ground/ground/ground_metallic.png new file mode 100644 index 0000000..f4d6fbe Binary files /dev/null and b/Tools/output/townsquare_game/ground/ground/ground_metallic.png differ diff --git a/Tools/output/townsquare_game/ground/ground/ground_normal.png b/Tools/output/townsquare_game/ground/ground/ground_normal.png new file mode 100644 index 0000000..f5bb683 Binary files /dev/null and b/Tools/output/townsquare_game/ground/ground/ground_normal.png differ diff --git a/Tools/output/townsquare_game/ground/ground/ground_roughness.png b/Tools/output/townsquare_game/ground/ground/ground_roughness.png new file mode 100644 index 0000000..cc4e2e9 Binary files /dev/null and b/Tools/output/townsquare_game/ground/ground/ground_roughness.png differ diff --git a/Tools/output/townsquare_game/ground/ground_low.fbx b/Tools/output/townsquare_game/ground/ground_low.fbx new file mode 100644 index 0000000..3c286bd Binary files /dev/null and b/Tools/output/townsquare_game/ground/ground_low.fbx differ diff --git a/Tools/output/townsquare_game/ground/ground_low_uv.png b/Tools/output/townsquare_game/ground/ground_low_uv.png new file mode 100644 index 0000000..a749849 Binary files /dev/null and b/Tools/output/townsquare_game/ground/ground_low_uv.png differ diff --git a/Tools/output/townsquare_game/ground/ground_xpbr/ground.fbx b/Tools/output/townsquare_game/ground/ground_xpbr/ground.fbx new file mode 100644 index 0000000..7cdbde0 Binary files /dev/null and b/Tools/output/townsquare_game/ground/ground_xpbr/ground.fbx differ diff --git a/Tools/output/townsquare_game/ground/ground_xpbr/ground.fbx.meta b/Tools/output/townsquare_game/ground/ground_xpbr/ground.fbx.meta new file mode 100644 index 0000000..f0fe5af --- /dev/null +++ b/Tools/output/townsquare_game/ground/ground_xpbr/ground.fbx.meta @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: b390ab0d88514e4bbfd4958f51381630 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: ground + second: {fileID: 2100000, guid: c68e560375d04856a2ee162b8191dc96, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/ground/ground_xpbr/ground.mat b/Tools/output/townsquare_game/ground/ground_xpbr/ground.mat new file mode 100644 index 0000000..2bfd28e --- /dev/null +++ b/Tools/output/townsquare_game/ground/ground_xpbr/ground.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ground + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: d90020924f924727afbba0cbf1f39ffc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: 2ae033e6268d4109a410ed17ff6d1495, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/Tools/output/townsquare_game/ground/ground_xpbr/ground.mat.meta b/Tools/output/townsquare_game/ground/ground_xpbr/ground.mat.meta new file mode 100644 index 0000000..5337659 --- /dev/null +++ b/Tools/output/townsquare_game/ground/ground_xpbr/ground.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c68e560375d04856a2ee162b8191dc96 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/ground/ground_xpbr/ground_base.png b/Tools/output/townsquare_game/ground/ground_xpbr/ground_base.png new file mode 100644 index 0000000..48d3374 Binary files /dev/null and b/Tools/output/townsquare_game/ground/ground_xpbr/ground_base.png differ diff --git a/Tools/output/townsquare_game/ground/ground_xpbr/ground_base.png.meta b/Tools/output/townsquare_game/ground/ground_xpbr/ground_base.png.meta new file mode 100644 index 0000000..898c50d --- /dev/null +++ b/Tools/output/townsquare_game/ground/ground_xpbr/ground_base.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: d90020924f924727afbba0cbf1f39ffc +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/ground/ground_xpbr/ground_mix.png b/Tools/output/townsquare_game/ground/ground_xpbr/ground_mix.png new file mode 100644 index 0000000..63f6615 Binary files /dev/null and b/Tools/output/townsquare_game/ground/ground_xpbr/ground_mix.png differ diff --git a/Tools/output/townsquare_game/ground/ground_xpbr/ground_mix.png.meta b/Tools/output/townsquare_game/ground/ground_xpbr/ground_mix.png.meta new file mode 100644 index 0000000..9f109d0 --- /dev/null +++ b/Tools/output/townsquare_game/ground/ground_xpbr/ground_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 2ae033e6268d4109a410ed17ff6d1495 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/lamp/lamp/lamp.fbx b/Tools/output/townsquare_game/lamp/lamp/lamp.fbx new file mode 100644 index 0000000..dd902b4 Binary files /dev/null and b/Tools/output/townsquare_game/lamp/lamp/lamp.fbx differ diff --git a/Tools/output/townsquare_game/lamp/lamp/lamp_ao.png b/Tools/output/townsquare_game/lamp/lamp/lamp_ao.png new file mode 100644 index 0000000..6319e0b Binary files /dev/null and b/Tools/output/townsquare_game/lamp/lamp/lamp_ao.png differ diff --git a/Tools/output/townsquare_game/lamp/lamp/lamp_color.png b/Tools/output/townsquare_game/lamp/lamp/lamp_color.png new file mode 100644 index 0000000..846e2b9 Binary files /dev/null and b/Tools/output/townsquare_game/lamp/lamp/lamp_color.png differ diff --git a/Tools/output/townsquare_game/lamp/lamp/lamp_metallic.png b/Tools/output/townsquare_game/lamp/lamp/lamp_metallic.png new file mode 100644 index 0000000..6c5c5f3 Binary files /dev/null and b/Tools/output/townsquare_game/lamp/lamp/lamp_metallic.png differ diff --git a/Tools/output/townsquare_game/lamp/lamp/lamp_normal.png b/Tools/output/townsquare_game/lamp/lamp/lamp_normal.png new file mode 100644 index 0000000..a09b605 Binary files /dev/null and b/Tools/output/townsquare_game/lamp/lamp/lamp_normal.png differ diff --git a/Tools/output/townsquare_game/lamp/lamp/lamp_roughness.png b/Tools/output/townsquare_game/lamp/lamp/lamp_roughness.png new file mode 100644 index 0000000..2ee2c50 Binary files /dev/null and b/Tools/output/townsquare_game/lamp/lamp/lamp_roughness.png differ diff --git a/Tools/output/townsquare_game/lamp/lamp_low.fbx b/Tools/output/townsquare_game/lamp/lamp_low.fbx new file mode 100644 index 0000000..90cf7ba Binary files /dev/null and b/Tools/output/townsquare_game/lamp/lamp_low.fbx differ diff --git a/Tools/output/townsquare_game/lamp/lamp_low_uv.png b/Tools/output/townsquare_game/lamp/lamp_low_uv.png new file mode 100644 index 0000000..815f126 Binary files /dev/null and b/Tools/output/townsquare_game/lamp/lamp_low_uv.png differ diff --git a/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp.fbx b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp.fbx new file mode 100644 index 0000000..7e827ac Binary files /dev/null and b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp.fbx differ diff --git a/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp.fbx.meta b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp.fbx.meta new file mode 100644 index 0000000..6083fdd --- /dev/null +++ b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp.fbx.meta @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: ca13a80457e84b3f9a75185283ff8d6c +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lamp + second: {fileID: 2100000, guid: 045ac17c68554cd2abbf4fa8b116d2e5, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp.mat b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp.mat new file mode 100644 index 0000000..8a82d35 --- /dev/null +++ b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: lamp + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: 841e770ba48249498937034a20229123, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: 11b648eb61ee44ab87ce74e72f925678, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp.mat.meta b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp.mat.meta new file mode 100644 index 0000000..4a88116 --- /dev/null +++ b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 045ac17c68554cd2abbf4fa8b116d2e5 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp_base.png b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp_base.png new file mode 100644 index 0000000..4cce96b Binary files /dev/null and b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp_base.png differ diff --git a/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp_base.png.meta b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp_base.png.meta new file mode 100644 index 0000000..aea9d8d --- /dev/null +++ b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp_base.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 841e770ba48249498937034a20229123 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp_mix.png b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp_mix.png new file mode 100644 index 0000000..cc72625 Binary files /dev/null and b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp_mix.png differ diff --git a/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp_mix.png.meta b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp_mix.png.meta new file mode 100644 index 0000000..1efd911 --- /dev/null +++ b/Tools/output/townsquare_game/lamp/lamp_xpbr/lamp_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 11b648eb61ee44ab87ce74e72f925678 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/shop/shop/shop.fbx b/Tools/output/townsquare_game/shop/shop/shop.fbx new file mode 100644 index 0000000..dcf8aef Binary files /dev/null and b/Tools/output/townsquare_game/shop/shop/shop.fbx differ diff --git a/Tools/output/townsquare_game/shop/shop/shop_ao.png b/Tools/output/townsquare_game/shop/shop/shop_ao.png new file mode 100644 index 0000000..da4a942 Binary files /dev/null and b/Tools/output/townsquare_game/shop/shop/shop_ao.png differ diff --git a/Tools/output/townsquare_game/shop/shop/shop_color.png b/Tools/output/townsquare_game/shop/shop/shop_color.png new file mode 100644 index 0000000..7244c58 Binary files /dev/null and b/Tools/output/townsquare_game/shop/shop/shop_color.png differ diff --git a/Tools/output/townsquare_game/shop/shop/shop_metallic.png b/Tools/output/townsquare_game/shop/shop/shop_metallic.png new file mode 100644 index 0000000..fd102cf Binary files /dev/null and b/Tools/output/townsquare_game/shop/shop/shop_metallic.png differ diff --git a/Tools/output/townsquare_game/shop/shop/shop_normal.png b/Tools/output/townsquare_game/shop/shop/shop_normal.png new file mode 100644 index 0000000..6840de8 Binary files /dev/null and b/Tools/output/townsquare_game/shop/shop/shop_normal.png differ diff --git a/Tools/output/townsquare_game/shop/shop/shop_roughness.png b/Tools/output/townsquare_game/shop/shop/shop_roughness.png new file mode 100644 index 0000000..9453fc8 Binary files /dev/null and b/Tools/output/townsquare_game/shop/shop/shop_roughness.png differ diff --git a/Tools/output/townsquare_game/shop/shop_low.fbx b/Tools/output/townsquare_game/shop/shop_low.fbx new file mode 100644 index 0000000..0b01f52 Binary files /dev/null and b/Tools/output/townsquare_game/shop/shop_low.fbx differ diff --git a/Tools/output/townsquare_game/shop/shop_low_uv.png b/Tools/output/townsquare_game/shop/shop_low_uv.png new file mode 100644 index 0000000..1e2d443 Binary files /dev/null and b/Tools/output/townsquare_game/shop/shop_low_uv.png differ diff --git a/Tools/output/townsquare_game/shop/shop_xpbr/shop.fbx b/Tools/output/townsquare_game/shop/shop_xpbr/shop.fbx new file mode 100644 index 0000000..b191629 Binary files /dev/null and b/Tools/output/townsquare_game/shop/shop_xpbr/shop.fbx differ diff --git a/Tools/output/townsquare_game/shop/shop_xpbr/shop.fbx.meta b/Tools/output/townsquare_game/shop/shop_xpbr/shop.fbx.meta new file mode 100644 index 0000000..39be450 --- /dev/null +++ b/Tools/output/townsquare_game/shop/shop_xpbr/shop.fbx.meta @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 0b2a2e13bdbb420f8b0f4fdc27a0557e +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: shop + second: {fileID: 2100000, guid: 2a414afe20754afeb9dac51f39b5ad66, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/shop/shop_xpbr/shop.mat b/Tools/output/townsquare_game/shop/shop_xpbr/shop.mat new file mode 100644 index 0000000..dade9cf --- /dev/null +++ b/Tools/output/townsquare_game/shop/shop_xpbr/shop.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: shop + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: a0a548d530b24caab5da0cf358c3e03d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: 3944b80257f14402a5b19ee022deabbb, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/Tools/output/townsquare_game/shop/shop_xpbr/shop.mat.meta b/Tools/output/townsquare_game/shop/shop_xpbr/shop.mat.meta new file mode 100644 index 0000000..14ff344 --- /dev/null +++ b/Tools/output/townsquare_game/shop/shop_xpbr/shop.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2a414afe20754afeb9dac51f39b5ad66 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/shop/shop_xpbr/shop_base.png b/Tools/output/townsquare_game/shop/shop_xpbr/shop_base.png new file mode 100644 index 0000000..3fbd02a Binary files /dev/null and b/Tools/output/townsquare_game/shop/shop_xpbr/shop_base.png differ diff --git a/Tools/output/townsquare_game/shop/shop_xpbr/shop_base.png.meta b/Tools/output/townsquare_game/shop/shop_xpbr/shop_base.png.meta new file mode 100644 index 0000000..824e302 --- /dev/null +++ b/Tools/output/townsquare_game/shop/shop_xpbr/shop_base.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: a0a548d530b24caab5da0cf358c3e03d +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/shop/shop_xpbr/shop_mix.png b/Tools/output/townsquare_game/shop/shop_xpbr/shop_mix.png new file mode 100644 index 0000000..e848684 Binary files /dev/null and b/Tools/output/townsquare_game/shop/shop_xpbr/shop_mix.png differ diff --git a/Tools/output/townsquare_game/shop/shop_xpbr/shop_mix.png.meta b/Tools/output/townsquare_game/shop/shop_xpbr/shop_mix.png.meta new file mode 100644 index 0000000..56fb958 --- /dev/null +++ b/Tools/output/townsquare_game/shop/shop_xpbr/shop_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 3944b80257f14402a5b19ee022deabbb +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/tree/tree/tree.fbx b/Tools/output/townsquare_game/tree/tree/tree.fbx new file mode 100644 index 0000000..7062790 Binary files /dev/null and b/Tools/output/townsquare_game/tree/tree/tree.fbx differ diff --git a/Tools/output/townsquare_game/tree/tree/tree_ao.png b/Tools/output/townsquare_game/tree/tree/tree_ao.png new file mode 100644 index 0000000..92ccc4c Binary files /dev/null and b/Tools/output/townsquare_game/tree/tree/tree_ao.png differ diff --git a/Tools/output/townsquare_game/tree/tree/tree_color.png b/Tools/output/townsquare_game/tree/tree/tree_color.png new file mode 100644 index 0000000..f061f75 Binary files /dev/null and b/Tools/output/townsquare_game/tree/tree/tree_color.png differ diff --git a/Tools/output/townsquare_game/tree/tree/tree_metallic.png b/Tools/output/townsquare_game/tree/tree/tree_metallic.png new file mode 100644 index 0000000..5dcacb8 Binary files /dev/null and b/Tools/output/townsquare_game/tree/tree/tree_metallic.png differ diff --git a/Tools/output/townsquare_game/tree/tree/tree_normal.png b/Tools/output/townsquare_game/tree/tree/tree_normal.png new file mode 100644 index 0000000..afe2088 Binary files /dev/null and b/Tools/output/townsquare_game/tree/tree/tree_normal.png differ diff --git a/Tools/output/townsquare_game/tree/tree/tree_roughness.png b/Tools/output/townsquare_game/tree/tree/tree_roughness.png new file mode 100644 index 0000000..28b18ee Binary files /dev/null and b/Tools/output/townsquare_game/tree/tree/tree_roughness.png differ diff --git a/Tools/output/townsquare_game/tree/tree_low.fbx b/Tools/output/townsquare_game/tree/tree_low.fbx new file mode 100644 index 0000000..16cd93d Binary files /dev/null and b/Tools/output/townsquare_game/tree/tree_low.fbx differ diff --git a/Tools/output/townsquare_game/tree/tree_low_uv.png b/Tools/output/townsquare_game/tree/tree_low_uv.png new file mode 100644 index 0000000..176463f Binary files /dev/null and b/Tools/output/townsquare_game/tree/tree_low_uv.png differ diff --git a/Tools/output/townsquare_game/tree/tree_xpbr/tree.fbx b/Tools/output/townsquare_game/tree/tree_xpbr/tree.fbx new file mode 100644 index 0000000..7adde8c Binary files /dev/null and b/Tools/output/townsquare_game/tree/tree_xpbr/tree.fbx differ diff --git a/Tools/output/townsquare_game/tree/tree_xpbr/tree.fbx.meta b/Tools/output/townsquare_game/tree/tree_xpbr/tree.fbx.meta new file mode 100644 index 0000000..f4b6b6c --- /dev/null +++ b/Tools/output/townsquare_game/tree/tree_xpbr/tree.fbx.meta @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 7efa4251f48c424da9b7ede1a8b28ddf +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: tree + second: {fileID: 2100000, guid: b7aba4b7bc7842c2a137e14bf8c5946c, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 0 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/tree/tree_xpbr/tree.mat b/Tools/output/townsquare_game/tree/tree_xpbr/tree.mat new file mode 100644 index 0000000..5a1f63d --- /dev/null +++ b/Tools/output/townsquare_game/tree/tree_xpbr/tree.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: tree + m_Shader: {fileID: 4800000, guid: cab897163f45445fa34263d6670bfc9e, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: ef36f5faaa2643bdabd30c5e5d2033b8, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MixTex: + m_Texture: {fileID: 2800000, guid: a1aad368ce7e44cbb2872bcc89ab34cd, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AO: 1 + - _AlphaTest: 0 + - _Cutoff: 0.5 + - _Metallic: 1 + - _Roughness: 0.8 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] diff --git a/Tools/output/townsquare_game/tree/tree_xpbr/tree.mat.meta b/Tools/output/townsquare_game/tree/tree_xpbr/tree.mat.meta new file mode 100644 index 0000000..5e3154f --- /dev/null +++ b/Tools/output/townsquare_game/tree/tree_xpbr/tree.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b7aba4b7bc7842c2a137e14bf8c5946c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/tree/tree_xpbr/tree_base.png b/Tools/output/townsquare_game/tree/tree_xpbr/tree_base.png new file mode 100644 index 0000000..7c4f3ed Binary files /dev/null and b/Tools/output/townsquare_game/tree/tree_xpbr/tree_base.png differ diff --git a/Tools/output/townsquare_game/tree/tree_xpbr/tree_base.png.meta b/Tools/output/townsquare_game/tree/tree_xpbr/tree_base.png.meta new file mode 100644 index 0000000..2612466 --- /dev/null +++ b/Tools/output/townsquare_game/tree/tree_xpbr/tree_base.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: ef36f5faaa2643bdabd30c5e5d2033b8 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_game/tree/tree_xpbr/tree_mix.png b/Tools/output/townsquare_game/tree/tree_xpbr/tree_mix.png new file mode 100644 index 0000000..a6a92e2 Binary files /dev/null and b/Tools/output/townsquare_game/tree/tree_xpbr/tree_mix.png differ diff --git a/Tools/output/townsquare_game/tree/tree_xpbr/tree_mix.png.meta b/Tools/output/townsquare_game/tree/tree_xpbr/tree_mix.png.meta new file mode 100644 index 0000000..d5cf39f --- /dev/null +++ b/Tools/output/townsquare_game/tree/tree_xpbr/tree_mix.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: a1aad368ce7e44cbb2872bcc89ab34cd +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Tools/output/townsquare_pipeline_summary.json b/Tools/output/townsquare_pipeline_summary.json new file mode 100644 index 0000000..2c2118a --- /dev/null +++ b/Tools/output/townsquare_pipeline_summary.json @@ -0,0 +1,58 @@ +[ + { + "name": "ground", + "tris_target": 800, + "tris_after": null, + "glb": "Tools/output/townsquare_3d/ground/ground.glb", + "dest": "AIClient/Assets/Bundles/Scenes/Town/TownSquare/ground" + }, + { + "name": "shop", + "tris_target": 1800, + "tris_after": null, + "glb": "Tools/output/townsquare_3d/shop/shop.glb", + "dest": "AIClient/Assets/Bundles/Scenes/Town/TownSquare/shop" + }, + { + "name": "tree", + "tris_target": 1500, + "tris_after": null, + "glb": "Tools/output/townsquare_3d/tree/tree.glb", + "dest": "AIClient/Assets/Bundles/Scenes/Town/TownSquare/tree" + }, + { + "name": "lamp", + "tris_target": 500, + "tris_after": null, + "glb": "Tools/output/townsquare_3d/lamp/lamp.glb", + "dest": "AIClient/Assets/Bundles/Scenes/Town/TownSquare/lamp" + }, + { + "name": "board", + "tris_target": 800, + "tris_after": 800, + "glb": "Tools/output/townsquare_3d/board/board.glb", + "dest": "AIClient/Assets/Bundles/Scenes/Town/TownSquare/board" + }, + { + "name": "fountain", + "tris_target": 1800, + "tris_after": 1798, + "glb": "Tools/output/townsquare_3d/fountain/fountain.glb", + "dest": "AIClient/Assets/Bundles/Scenes/Town/TownSquare/fountain" + }, + { + "name": "bench", + "tris_target": 700, + "tris_after": 699, + "glb": "Tools/output/townsquare_3d/bench/bench.glb", + "dest": "AIClient/Assets/Bundles/Scenes/Town/TownSquare/bench" + }, + { + "name": "bush", + "tris_target": 500, + "tris_after": 21969, + "glb": "Tools/output/townsquare_3d/bush/bush.glb", + "dest": "AIClient/Assets/Bundles/Scenes/Town/TownSquare/bush" + } +] \ No newline at end of file