Git Product home page Git Product logo

cupnfish-log's Introduction

Hi there 👋

cupnfish-log's People

Contributors

cupnfish avatar rgripper avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

rgripper

cupnfish-log's Issues

Tcp/Ip协议详解第二版 第一卷书籍学习进展跟踪

最近看了不少知乎言论,才发现本书第一卷和第一版的第一卷不是同一个作者,同时还删减了很多内容,遂决定看完本书之后,接着挑选部分RFC进行细致研读。

RFC地址:https://www.rfc-editor.org/standards#IS

目录

  • 第1章 概述
  • 1.1体系结构原则
  • 1.2 设计和实现
  • 1.3 TcP/lP协议族结构和协议
  • 1.4 1ntemet、内联网和外联网
  • 1.5 设计应用
  • 1.6 标准化进程
  • 1.7 实现和软件分发
  • 1.8 与Intemet体系结构相关的攻击
  • 1.9 总结
  • 第2章 Intemet地址结构
  • 2.1引言
  • 2.2 表示IP地址
  • 2.3 基本的IP地址结构
  • 2.4 CIDR和聚合
  • 2.5 特殊用途地址
  • 2.6 分配
  • 2.7 单播地址分配
  • 2.8 与IP地址相关的攻击
  • 2.9 总结
  • 第3章 链路层
  • 3.1引言
  • 3.2 以太网和IEEE802局域网/城域网标准
  • 3.3 全双工、省电、自动协商和802.1X流量控制
  • 3.4 网桥和交换机
  • 3.5 无线局域网-1EEE802.11 (Wi-Fi)
  • 3.6 点到点协议
  • 3.7 环回
  • 3.8 MTU和路径MTU
  • 3.9 隧道基础
  • 3.10 与链路层相关的攻击
  • 3.11 总结
  • 第4章 地址解析协议
  • 4.1引言
  • 4.2 一个例子
  • 4.3 ARP缓存
  • 4.4 ARP帧格式
  • 4.5 ARP例子
  • 4.6 ARP缓存超时
  • 4.7 代理ARP
  • 4.8 免费ARP和地址冲突检测
  • 4.9 arp命令
  • 4.10 使用ARP设置一台嵌入式设备的IPv4地址
  • 4.11与ARP相关的攻击
  • 4.12 总结
  • 第5章 Intemet协议
  • 5.1引言
  • 5.2 1Pv4头部和IPv6头部
  • 5.3 1Pv6扩展头部
  • 5.4 1P转发
  • 5.5 移动IP
  • 5.6 1P数据报的主机处理
  • 5.7 与IP相关的攻击
  • 5.8 总结
  • 第6章 系统配置: DHcP和自动配置
  • 6.1引言
  • 6.2 动态主机配置协议
  • 6.3 无状态地址自动配置
  • 6.4 DHcP和DNs交互
  • 6.5 以太网上的PPP
  • 6.6 与系统配置相关的攻击
  • 6.7 总结
  • 第7章 防火墙和网络地址转换
  • 7.1引言
  • 7.2 防火墙
  • 7.3 网络地址转换
  • 7.4 NAT穿越
  • 7.5 配置包过滤防火墙和NAT
  • 7.6 1Pv4/lPv6共存和过渡中的NAT
  • 7.7 与防火墙和NAT相关的攻击
  • 7.8 总结
  • 第8章 ICMPv4和ICMPv6: Intemet控制报文协议
  • 8.1引言
  • 8.2 ICMP报文
  • 8.3 ICMP差错报文
  • 8.4 ICMP查询/信息类报文
  • 8.5 IPv6中的邻居发现
  • 8.6 ICMPv4和ICMPv6转换
  • 8.7 与ICMP相关的攻击
  • 8.8 总结
  • 第9章 广播和本地组播(IGMP和MLD)
  • 9.1 引言
  • 9.2 广播
  • 9.3 组播
  • 9.4 互联网组管理协议和组播侦听发现协议
  • 9.5 与IGMP和MLD相关的攻击
  • 9.6 总结
  • 第10章 用户数据报协议和IP分片
  • 10.1引言
  • 10.2 UDP头部
  • 10.3 UDP校验和
  • 10.4 例子
  • 10.5 UDP和IPv6
  • 10.6 UDP-Lite
  • 10.7 1P分片
  • 10.8 采用UDP的路径MTU发现
  • 10.9 1P分片和ARP/ND之间的交互
  • 10.10 最大UDP数据报长度
  • 10.11 UDP服务器的设计
  • 10.12 UDP/lPv4和UDP/lPv6数据报的转换
  • 10.13 互联网中的UDP
  • 10.14 与UDP和IP分片相关的攻击
  • 10.15 总结
  • 第11章 名称解析和域名系统
  • 11.1引言
  • 11.2 DNS名称空间
  • 11.3 名称服务器和区域
  • 11.4 缓存
  • 11.5 DNS协议
  • 11.6 排序列表、循环和分离DNs
  • 11.7 开放DNS服务器和DynDNs
  • 11.8 透明度和扩展性
  • 11.9 从IPv4向IPv6转换DNS
  • 11.10 LLMNR和mDNS
  • 11.11 LDAP
  • 11.12 与DNs相关的攻击
  • 11.13 总结
  • 第12章 TCP:传输控制协议(初步)
  • 12.1引言
  • 12.2 TcP的引入
  • 12.3 TcP头部和封装
  • 12.4 总结
  • 第13章 TCP连接管理
  • 13.1引言
  • 13.2 TcP连接的建立与终止
  • 13.3 TcP选项
  • 13.4 TcP的路径最大传输单元发现
  • 13.5 TcP状态转换
  • 13.6 重置报文段
  • 13.7 TcP服务器选项
  • 13.8 与TcP连接管理相关的攻击
  • 13.9 总结
  • 第14章 TCP超时与重传
  • 14.1引言
  • 14.2 简单的超时与重传举例
  • 14.3 设置重传超时
  • 14.4 基于计时器的重传
  • 14.5 快速重传
  • 14.6 带选择确认的重传
  • 14.7 伪超时与重传
  • 14.8 包失序与包重复
  • 14.9 目的度量
  • 14.10 重新组包
  • 14.11与TcP重传相关的攻击
  • 14.12 总结
  • 第15章 TCP数据流与窗日管理
  • 15.1 引言
  • 15.2 交互式通信
  • 15.3 延时确认
  • 15.4 Nagle算法
  • 15.5 流量控制与窗口管理
  • 15.6 紧急机制
  • 15.7 与窗口管理相关的攻击
  • 15.8 总结
  • 第16章 TCP拥塞控制
  • 16.1引言
  • 16.2 一些经典算法
  • 16.3 对标准算法的改进
  • 16.4 伪RTO处理-Eifel晌应算法
  • 16.5 扩展举例
  • 16.6 共享拥塞状态信息
  • 16.7 TcP友好性
  • 16.8 高速环境下的TcP
  • 16.9 基于延迟的拥塞控制算法
  • 16.10 缓冲区膨胀
  • 16.11积极队列管理和EcN
  • 16.12 与TcP拥塞控制相关的攻击
  • 16.13 总结
  • 第17章 TcP保括机制
  • 17.1 引言
  • 17.2 描述
  • 17.3 与TcP保活机制相关的攻击
  • 17.4 总结
  • 第18章 安全:可扩展身份认证协议、 IP安全协议、传输层安全、 DNS安全、域名密钥识别邮件
  • 18.1引言
  • 18.2 信息安全的基本原则
  • 18.3 网络通信的威胁
  • 18.4 基础的加密与安全机制
  • 18.5 证书、证书颁发机构与公钥基础设施
  • 18.6 TcP/lP安全协议与分层
  • 18.7 网络访问控制: 802.1x, 802.1AE, EAP, PANA
  • 18.8 第3层IP安全(lPsec)
  • 18.9 传输层安全(TLS和DTLS)
  • 18.10 DNS安全(DNssEc)
  • 18.11域名密钥识别邮件
  • 18.12 与安全协议相关的攻击
  • 18.13 总结

