如:配置血条:根据角色类型(人物、动物、怪物等)配置不同的血条,包括血条大小,血条名或血条预设,血条颜色等一些简单数据。
如:配置子d:子d类型(真子d、假子d、追踪子d等),子d速度,伤害数值,子d关联的特效等。
诸如此类的配置很多种,可创建一个可序列化的类存储数据,或者创建 XML 、JSON 文件保存数据,创建 Excel 文件,创建 TXT 文件,皆可完成需求,灵活使用这些方法保存配置数据。
在此介绍一下使用可序列化类保存配置,并且将可序列化类保存成Unity的自定义文件(asset),然后配置自定义文件(asset)。
优点:
可以保存数据类型多样(int、string、Vector3、GameObject、Transform、Texture等)如关联预设,关联等资源数据,而XML、TXT等只能保存(int、string、Vector3 等基本数据类型)。
缺点:
如果配置数据中保存了(GameObject、Texture)等资源数据,当关联的资源被删除时,配置数据将丢失,需要重新将新的资源再次关联到配置数据上。
下面做个简单的子d配置数据
创建一个编辑器类,在 菜单栏添加功能按钮,生成自定义资源
读取自定义文件类
自定义 文件的 Inspector面板,使用编辑器类重写 Bulletcs 的Inspector面板Unity的序列化配表主要是给游戏设计师或关卡设计师调整游戏数据用的,用以改变游戏难度和调整游戏平衡性。
目前流行的做法是将Excel表格数据转换成Unity中的数据,再由GUI控件显示出来,有很多Unity的Excel插件可以在Asset Store上搜索。
如果是简单的线性数据可以用 SharpConfig 将其序列化为 INI 文件。
如果是结构复杂的数据可用 LitJSON 将其序列化为 Json 文件,或者直接使用 SystemXml 序列化为 XML。
另外有一些更高级的插件和工具,如 Excel2Unity 可以解决从策划配表到程序解析的转换。
Unity3d连接SQLServer数据库:
首先需要把Unity安装路径下的SystemDatadll和MonoDatadll拷贝到当前unity工程的Assets文件夹下,因为之后在脚本中引用的dll并不是framework提供的。脚本的内容:
usingUnityEngine;
usingSystem;
usingSystemCollections;
usingSystemData;(这个必须是引用自unity的安装目录下,如果找不到就搜索一下)
usingSystemDataSqlClient;
publicclassConnectSQL:
{
//Usethisfor
voidStart()
{
string="DataSource=XYL-PC;DataBase=Unity;uid=sa;pwd=123456;";
con=new();
con=;
conOpen();
if(conState==Open)
{
print("Connectsuess!");
}
else
{
print("ConnectFailure!");
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)