- 博客(9)
- 收藏
- 关注
原创 Unity Dictionary的底层实现及部分方法的底层实现
总结起来,Unity 的 Dictionary 类型底层使用哈希表实现,通过计算键的哈希码,将键值对映射到数组索引来实现高效的查找和插入操作。需要注意的是,为了保持高效性能,Dictionary 在内部会自动调整数组的大小,以确保具有适当的容量来容纳键值对。不保持顺序:Dictionary 中的键值对是无序存储的,即添加和遍历元素的顺序不一定与插入顺序相同。高效的查找操作:Dictionary 使用哈希表来实现,能够以常数时间复杂度(O(1))进行查找操作,即使在具有大量元素的情况下,查找速度也非常快。
2023-08-03 17:12:51
1926
原创 Unity 组件 Constraint系列(不用设置父子关系模拟设置父子关系的操作)
Constraint组件可以约束物体,链接本物体与目标物体的Transform,跟随目标物体的位置、旋转、缩放,实现父子物体一样的效果,却不用设置父子关系。而且一个物体可以同时关联多个目标物体,设置不同的权重Aim:旋转受约束的游戏对象以面向链接的游戏对象。Look At:将受约束的游戏对象旋转到链接的游戏对象(简化的目标约束)。Parent:使用链接的游戏对象移动和旋转受约束的游戏对象。Position:像链接的游戏对象一样移动受约束的游戏对象。
2023-06-15 09:58:30
1993
1
原创 Unity打包WebGL的全过程及在打包和使用过程中会遇到的问题(本地测试)
如果说选择压缩打包那么在本地测试会出现浏览器不支持解压缩这个问题解决方案还在研究中,所以就只讲解一下不压缩的,其实压缩与不压缩其会出现的问题只会在包的大小上体现出来如果不是正式上线只是本地测试的话没有什么区别也不会存在解压缩这个问题了。打包后我们会发现在我们的文件夹里会有一个网址html,这代表我们的Web包已经打成功了,那么直接点击这个html文件就能够直接运行我们的项目了。点击确定就添加上了我们的类型然后再回去我们的网站就发现BUG不见了至此所有本地测试的流程就完成了。
2023-06-07 15:39:12
20694
25
原创 Unity打包Dedicated Server包的MonoBleedingEdge文件
MonoBleedingEdge 文件夹是 Unity 在构建 Dedicated Server 时自动生成的特殊文件夹,包含了 Mono 运行时、库文件和编译工具。这些文件用于支持服务器端的 C# 脚本执行,而不需要图形渲染系统。通过这种方式,Unity 提供了一个适用于服务器端的、轻量级的 C# 执行环境,以支持多玩家游戏的服务器端逻辑。
2023-04-17 15:25:51
6674
原创 Unity的AssetBundle系统来动态加载FBX模型
总之,要动态加载FBX模型,可以使用Unity的AssetBundle系统,并加载AssetBundle以获取FBX模型。首先,需要将FBX模型添加到AssetBundle中,并创建一个AssetBundle文件。可以使用WWW类或UnityWebRequest类来加载AssetBundle,并使用AssetBundle.LoadAsset方法获取FBX模型。在这个示例中,bundleUrl是AssetBundle的URL地址,assetName是FBX模型的名称。3.加载AssetBundle。
2023-04-17 15:23:54
1958
1
原创 Unity将当前场景渲染到图片上并导出图片(本地/服务器)
这段代码创建了一个RenderTexture,将相机的渲染目标设置为该RenderTexture,渲染相机所在的场景,并将RenderTexture转换为Texture2D,最后将Texture2D保存为PNG格式的文件。
2023-04-10 16:38:50
4158
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人