摘要: 什么是Job System? 一个job system通过创建jobs而不是线程来管理多线程的代码。Job是一个小的工作单元,不等同线程。管理运行在多个核心上的一组工人线程(worker threads)。 Job的处理数据是值类型,由NativeContainer管理,而NativeContain 阅读全文
posted @ 2020-05-15 17:21 天山鸟 阅读(402) 评论(0) 推荐(0) 编辑
摘要: editor 和runtime的内存管理分开的 unity检测不到native内存容量 如c++,lua 一个asset一个ab的问题在于 每个asset都有对应的文件头,并不划算 IL2CPP抛弃了虚拟机,但是在上面的执行过程图里仍然有I2CPP VM的过程,这是因为C 本身是基于托管代码设计的语 阅读全文
posted @ 2020-05-15 11:32 天山鸟 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 一,缓存类型 概念:局部性。 时间局部性:当前用到的一个存储器位置,不久的将来会被用到。 空间局部性:当前用到的一个存储器位置,附近的位置会被用到。 那么在CPU的层面,这两个局部性的特性就会被Cache执行,即将对拥有良好局部性的位置和指令进行缓存。来看一个具有时间局部性的例子: 这是一个简单的求 阅读全文
posted @ 2020-05-15 11:29 天山鸟 阅读(1325) 评论(0) 推荐(0) 编辑
摘要: 然后我们来讨论一下一维、二维柏林噪声的原理。 1、一维柏林噪声 首先,在X轴向上每个整数坐标随机生成一个数(范围为 1~1),我们称这个数为Gradient,译为梯度或者斜率。然后我们对相邻两个整数之间使用梯度进行插值计算,使得相邻两点之间平滑过渡。平滑度取决于所选用的插值函数,老版的柏林噪声使用f 阅读全文
posted @ 2020-05-15 11:03 天山鸟 阅读(1201) 评论(0) 推荐(0) 编辑
摘要: #NativeContainer ##为什么 为解决Job之间数据处理结果的隔离问题。 ##是什么 NativeContainer是托管的值类型,可以相对安全的操作native内存。 ##注意 不能两个job同时写入同一作业NativeArray **避免NativeArray使用静态数据。**访问 阅读全文
posted @ 2020-05-15 11:02 天山鸟 阅读(561) 评论(0) 推荐(0) 编辑