目录 1. ModelExperimental 的缓存机制 1.1. 缓存池 ResourceCache 1.2. 缓存对象的键设计 ResourceCacheKey 2. 三维模型的加载与解析 2.1. GltfLoader 的初步加载 2.2. GltfJsonLoader 请求并解析 glTF 的 JSON 部分 2.3. 状态判断 2.4. glTF 的延迟处理机制 - 使用 ES6 Promise 2.5. 模型组件创建 2.6. 模型场景图结构的创建 2.7. 本节小结 3. 模型的…
目录 1. 3DTiles 数据集的类型 2. 创建瓦片树 2.1. 请求入口文件 2.2. 创建树结构 2.3. 瓦片缓存机制带来的能力 3. 瓦片树的遍历更新 3.1. 三个大步骤 3.2. 遍历器 3.3. 选择瓦片 3.4. 请求并解析瓦片内容 3.5. 更新瓦片并创建 DrawCommand 3.6. prePassesUpdate 也能创建 DrawCommand 3.7. 自定义着色器 3.8. 样式引擎 3.9. 其它 4. 本文总结 3DTiles 与 I3S 是竞争关系,可是…
很高兴你能在浮躁的年代里还有兴趣阅读源代码,CesiumJS 至今已有十年以上,代码量也积累了三十多万行(未压缩状态). 我也很荣幸自己的文章能被读者看到,如果对你有帮助.有启发,点个赞就是对我最大的鼓励,感激不尽.本系列文章写于 2022 年,梳理的是 CesiumJS 前端库中的主要源码结构,不涉及着色器原理.WebGL 效果原理剖析等内容较为专一.可以独立出文的内容. 如果想看文章目录,直接拉到本文最后一节即可. 目录 1. 源代码工程目录详解 前置说明 ① 根目录下 ② Source 目…
在上一篇学习过HashMap(源码解读—HashMap)之后对hashTable也产生了兴趣,随即便把hashTable的源码看了一下.和hashMap类似,但是也有不同之处. public class Hashtable<K,V> extends Dictionary<K,V> implements Map<K,V>, Cloneable, java.io.Serializable  实现接口:Map,Cloneable,Serializable 继承自Diction…
本篇内容比较简单,但却很繁琐,篇幅也很长,毕竟是囊括了整个操作系统的生命周期.这篇文章的目的是作为后续设计多任务开发的铺垫,后续会单独再抽出一篇分析任务的相关知识.另外本篇文章以单核MCU为背景,并且以最新的3.1.xLTS版本源码进行分析.主要内容目录如下: 基于bsp/stm32/stm32f103-mini-system为背景 Cortex-M3的堆栈基础概念 C语言main函数和rt-thread的main rt-thread操作系统的传统初始化与自动初始化组件 任务是怎样运行起来的 I…
学习了一下linkedList的源码,做下记录. java底层实现的是双向环链表,程序定义了一个header,来保存头结点,header.next指向最后一个节点(最后插入到),header.prevoious指向第一个节点(最先插入的).…
目录 目录 1 1. 前言 1 2. PAM 2 3. pam_limits 2 4. limits.conf的由来 3 5. 模块入口函数 4 6. 解析limits.conf 6 7. 生效limits.conf 7 8. systemctl和systemd 8 9. 总结 10 附1:资源 11 附2:编译ninja 11 附3:使用meson编译systemd 11 附4:安装Python-3.7.2 12 附5:安装libcap 12 1. 前言 本文不一定适合比较老版本的Linux,…
来源 https://laravel-china.org/articles/5101/source-code-reading-laravel-php-artisan-configcache 源码在哪 首先,我们还是可以使用编辑器的搜索功能搜 ConfigCacheCommand,这样就可以直接打开 config:cache 命令的源代码了,位于 Illuminate\Foundation\Console\ConfigCacheCommand 中,关键的代码还是位于 fire() 方法中: pub…
自己看读完pytorch封装的源码后,自己又重新写了一边(模仿其书写格式), 一些问题在代码中说明. import torch import torchvision import argparse import torch.nn as nn import torch.nn.functional as F import torch.optim as optim from torchvision import datasets, transforms, models import torch.uti…
*本文依据RT-Thread当时最新版本4.0.1版本源码 RT-Thread操作系统是一款基于优先级和时间片轮转的多任务实时操作系统.其调度算法采用256个优先级,并支持相同优先级的任务存在.不同优先级的任务采用优先级调度,而相同优先级的任务则采用时间片轮转调度.其实这种调度算法在绝大多数系统中都一样,像我知道的μCos和freertos都是如此.不过这里需要先了解一个问题,也是我初学时被困扰的问题——多种调度算法存在时那么何时采用何种调度算法?彼此又是如何共存和协调进行的?这要等看完并看懂调…