| | |
| | | using UnityEngine; |
| | | using UnityEditor; |
| | | using TableConfig; |
| | | using System.Collections.Generic; |
| | | |
| | | public class NpcResourcesBuilder : ResourcesBuilder |
| | | { |
| | | public void BuildNpc(string modelName) |
| | | { |
| | | if (modelName.Contains("A_Zs")) |
| | | { |
| | | return; |
| | | } |
| | | |
| | | BuildAnimationClip1(modelName); |
| | | BuildAnimatorController(modelName); |
| | | |
| | | var showConfigs = ConfigManager.Instance.GetAllValues<ActorShowConfig>(); |
| | | NPCConfig _npcModel = null; |
| | | foreach (var _item in showConfigs) |
| | | { |
| | | for (int i = 0; i < _item.showNpcs.Length; i++) |
| | | { |
| | | _npcModel = ConfigManager.Instance.GetTemplate<NPCConfig>(_item.showNpcs[i]); |
| | | if (_npcModel == null) |
| | | { |
| | | continue; |
| | | } |
| | | |
| | | if (_npcModel.MODE.Equals(modelName)) |
| | | { |
| | | BuildBossShowAnimatorController(modelName); |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | |
| | | BuildPrefab(modelName); |
| | | } |
| | | |
| | | public void BuildPrefab(string modelName) |
| | | { |
| | | if (!IsBuildPrefab) |
| | | { |
| | | return; |
| | | } |
| | | |
| | | BuildPrefab(modelName, modelName, InstanceResourcesLoader.raceSuffix); |
| | | } |
| | | |
| | | public void BuildAnimationClip1(string modelName) |
| | | { |
| | | if (!IsBuildAnimationClip) |
| | | { |
| | | return; |
| | | } |
| | | |
| | | BuildAnimationClip(modelName); |
| | | } |
| | | |
| | | public void BuildAnimatorController(string modelName) |
| | | { |
| | | if (!IsBuildAnimatorController) |
| | | { |
| | | return; |
| | | } |
| | | |
| | | if (modelName.Contains("B_Cw")) |
| | | { |
| | | BuildAnimatorController(modelName, "Temple_AnimatorController_Pet", "animatorBuildConfig"); |
| | | } |
| | | else |
| | | { |
| | | BuildAnimatorController(modelName, "Temple_AnimatorController_Mob", "animatorBuildConfig"); |
| | | } |
| | | } |
| | | |
| | | public void BuildBossShowAnimatorController(string modelName) |
| | | { |
| | | if (!IsBuildAnimatorController) |
| | | { |
| | | return; |
| | | } |
| | | |
| | | BuildAnimatorController(modelName, "Temple_AnimatorController_BossShow", "animatorBuildConfig_BossShow"); |
| | | } |
| | | |
| | | protected override void OnSetupRenderer(string resPath, string resName, ref Renderer _renderer) |
| | | { |
| | | string _texturePath = string.Format("Assets/ART/Role/{0}/Materials/{1}.png", resPath, resName); |
| | | string _materialPath = string.Format("Assets/ART/Role/{0}/Materials/{1}.mat", resPath, resName); |
| | | |
| | | // 设置为不产生阴影并且不接受阴影 |
| | | _renderer.receiveShadows = false; |
| | | _renderer.shadowCastingMode = UnityEngine.Rendering.ShadowCastingMode.Off; |
| | | |
| | | // 设置材质 |
| | | _renderer.sharedMaterial = AssetDatabase.LoadAssetAtPath<Material>(_materialPath); |
| | | _renderer.sharedMaterial.shader = Shader.Find("Character/Normal Monster"); |
| | | Texture _texture = AssetDatabase.LoadAssetAtPath<Texture>(_texturePath); |
| | | _renderer.sharedMaterial.SetTexture("_MainTex", _texture); |
| | | } |
| | | using UnityEngine;
|
| | | using UnityEditor;
|
| | | using TableConfig;
|
| | | using System.Collections.Generic;
|
| | |
|
| | | public class NpcResourcesBuilder : ResourcesBuilder
|
| | | {
|
| | | public void BuildNpc(string modelName)
|
| | | {
|
| | | if (modelName.Contains("A_Zs"))
|
| | | {
|
| | | return;
|
| | | }
|
| | |
|
| | | BuildAnimationClip1(modelName);
|
| | | BuildAnimatorController(modelName);
|
| | |
|
| | | var showConfigs = ConfigManager.Instance.GetAllValues<ActorShowConfig>();
|
| | | NPCConfig _npcModel = null;
|
| | | foreach (var _item in showConfigs)
|
| | | {
|
| | | for (int i = 0; i < _item.showNpcs.Length; i++)
|
| | | {
|
| | | _npcModel = ConfigManager.Instance.GetTemplate<NPCConfig>(_item.showNpcs[i]);
|
| | | if (_npcModel == null)
|
| | | {
|
| | | continue;
|
| | | }
|
| | |
|
| | | if (_npcModel.MODE.Equals(modelName))
|
| | | {
|
| | | BuildBossShowAnimatorController(modelName);
|
| | | break;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | var realmConfigs = ConfigManager.Instance.GetAllValues<RealmConfig>();
|
| | | foreach (var _realmConfig in realmConfigs)
|
| | | {
|
| | | _npcModel = ConfigManager.Instance.GetTemplate<NPCConfig>(_realmConfig.BossID);
|
| | | if (_npcModel == null)
|
| | | {
|
| | | continue;
|
| | | }
|
| | |
|
| | | if (_npcModel.MODE.Equals(modelName))
|
| | | {
|
| | | BuildRealmAnimatorController(modelName);
|
| | | break;
|
| | | }
|
| | | }
|
| | |
|
| | | BuildPrefab(modelName);
|
| | | }
|
| | |
|
| | | public void BuildPrefab(string modelName)
|
| | | {
|
| | | if (!IsBuildPrefab)
|
| | | {
|
| | | return;
|
| | | }
|
| | |
|
| | | BuildPrefab(modelName, modelName, InstanceResourcesLoader.raceSuffix);
|
| | | }
|
| | |
|
| | | public void BuildAnimationClip1(string modelName)
|
| | | {
|
| | | if (!IsBuildAnimationClip)
|
| | | {
|
| | | return;
|
| | | }
|
| | |
|
| | | BuildAnimationClip(modelName);
|
| | | }
|
| | |
|
| | | public void BuildAnimatorController(string modelName)
|
| | | {
|
| | | if (!IsBuildAnimatorController)
|
| | | {
|
| | | return;
|
| | | }
|
| | |
|
| | | if (modelName.Contains("B_Cw"))
|
| | | {
|
| | | BuildAnimatorController(modelName, "Temple_AnimatorController_Pet", "animatorBuildConfig");
|
| | | }
|
| | | else
|
| | | {
|
| | | BuildAnimatorController(modelName, "Temple_AnimatorController_Mob", "animatorBuildConfig");
|
| | | }
|
| | | }
|
| | |
|
| | | public void BuildBossShowAnimatorController(string modelName)
|
| | | {
|
| | | if (!IsBuildAnimatorController)
|
| | | {
|
| | | return;
|
| | | }
|
| | |
|
| | | BuildAnimatorController(modelName, "Temple_AnimatorController_BossShow", "animatorBuildConfig_BossShow");
|
| | | }
|
| | |
|
| | | public void BuildRealmAnimatorController(string modelName)
|
| | | {
|
| | | if (!IsBuildAnimatorController)
|
| | | {
|
| | | return;
|
| | | }
|
| | |
|
| | | BuildAnimatorController(modelName, "Temple_AnimatorController_Realm", "animatorBuildConfig_Realm");
|
| | | }
|
| | |
|
| | | protected override void OnSetupRenderer(string resPath, string resName, ref Renderer _renderer)
|
| | | {
|
| | | string _texturePath = string.Format("Assets/ART/Role/{0}/Materials/{1}.png", resPath, resName);
|
| | | string _materialPath = string.Format("Assets/ART/Role/{0}/Materials/{1}.mat", resPath, resName);
|
| | |
|
| | | // 设置为不产生阴影并且不接受阴影
|
| | | _renderer.receiveShadows = false;
|
| | | _renderer.shadowCastingMode = UnityEngine.Rendering.ShadowCastingMode.Off;
|
| | |
|
| | | // 设置材质
|
| | | _renderer.sharedMaterial = AssetDatabase.LoadAssetAtPath<Material>(_materialPath);
|
| | | _renderer.sharedMaterial.shader = Shader.Find("Character/Normal Monster");
|
| | | Texture _texture = AssetDatabase.LoadAssetAtPath<Texture>(_texturePath);
|
| | | _renderer.sharedMaterial.SetTexture("_MainTex", _texture);
|
| | | }
|
| | | } |