![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c#
文章平均质量分 54
寂灭万乘
我喜欢代码,因为他能帮我创造另一个世界
展开
-
C#篇-unity和序列化和反序列
C#篇-unity和序列化和反序列标签(空格分隔): C# C篇-unity和序列化和反序列简介C完成序列化和反序列化如何控制类型可序列化序列化反序列化中上下文unity中的序列化和反序列化unity中序列化的注意事项自定义序列化序列化和反序列内部过程简介所谓序列化就是将对象转换为字节流,反序列化则是字节流转换回对象C#完成序列化和反序原创 2018-02-02 23:37:01 · 1916 阅读 · 0 评论 -
unity编辑器扩展篇-中文字段显示
编辑器扩展篇-中文字段显示因为unity原生编辑器或多或少不满足业务需求或使用者的审美,我常常需要对编辑器进行扩展。这不,我很不满unity原生字段在inspect面板的显示,希望字段能以中文方式显示字段,unity编辑器扩展这一强大的功能给了我任性的需求提供了解决之道。只有使用过unity的都清楚你在类中定义怎样的字段属性,inspect面板上显示的字段属性就是你用英文描述的字段。可...原创 2018-02-10 01:42:32 · 2559 阅读 · 0 评论 -
unity Dictionary序列化和反序列化及XML本地数据存储
直接上代码首先是XML形式存储本地数据XMLManager类using System;using System.IO;using System.Security.Cryptography;using System.Text;using System.Xml;using System.Xml.Serialization;public class XMLManage转载 2017-09-22 20:44:59 · 1741 阅读 · 0 评论 -
unity篇-官方序列化接口 ISerializationCallbackReceiver
unity篇-官方序列化接口 ISerializationCallbackReceiver标签(空格分隔): unityunity篇-官方序列化接口 ISerializationCallbackReceiver简介官方提供的解决方案Dictionary的序列化的泛型解决方案简介在unity中,序列化一直是个很头疼的问题,尽管官方支持了许多类型,但一些自定转载 2018-02-05 20:51:35 · 6486 阅读 · 3 评论 -
unity中三种数据存储方式ScriptableObject,Json,Xml和Dictionary的序列化
unity中三种数据存储方式ScriptableObject,Json,Xmlunity中三种数据存储方式ScriptableObjectJsonXml准备ScriptableObject简介编写序列化类读写Json简介序列化类读写LitJsonNewtonsoftJsonXml序列化类读写准备我以Dictionary类型作为案原创 2018-02-07 00:55:55 · 5276 阅读 · 2 评论 -
ECS架构 Entitas-CSharp学习之路(一)
断断续续2个月完成了自己的游戏demo,却有种删除整个项目的冲突,架构太混乱,已经完全不想加东西,加一个功能就会因为发现自己之前留了太多屎,到后面不得不为之前的屎埋坑,必须做出改变。我需要学习一下其他人的代码和架构,查找了一下github几个star比较高的unity框架,发现了它——Entitas,最近知乎unity讨论比较热乎的ECS架构。 那么就玩玩吧,反正我一个学生党很闲很作,而且多学学...原创 2018-04-10 20:45:16 · 3538 阅读 · 1 评论 -
ECS架构 Entitas-CSharp学习之路(三)
第三个教程 -实现一个多反应系统教程地址https://github.com/sschmid/Entitas-CSharp/wiki/MultiReactiveSystem-Tutorial配置打开之前的Entitas编辑器,就是之前用来generate的那个。 在那个Jenny->Context 配置Game, Input, Ui,然后generate 加入教程...原创 2018-04-10 20:46:05 · 1313 阅读 · 0 评论 -
ECS架构 Entitas-CSharp学习之路(二)
接下来第二篇教程。主要是教我们如何在Entitas下使用组件表示游戏状态,以及其他系统如何响应用户输入执行相应逻辑。官方教程https://github.com/sschmid/Entitas-CSharp/wiki/Unity-Tutorial—Simple-Entity-View-and-Movement 完全按教程做就能将demo跑起来,注意要将camera的Projectio...原创 2018-04-10 20:44:05 · 1154 阅读 · 0 评论 -
UnityAction和System.Action引发的思考
今天突然发现UnityAction,这是什么,怎么和Action有着类似的功能?可是如果功能如果真的一致,那unity官方提供这个不是多此一举吗。 在google的帮助下我得到了答案。(百度真是垃圾)UnityAction和System.Action的区别1.首先,unity内置的.AddListener只能注册UnityAction来添加非持久监听器2.如果希望在inspector...翻译 2018-04-05 01:07:59 · 9930 阅读 · 4 评论 -
C#单例模式模板类
public class UnitySingleton<T> : MonoBehaviour where T : Component { private static T _instance; public static T Instance { get { if (_instance == null) {转载 2017-11-29 22:52:21 · 2469 阅读 · 0 评论 -
C#篇-值类型和引用类型
C#篇-学习笔记-值类型和引用类型C篇-学习笔记-值类型和引用类型区别类型的内存分配值类型特征优先使用值类型的情景装箱拆箱区别值类型和引用类型的最大区别:值类型变量直接包含值 一个值类型变量赋给另一个值类型变量时,复制其包含的值,引用类型的赋值则是复制对象的引用,不复制对象本身值类型不能派生其他类型,值类型实例一般分配在线程栈上,相比引用类型,值类型使原创 2018-02-01 17:50:22 · 306 阅读 · 0 评论 -
unity C#脚本开发基础
(一)、变量public string player = "dog";//作用域 变量类型 变量名;(二)、数组 建议使用List泛型Listusing System.Collections.Generic;//使用list容器需要添加该命名空间void start(){ publiec List<string> test = new List<string>(); //新增原创 2017-07-16 20:37:57 · 511 阅读 · 0 评论 -
C#陷阱和容易搞错的知识点总结
1.尽可能减少public常量,最好以属性代替常量对外公开数据。 public变量会导致运行和编译的效果不同,不能经常为更新一个dll文件,而繁琐的对项目进行连续不断的重新编译。 2.相等运算符重载时要先判断参数是否为空,否则会引起空引用异常 如 3.params关键词需要判断是否为空值 4.传递到ref参数的变量首先得初始化 5.不要在子类的构造函数使用虚方法 因为构造函数比虚方法先原创 2017-10-11 20:33:06 · 408 阅读 · 0 评论 -
C#篇-unity存储类成员数据
代码很简单,就是利用FileStream数据存储到.dat文件先是类数据结构和单例模式模板类using System.Collections;using System.Collections.Generic;using UnityEngine;/// <summary>/// 为单例模式设计的模板类/// </summary>/// <typeparam name="T"></typep原创 2017-12-25 10:06:44 · 1025 阅读 · 0 评论 -
Unity3d基于订阅者模式实现事件机制_解决装箱拆箱问题和注册的监听事件单一问题
原代码参考自 http://www.unity.5helpyou.com/3695.html#more-3695 原代码作者提供了C#的基于观察者模式的事件机制,但还有许多问题,一是数据传输时装箱拆箱引起性能损耗,二是注册事件代码有错误,只能注册一个事件,没有充分使用委托来注册多个事件。 针对以上问题,我做出了修改。 原代码 订阅者模式实现using System;using Syste原创 2017-12-30 22:19:34 · 501 阅读 · 0 评论 -
开源自己开发的一款宠物小精灵游戏
链接https://github.com/IceLanguage/Pokemon_Unity3D_Entitas游戏说明介绍PokemonBattle是一款完全由我个人独立开发,基于Unity+C#+Entitas-CSharp的安卓手机游戏,玩家可以操控训练家进入草地,草地中会冒出精灵与玩家作战,玩家可以在战斗中选择使用道具,捕捉精灵,切换精灵,选择精灵技能进行攻击,或是...原创 2018-07-29 22:58:08 · 6639 阅读 · 1 评论