实习能力评定

LV0 无能力者

这是所有没有接触过软件开发的同学的默认状态。
表示没有用任何编程语言写过代码,没有使用过编译器。
对于数据结构等计算机基础知识没有概念。
  • 接触过软件开发
  • 使用过任意的编程语言写过代码
  • 使用过编译器
  • 对计算机基础知识有概念

LV1 低能力者

  • 至少掌握一门编程语言,C/C++/Java 必须掌握一门。(【掌握】在这里的意思是,知道基本的函数调用的概念、如何将源代码编译运行起来,可以写出来一个数组的读入、排序、按照格式输出的程序。)
  • 会基本的 Python/Bash 脚本编程。(这里【会】的意思是给了一段脚本之后,能够自己通过Google或书本完全弄懂脚本的意思。)
  • 具备基本 Office 软件操作能力;能够在组内进行技术报告。(新实习生每周三的周例会上会要求进行报告。)
  • 可以在mentor指导下完成函数级别的功能的开发,能够自己阅读代码,理解局部代码逻辑。
  • 有能力在指导下完成项目的测试、实验数据的收集和清洗、文档报告的撰写等内容。
  • 能够按照要求及时与metor及同事沟通,做好工作的文字记录,总结问题与经验。
  • 有 Linux 的使用经验。(这里是指使用命令行的经验。常用的 grep find date sed tr head 等都需要熟悉。)
  • grep
  • find
  • date
  • sed
  • tr
  • head
  • 要求会使用基本 git 和 GitHub/gitlab。(这里【基本】是指 clone commit push branch merge,GitHub操作是指发起 PR/MR,更新PR/MR,跟多个 remote 进行同步。)
  • 编译器方向的实习生,要求具备C++入门级开发能力,学过《编译原理》,或者看过吴伟老师的《编译技术入门与实战》课程,参考链接:https://www.bilibili.com/video/av78503049
  • P1第01课:课程的介绍
  • P2第02课:词法分析
  • P3第03课:编程起步
  • P4第04课:语法分析(1)
  • P5第05课:习题课(1)-词法分析-虎书
  • P6第06课:习题课(2)-词法分析-编译器设计
  • P7第07课:习题课(3)-语法分析-虎书-by李威威
  • P8第08课:习题课(4)-语法分析-编译器设计-by陈嘉炜
  • P9第09课:语法制导翻译
  • P10第10课:复习课1(总集篇)
  • P11第11课:COMP412的L17和L18胶片复习
  • P12第12课:COMP412的L19-L21SDT 复习
  • P13补充阅读-A1-方舟编译器的开源进程-史宁宁
  • P14补充阅读-A2-方舟编译器的架构-史宁宁
  • P15补充阅读-A3-方舟编译器的应用场景-史宁宁
  • P16补充阅读-A4-方舟编译器Toy Runtime的编译-史宁宁

