C#
sunwingz
这个作者很懒,什么都没留下…
展开
-
ET框架:Server(3),自动注册序列化类
Add完程序集准备好EventSystem后,Main调用了一个空方法MongoHelper.init() 其目的是为了执行MongoHelper的静态构造函数进行初始化,类的静态构造函数会在这个类的任何东西被引用前执行。MongoHelper的静态构造函数扫描程序集中所有非泛型Entity子类,将他们注册到mongo驱动中目的是让所有Entity子类能实现序列化功能 static MongoHelper() { // 自动注册IgnoreExtraElement原创 2020-07-10 15:35:01 · 341 阅读 · 0 评论 -
ET框架:Server底层主逻辑循环(2)--EventSystem
之前Server的主逻辑循环中除了异步处理,还有一个EventSystem.Update()因为异步处理搜索引用后,只发现网络逻辑中有使用,因此,可以猜测Game.EventSystem就囊括了所有游戏的逻辑了while (true){ try { Thread.Sleep(1); OneThreadSynchronizationContext.Instance.Update(); // 处理异步回调 Game.EventSystem.Update(); } catch (Exc原创 2020-07-09 01:26:37 · 375 阅读 · 1 评论 -
ET框架:Server底层主逻辑循环(1)-- 异步处理和SynchronizationContext(同步上下文)
// 异步方法全部会回掉到主线程SynchronizationContext.SetSynchronizationContext(OneThreadSynchronizationContext.Instance);原创 2020-07-03 01:09:05 · 985 阅读 · 0 评论 -
ET框架:MacOS下测试和运行方式
运行步骤启动mongoDB: 命令行下mongod --dbpath [你的数据库目录]启动Server从VS直接调试:在server.sln项目中直接调试Server.App也可以生成后,从命令行运行Bin目录下的App.dll: dotnet App.dll编辑一个shell脚本去运行 dotnet App.dll,这样才能使用ProcessHelper.Run去启动Server(我的Mac环境下代码ProcessHelper.Run无法找到dotnet,要指定完全路径,想想还是做个s原创 2020-07-01 00:53:19 · 442 阅读 · 0 评论 -
ET框架:搭建问题2,MacOS环境,mongodb无法启动
首先,尝试在终端中启动mongodb错误通常都是默认的数据库目录不存在,输出信息中有一行:[initandlisten] exception in initAndListen: NonExistentPath: Data directory /data/db not found., terminating这个目录通常是启动mongod时指定一个存在的目录,例如:mongod --dbpath [自己指定的目录路径]好,现在在终端启动mongodb没问题了。但在unity的ETModel.Ser原创 2020-06-24 00:03:03 · 285 阅读 · 0 评论 -
ET框架:搭建问题1,拉取仓库并用unity打开后不断报错:“EndLayoutGroup: BeginLayoutGroup must be called first.”
查询后此报错需要添加:GUIUtility.ExitGUI();此报错由 “ETModel: ServerCommandLineEditor” 窗口引起在 ServerCommandLineEditor.cs 中修改namespace ET{ public class ServerCommandLineEditor: EditorWindow { public void OnGUI() { if (GUILayout.Butto原创 2020-06-23 22:03:46 · 6539 阅读 · 2 评论 -
【Unity】安卓打包要点 (Unity v2019.2.17f, MacOS)
直接导出APK如果没有做一些特别插件,可以直接导出APK并测试步骤:File --> Build Settings选择Android平台(Platform),这步需要一点时间,之后不切换平台的话,无需重复选择检查Scenes In Build,看看哪些场景需要打包不要选Export Project点击“Build” or “Build And Run”选择保存路径和输入文件...原创 2020-01-05 18:18:37 · 2221 阅读 · 2 评论 -
C#索引器(Indexer)
索引器(Indexer)的用途索引器的行为的声明在某种程度上类似于属性(property)。就像属性(property),您可使用 get 和 set 访问器来定义索引器。但是,属性返回或设置一个特定的数据成员,而索引器返回或设置对象实例的一个特定值。换句话说,它把实例数据分为更小的部分,并索引每个部分,获取或设置每个部分。定义一个属性(property)包括提供属性名称。索引器定义的时候...转载 2018-07-31 15:05:20 · 220 阅读 · 0 评论 -
C# 抽象属性
抽象属性(Abstract Properties)抽象类可拥有抽象属性,这些属性应在派生类中被实现。下面的程序说明了这点:using System;namespace tutorialspoint{ public abstract class Person { public abstract string Name { get;...转载 2018-07-31 14:55:01 · 1368 阅读 · 0 评论 -
using的用法
using的用法:1. using指令:引入命名空间这是最常见的用法,例如:using System;using Namespace1.SubNameSpace;2. using static 指令:指定无需指定类型名称即可访问其静态成员的类型using static System.Math;var = PI; // 直接使用System.Math.PI3. 起别名...转载 2018-07-31 14:27:07 · 1033 阅读 · 0 评论 -
从DateTime获取显示用的日期字符串
DateTime dt = new DateTime(2017,4,1,13,16,32,108);string.Format("{0:y yy yyy yyyy}",dt); //17 17 2017 2017string.Format("{0:M MM MMM MMMM}", dt);//4 04 四月 四月string.Format("{0:d dd ddd dddd}", dt)...转载 2018-07-31 14:08:46 · 711 阅读 · 0 评论