第五章 颜色映射与职业动画
二 颜色组(Color Chart)
颜色组是保存许多颜色的一个容器,可以在Swapper中直接创建List<Color>或Color[]来表示一组颜色,但这既不利于职务分担也不利于编辑。所以,我们单独创建一个容器类ColorChart,用它来保存一组颜色,再添加必备方法,Swapper只需调用它的方法就可以了。
1 创建ColorChart.cs
为了便于编辑颜色,需要它继承自ScriptableObject。同时它还是个颜色的容器,我们让它成为迭代器,继承IEnumerable<Color>并添加索引器(Indexer)。
using System; using System.Collections; using System.Collections.Generic; using UnityEngine; namespace DR.Book.SRPG_Dev.ColorPalette { [Serializable] [CreateAssetMenu(fileName = "New Color Chart.asset", menuName = "SRPG/Color Chart")] public class ColorChart : ScriptableObject, IEnumerable<Color> { [SerializeField] private Color[] m_Colors = new Color[] { }; public Color this[int index] { get { return m_Colors[index]; } set { m_Colors[index] = value; } } public IEnumerator<Color> GetEnumerator()

本文介绍了SRPG游戏开发中颜色映射与职业动画的实现,特别是颜色组ColorChart的创建和使用。ColorChart作为一个颜色容器,方便颜色的编辑和职务分担。文章详细讲解了如何创建ColorChart.cs,实现颜色的迭代和索引,以及添加动态调整颜色数量的方法。此外,还阐述了TryGetSwapTexture方法,用于获取转换后的Texture2D,包括颜色查找、近似值比较以及新Texture2D的创建和应用。
最低0.47元/天 解锁文章
3178

被折叠的 条评论
为什么被折叠?