LV2 异能力者

  • 在LV1基础上,对于数据结构、算法导论、计算机组成原理/微机原理/计算机体系结构、现代数据库原理等课程有比较系统的了解,学习过,能够快速的复习和掌握。
  • 数据结构
  • 算法导论
  • 计算机组成原理/微机原理/计算机体系结构
  • 现代数据库原理
  • 对编译原理、计算机网络、现代操作系统三门课程的知识,要有比较好的理解和记忆。
  • 编译原理
  • 计算机网络
  • 现代操作系统
  • 能够熟练使用 Linux 命令行工具,包括 find、grep、sed 等,熟练使用不同小工具的参数和组合完成日常的任务。
  • 可用 pwd命令查看用户的当前目录可用
  • cd 命令来切换目录.表示当前目录
  • ..表示当前目录的上一级目录(父目录)
  • -表示用 cd 命令切换目录前所在的目录
  • ~ 表示用户主目录的绝对路径名
  • 绝对路径:以斜线(/)开头 ,描述到文件位置的完整说明 ,任何时候你想指定文件名的时候都可以使用
  • 相对路径 :不以斜线(/)开头 ,指定相对于你的当前工作目录而言的位置 ,可以被用作指定文件名的简捷方式
  • ls:显示文件或目录信息
  • mkdir:当前目录下创建一个空目录
  • rmdir:要求目录为空
  • touch:生成一个空文件或更改文件的时间
  • cp:复制文件或目录
  • mv:移动文件或目录、文件或目录改名
  • rm:删除文件或目录ln:建立链接文件
  • find:查找文件
  • file/stat:查看文件类型或文件属性信息
  • cat:查看文本文件内容
  • more:可以分页看
  • less:不仅可以分页,还可以方便地搜索,回翻等操作
  • tail -10: 查看文件的尾部的10行
  • head -20:查看文件的头部20行
  • echo:把内容重定向到指定的文件中 ,有则打开,无则创建
  • 管道命令 | :将前面的结果给后面的命令,例如:ls -la | wc,将ls的结果加油wc命令来统计字数
  • 重定向 > 是覆盖模式,>> 是追加模式,例如:echo "Java3y,zhen de hen xihuan ni" > qingshu.txt把左边的输出放到右边的文件里去
  • grep: 强大的文本搜索工具
  • sed : 可依照脚本的指令来处理、编辑文本文件
  • 能够熟练使用 git,并且具备良好的小组 git 开发的技能(不是要求经验,是要求技能,仔细学习过 Pro Git 或类似的书)。
  • 能够使用 C/C++/Java 中的一种语言完成开发任务,在 mentor 指导下进行一周以内的代码开发和测试;
  • 能够使用 Python/Bash/JS 中的某种语言熟练完成数据处理的任务。
  • 能够自己进行软件调试,调试自己的代码。
  • 会使用 gdb 。
  • 知道并使用过 make、cmake 等构建脚本工具,会看懂和修改 Makefile,能够搞定简单的 CMake 配置问题。
  • 编译器方向的实习生要求能够熟练的阅读C++代码,能够看懂 Makefile。

