# BITKit——easy useful的.net框架(支持网络) > 所有项目都需要一个Framework,BITKit为你提供所有支持 无论是小型,大型还是商业项目,你都可以用BITKit完成所有的需求 特别是Unity和asp和正在支持中的Godot ## Getting Started 使用指南 该框架由于目前还没有用户,所以使用指南将包括在部分文件中 ### Prerequisites 项目使用条件 你需要一些小小的nuget程序包,或者一些小小的Unity Packages ### UniTask 提供异步支持 ```csharp //切换到线程池 await UniTask.SwichToThreadPool(); //在Unity中切换到主线程 await UniTask.SwitchToMainThread(); //在异步中等待,直到某个条件达成或取消 await UniTask.WaitUtil(()=>completed); ``` *** ### Newtonsoft.json 提供json的序列化与反序列化 ```csharp //序列化数据 var json = JsonConvert.SerializeObject(value); //反序列化json为数据 var value = JsonConvert.DeserializeObject(json); ``` *** ### Unity.Mathematics 提供数学结构 ```csharp //float3 通常用于坐标和向量 float3 position=new(0,1,0); //quaternion 四元数,通常用于旋转 quaternion rotation=new(1,1,1,1); ``` *** ### (可选)GameDesigner 提供主要的网络服务(未来可能会用内置KCP) ``` csharp //注册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链接](http://server.bitfall.icu:3000/root/BITKit.git) 右键复制 #### Unity: ``` 在 PackagesManager 运行 "Add Package From Git Url" ``` #### Net Core: ``` 从Git Clone该项目后,支持在解决方案中"添加现有项目"即可完成安装 ``` ### Usage example 使用示例 ```csharp //打包数据 BITAssets.Build(myFile); //二进制和反二进制化数据 BITBinary.Write(value); BITBinary.Read(buffer); //注册远程指令 INetProvider.AddCommandListener(callback); //向服务器发送指令 INetProvider.ServerCommand(); //向客户端发送指令 INetProvider.ClientCommand(64); ``` 还有一种基于`ECS`依赖注入 ```csharp 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* - [军火商小火柴](https://bitfall.icu) ## License 授权协议 这个项目 MIT 协议, 请点击 [LICENSE.md](LICENSE.md) 了解更多细节。