摘要: xlua热修复的使用方法: 功能开启步骤: (1)特性宏定义:HOTFIX_ENABLE; 平时不开,build版本时动态打开。 (2)执行:XLua/Generate Code,生成各种辅助代码; (3)执行:XLua/Hotfix Inject In Editor,对DLL进行注入。 手机版本b 阅读全文
posted @ 2022-02-27 22:30 斯芬克斯 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2021-06-24 16:16 斯芬克斯 阅读(75) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2021-05-11 20:37 斯芬克斯 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 当我们想要在多个Component之间共享数据时,会想到哪些方案呢? (1)SritptableObject (2)NativeArray (3)ISharedDataComponent (4)BlobAsset (5)unsafe void* (6)... 不错,这些都是常用手段,但是区别甚大,并 阅读全文
posted @ 2020-06-10 23:54 斯芬克斯 阅读(396) 评论(0) 推荐(0) 编辑
摘要: 各个工作线程的随机数种子是稳定的,RandomSystem的实现如下: using Unity.Entities; using Unity.Jobs; using Unity.Burst; using Unity.Collections; using Unity.Jobs.LowLevel.Unsa 阅读全文
posted @ 2020-06-10 21:37 斯芬克斯 阅读(823) 评论(2) 推荐(0) 编辑
摘要: 将一个方块的AnimationClip数据导出,然后以BlobAsset的方式在JobSystem中并行计算,以提升效率: (1)编辑态,将AnimationClip转为SriptableObject数据,进行存储; (2)运行时,将ScriptableObject数据转换为BlobAsset对象, 阅读全文
posted @ 2020-04-01 03:04 斯芬克斯 阅读(2325) 评论(0) 推荐(0) 编辑
摘要: 按照一般的写法,write会产生race condition,所以需要通过依赖关系按顺序执行: using UnityEngine; using Unity.Jobs; using Unity.Collections; using Unity.Collections.LowLevel.Unsafe; 阅读全文
posted @ 2020-03-08 23:51 斯芬克斯 阅读(2906) 评论(0) 推荐(0) 编辑
摘要: 定义: 使用WriteGroup标记了同一个component的components就属于一个WriteGroup: public struct W : IComponentData { public int Value; } [WriteGroup(typeof(W))] public struc 阅读全文
posted @ 2020-02-29 21:58 斯芬克斯 阅读(721) 评论(0) 推荐(0) 编辑
摘要: 结构性修改Structural changes: 任何导致entity的原型(archetype)变化,或者entity在chunk中的存储位置变化的修改,都叫做结构性修改。 以下操作皆为结构性修改: 创建或销毁entity 添加或移除component 修改shared component的值 同 阅读全文
posted @ 2020-02-29 21:57 斯芬克斯 阅读(282) 评论(0) 推荐(0) 编辑
摘要: ECS systems的主要任务就是读取一系列的components数据,计算以后将结果写入其他的components。那么如何高效地读写数据就是很重要的,而有效的方法就是利用cpu的多核特性来并行地读取和处理数据。 ECS提供了多种完成这个任务的方式,每一种都有自己的规则和约束: API 说明 J 阅读全文
posted @ 2020-02-29 16:16 斯芬克斯 阅读(1744) 评论(0) 推荐(1) 编辑