LV3 强能力者

  • 在LV2基础上,能够独立承担一周以上长度的代码开发工作。
  • 能够独立的分析遇到的bug或crash,具备较强的测试、调试、分析查错的能力。(这是LV3的准入门槛)
  • 能够快速理解任务内涵并在mentor少量辅助下找到解决方法,完成任务;
  • 熟练使用一门以上编程语言,一般是 C/C++/Java + Python/Ruby/Bash;例如C++要求熟练C++11及以上。
  • Rust
  • C++
  • C
  • Python
  • Java
  • 熟练使用bash/python脚本语言;
  • bash
  • python
  • 熟练阅读英文技术资料。
  • 能够熟练的进行公开的技术报告。

LV4 大能力者

  • 在LV3基础上,能够独立承担模块级别开发类工作,能够快速学习新领域知识;
  • 对于LLVM等大型软件系统,能够独立地完成调试、分析查错,找到问题根源并修复,确保开发任务的按时推进。
  • 能够指导LV3以下伙伴,辅助伙伴完成开发任务;
  • 能够独立做技术报告和分享。
  • 能够察觉和指出LV4及其以上的错误、知识的盲区,并且纠正出现的错误。
  • 能够根据需要,独立的从0到1的为团队开辟一个新的知识领域,通过调研报告、技术分享、扩展开发等途径撑起一个细分的技术方向。

Git pro book 阅读进展

