|
||
---|---|---|
DLL | ||
Src | ||
.gitignore | ||
BITKit.csproj | ||
Folder.DotSettings.user | ||
LICENSE.md | ||
Readme.md |
Readme.md
BITKit——easy useful的.net框架(支持网络)
所有项目都需要一个Framework,BITKit为你提供所有支持
无论是小型,大型还是商业项目,你都可以用BITKit完成所有的需求
特别是Unity和asp和正在支持中的Godot
Getting Started 使用指南
该框架由于目前还没有用户,所以使用指南将包括在部分文件中
Prerequisites 项目使用条件
你需要一些小小的nuget程序包,或者一些小小的Unity Packages
UniTask
提供异步支持
//切换到线程池
await UniTask.SwichToThreadPool();
//在Unity中切换到主线程
await UniTask.SwitchToMainThread();
//在异步中等待,直到某个条件达成或取消
await UniTask.WaitUtil(()=>completed);
Newtonsoft.json
提供json的序列化与反序列化
//序列化数据
var json = JsonConvert.SerializeObject(value);
//反序列化json为数据
var value = JsonConvert.DeserializeObject<MyValue>(json);
Unity.Mathematics
提供数学结构
//float3 通常用于坐标和向量
float3 position=new(0,1,0);
//quaternion 四元数,通常用于旋转
quaternion rotation=new(1,1,1,1);
(可选)GameDesigner
提供主要的网络服务(未来可能会用内置KCP)
//注册Rpc处理服务
ClientBase.Instance.AddRpcHandle(this);
//向服务器发送Rpc
ClientBase.Instance.SendRT("RpcName",intValue,floatValue,stirngValue);
在Unity中,你还需要以下Plugins:
Sirenix.Odin 为Unity提供基本的数据序列化(准备移除)
Demigiant.DOTween 为Unity提供补间动画支持
RotaryHeart.SerializableDictionaryLite为Unity提供序列化字典(已下架)
Unity.Addressables 为Unity添加可寻址资源的资源管理方案
Installation 安装
1.从Git Clone此项目
该项目Git链接 右键复制
Unity:
在 PackagesManager 运行 "Add Package From Git Url"
Net Core:
从Git Clone该项目后,支持在解决方案中"添加现有项目"即可完成安装
Usage example 使用示例
//打包数据
BITAssets.Build(myFile);
//二进制和反二进制化数据
BITBinary.Write(value);
BITBinary.Read<T>(buffer);
//注册远程指令
INetProvider.AddCommandListener<MyCommand>(callback);
//向服务器发送指令
INetProvider.ServerCommand<MyCommand>();
//向客户端发送指令
INetProvider.ClientCommand<MyCommand>(64);
还有一种基于ECS
依赖注入
public class InjectExample
{
[Inject]
private IMyService myService;
void Execute()
{
myService.DoSomething();
}
}
Deployment 部署方法
Unity:
直接Build项目
Net Core:
直接发布项目
Contributing 贡献指南
从Readme文件下方找到作者的联系方式,并直接联系作者
Release History 版本历史
- 0.2.1
- 更新
README.md
- 更新
- 0.2.0
- 添加
README.md
- 添加
- 0.1.0
- 创建Git 仓库
Authors 关于作者
- 军火商小火柴 - Initial work - 军火商小火柴
License 授权协议
这个项目 MIT 协议, 请点击 LICENSE.md 了解更多细节。