当完成一下所有事项的时候,可以给 #1 中Lv2中该项打勾:

  • 能够熟练使用 git,并且具备良好的小组 git 开发的技能(不是要求经验,是要求技能,仔细学习过 Pro Git 或类似的书)。
  • 1. 起步
  • 1.1 关于版本控制
  • 1.2 Git 简史
  • 1.3 Git 是什么?
  • 1.4 命令行
  • 1.5 安装 Git
  • 1.6 初次运行 Git 前的配置
  • 1.7 获取帮助
  • 1.8 总结
  • 2. Git 基础
  • 2.1 获取 Git 仓库
  • 2.2 记录每次更新到仓库
  • 2.3 查看提交历史
  • 2.4 撤消操作
  • 2.5 远程仓库的使用
  • 2.6 打标签
  • 2.7 Git 别名
  • 2.8 总结
  • 3. Git 分支
  • 3.1 分支简介
  • 3.2 分支的新建与合并
  • 3.3 分支管理
  • 3.4 分支开发工作流
  • 3.5 远程分支
  • 3.6 变基
  • 3.7 总结
  • 4. 服务器上的 Git
  • 4.1 协议
  • 4.2 在服务器上搭建 Git
  • 4.3 生成 SSH 公钥
  • 4.4 配置服务器
  • 4.5 Git 守护进程
  • 4.6 Smart HTTP
  • 4.7 GitWeb
  • 4.8 GitLab
  • 4.9 第三方托管的选择
  • 4.10 总结
  • 5. 分布式 Git
  • 5.1 分布式工作流程
  • 5.2 向一个项目贡献
  • 5.3 维护项目
  • 5.4 总结
  • 6. GitHub
  • 6.1 账户的创建和配置
  • 6.2 对项目做出贡献
  • 6.3 维护项目
  • 6.4 管理组织
  • 6.5 脚本 GitHub
  • 6.6 总结
  • 7. Git 工具
  • 7.1 选择修订版本
  • 7.2 交互式暂存
  • 7.3 贮藏与清理
  • 7.4 签署工作
  • 7.5 搜索
  • 7.6 重写历史
  • 7.7 重置揭密
  • 7.8 高级合并
  • 7.9 Rerere
  • 7.10 使用 Git 调试
  • 7.11 子模块
  • 7.12 打包
  • 7.13 替换
  • 7.14 凭证存储
  • 7.15 总结
  • 8. 自定义 Git
  • 8.1 配置 Git
  • 8.2 Git 属性
  • 8.3 Git 钩子
  • 8.4 使用强制策略的一个例子
  • 8.5 总结
  • 9. Git 与其他系统
  • 9.1 作为客户端的 Git
  • 9.2 迁移到 Git
  • 9.3 总结
  • 10. Git 内部原理
  • 10.1 底层命令与上层命令
  • 10.2 Git 对象
  • 10.3 Git 引用
  • 10.4 包文件
  • 10.5 引用规范
  • 10.6 传输协议
  • 10.7 维护与数据恢复
  • 10.8 环境变量
  • 10.9 总结

《编译技术入门与实战》课程学习进展

吴伟老师的《编译技术入门与实战》课程,参考链接:https://www.bilibili.com/video/av78503049

  • P1第01课:课程的介绍
  • P2第02课:词法分析
  • P3第03课:编程起步
  • P4第04课:语法分析(1)
  • P5第05课:习题课(1)-词法分析-虎书
  • P6第06课:习题课(2)-词法分析-编译器设计
  • P7第07课:习题课(3)-语法分析-虎书-by李威威
  • P8第08课:习题课(4)-语法分析-编译器设计-by陈嘉炜
  • P9第09课:语法制导翻译
  • P10第10课:复习课1(总集篇)
  • P11第11课:COMP412的L17和L18胶片复习
  • P12第12课:COMP412的L19-L21SDT 复习
  • P13补充阅读-A1-方舟编译器的开源进程-史宁宁
  • P14补充阅读-A2-方舟编译器的架构-史宁宁
  • P15补充阅读-A3-方舟编译器的应用场景-史宁宁
  • P16补充阅读-A4-方舟编译器Toy Runtime的编译-史宁宁

完成课程之后更新 #1 中该部分的能力值

Real-Time Rendering 4th 学习进展

对这个很感兴趣,但是目前还没有开始

  • 1 Introduction 22
  • 1.1 Contents Overview 24
  • 1.2 Notation and De nitions 26
  • 2 The Graphics Rendering Pipeline 32
  • 2.1 Architecture 33
  • 2.2 The Application Stage 34
  • 2.3 Geometry Processing 35
  • 2.4 Rasterization 42
  • 2.5 Pixel Processing 43
  • 2.6 Through the Pipeline 46
  • 3 The Graphics Processing Unit 50
  • 3.1 Data-Parallel Architectures 51
  • 3.2 GPU Pipeline Overview 55
  • 3.3 The Programmable Shader Stage 56
  • 3.4 The Evolution of Programmable Shading and APIs 58
  • 3.5 The Vertex Shader 63
  • 3.6 The Tessellation Stage 65
  • 3.7 The Geometry Shader 68
  • 3.8 The Pixel Shader 70
  • 3.9 The Merging Stage 74
  • 3.10 The Compute Shader 75
  • 4 Transforms 78
  • 4.1 Basic Transforms 79
  • 4.2 Special Matrix Transforms and Operations 91
  • 4.3 Quaternions 97
  • 4.4 Vertex Blending 105
  • 4.5 Morphing 108
  • 4.6 Geometry Cache Playback 113
  • 4.7 Projections 113
  • 5 Shading Basics 124
  • 5.1 Shading Models 124
  • 5.2 Light Sources 127
  • 5.3 Implementing Shading Models 138
  • 5.4 Aliasing and Antialiasing 151
  • 5.5 Transparency, Alpha, and Compositing 169
  • 5.6 Display Encoding 181
  • 6 Texturing 188
  • 6.1 The Texturing Pipeline 190
  • 6.2 Image Texturing 197
  • 6.3 Procedural Texturing 219
  • 6.4 Texture Animation 221
  • 6.5 Material Mapping 222
  • 6.6 Alpha Mapping 223
  • 6.7 Bump Mapping 229
  • 6.8 Parallax Mapping 235
  • 6.9 Textured Lights 242
  • 7 Shadows 244
  • 7.1 Planar Shadows 246
  • 7.2 Shadows on Curved Surfaces 250
  • 7.3 Shadow Volumes 251
  • 7.4 Shadow Maps 255
  • 7.5 Percentage-Closer Filtering 268
  • 7.6 Percentage-Closer Soft Shadows 271
  • 7.7 Filtered Shadow Maps 273
  • 7.8 Volumetric Shadow Techniques 278
  • 7.9 Irregular Z-Bu er Shadows 280
  • 7.10 Other Applications 283
  • 8 Light and Color 288
  • 8.1 Light Quantities 288
  • 8.2 Scene to Screen 302
  • 9 Physically Based Shading 314
  • 9.1 Physics of Light 314
  • 9.2 The Camera 328
  • 9.3 The BRDF 329
  • 9.4 Illumination 336
  • 9.5 Fresnel Reectance 337
  • 9.6 Microgeometry 348
  • 9.7 Microfacet Theory 352
  • 9.8 BRDF Models for Surface Reection 357
  • 9.9 BRDF Models for Subsurface Scattering 368
  • 9.10 BRDF Models for Cloth 377
  • 9.11 Wave Optics BRDF Models 380
  • 9.12 Layered Materials 384
  • 9.13 Blending and Filtering Materials 386
  • 10 Local Illumination 396
  • 10.1 Area Light Sources 398
  • 10.2 Environment Lighting 412
  • 10.3 Spherical and Hemispherical Functions 413
  • 10.4 Environment Mapping 425
  • 10.5 Specular Image-Based Lighting 435
  • 10.6 Irradiance Environment Mapping 445
  • 10.7 Sources of Error 454
  • 11 Global Illumination 458
  • 11.1 The Rendering Equation 458
  • 11.2 General Global Illumination 462
  • 11.3 Ambient Occlusion 467
  • 11.4 Directional Occlusion 486
  • 11.5 Di use Global Illumination 493
  • 11.6 Specular Global Illumination 518
  • 11.7 Uni ed Approaches 530
  • 12 Image-Space E ects 534
  • 12.1 Image Processing 534
  • 12.2 Reprojection Techniques 543
  • 12.3 Lens Flare and Bloom 545
  • 12.4 Depth of Field 548
  • 12.5 Motion Blur 557
  • 13 Beyond Polygons 566
  • 13.1 The Rendering Spectrum 566
  • 13.2 Fixed-View E ects 567
  • 13.3 Skyboxes 568
  • 13.4 Light Field Rendering 570
  • 13.5 Sprites and Layers 571
  • 13.6 Billboarding 572
  • 13.7 Displacement Techniques 585
  • 13.8 Particle Systems 588
  • 13.9 Point Rendering 593
  • 13.10 Voxels 599
  • 14 Volumetric and Translucency Rendering 610
  • 14.1 Light Scattering Theory 610
  • 14.2 Specialized Volumetric Rendering 621
  • 14.3 General Volumetric Rendering 626
  • 14.4 Sky Rendering 634
  • 14.5 Translucent Surfaces 644
  • 14.6 Subsurface Scattering 653
  • 14.7 Hair and Fur 661
  • 14.8 Uni ed Approaches 669
  • 15 Non-Photorealistic Rendering 672
  • 15.1 Toon Shading 673
  • 15.2 Outline Rendering 675
  • 15.3 Stroke Surface Stylization 690
  • 15.4 Lines 694
  • 15.5 Text Rendering 696
  • 16 Polygonal Techniques 702
  • 16.1 Sources of Three-Dimensional Data 703
  • 16.2 Tessellation and Triangulation 704
  • 16.3 Consolidation 711
  • 16.4 Triangle Fans, Strips, and Meshes 717
  • 16.5 Simpli cation 727
  • 16.6 Compression and Precision 733
  • 17 Curves and Curved Surfaces 738
  • 17.1 Parametric Curves 739
  • 17.2 Parametric Curved Surfaces 755
  • 17.3 Implicit Surfaces 770
  • 17.4 Subdivision Curves 774
  • 17.5 Subdivision Surfaces 777
  • 17.6 E cient Tessellation 788
  • 18 Pipeline Optimization 804
  • 18.1 Pro ling and Debugging Tools 805
  • 18.2 Locating the Bottleneck 807
  • 18.3 Performance Measurements 809
  • 18.4 Optimization 811
  • 18.5 Multiprocessing 826
  • 19 Acceleration Algorithms 838
  • 19.1 Spatial Data Structures 839
  • 19.2 Culling Techniques 851
  • 19.3 Backface Culling 852
  • 19.4 View Frustum Culling 856
  • 19.5 Portal Culling 858
  • 19.6 Detail and Small Triangle Culling 860
  • 19.7 Occlusion Culling 861
  • 19.8 Culling Systems 871
  • 19.9 Level of Detail 873
  • 19.10 Rendering Large Scenes 887
  • 20 E cient Shading 902
  • 20.1 Deferred Shading 904
  • 20.2 Decal Rendering 909
  • 20.3 Tiled Shading 913
  • 20.4 Clustered Shading 919
  • 20.5 Deferred Texturing 926
  • 20.6 Object- and Texture-Space Shading 929
  • 21 Virtual and Augmented Reality 936
  • 21.1 Equipment and Systems Overview 937
  • 21.2 Physical Elements 940
  • 21.3 APIs and Hardware 945
  • 21.4 Rendering Techniques 953
  • 22 Intersection Test Methods 962
  • 22.1 GPU-Accelerated Picking 963
  • 22.2 De nitions and Tools 964
  • 22.3 Bounding Volume Creation 969
  • 22.4 Geometric Probability 974
  • 22.5 Rules of Thumb 975
  • 22.6 Ray/Sphere Intersection 976
  • 22.7 Ray/Box Intersection 980
  • 22.8 Ray/Triangle Intersection 983
  • 22.9 Ray/Polygon Intersection 987
  • 22.10 Plane/Box Intersection 991
  • 22.11 Triangle/Triangle Intersection 993
  • 22.12 Triangle/Box Intersection 995
  • 22.13 Bounding-Volume/Bounding-Volume Intersection 997
  • 22.14 View Frustum Intersection 1002
  • 22.15 Line/Line Intersection 1008
  • 22.16 Intersection between Three Planes 1011
  • 23 Graphics Hardware 1014
  • 23.1 Rasterization 1014
  • 23.2 Massive Compute and Scheduling 1023
  • 23.3 Latency and Occupancy 1025
  • 23.4 Memory Architecture and Buses 1027
  • 23.5 Caching and Compression 1028
  • 23.6 Color Bu ering 1030
  • 23.7 Depth Culling, Testing, and Bu ering 1035
  • 23.8 Texturing 1038
  • 23.9 Architecture 1040
  • 23.10 Case Studies 1045
  • 23.11 Ray Tracing Architectures 1060
  • 24 The Future 1062
  • 24.1 Everything Else 1063
  • 24.2 You 1067

后几章是光线追踪的,等之后再来补上目录。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.