avatar
文章
132
标签
554
分类
37

首页
时间轴
标签
目录
友情链接
推荐工具
站长工具
Zhangzqs
搜索
首页
时间轴
标签
目录
友情链接
推荐工具
站长工具
GAMES101笔记-动画(物理模拟)
发表于2025-10-07|GAMES101课程笔记
单质点模拟 首先,提出先聚焦于单个粒子的运动,之后再将研究推广到大量粒子的情况。 为开展研究,假设粒子的运动由速度矢量场决定。该速度矢量场是位置xxx和时间ttt的函数,记为v(x,t)v(x,t)v(x,t)。 右侧的图示直观呈现了速度矢量场(由箭头表示)以及粒子在该速度场中运动的轨迹。 常微分方程 Ordinary Differential Equation (ODE) 计算速度场内粒子的位置需要计算一阶常微分方程 dxdt=x˙=v(x,t)\frac{dx}{dt} = \dot{x} = v(x, t) dtdx​=x˙=v(x,t) 欧拉方法 Euler’s Method 欧拉方法,又称为前向欧拉,显式欧拉,是数值积分中最简单的方法之一。 使用很简单的迭代的方式 很常见 很不准 结果通常不稳定 始终使用前一段的量估计下一帧的量。 xt+Δt=xt+Δt⋅x˙tx˙t+Δt=x˙t+Δt⋅x¨tx^{t+\Delta t} = x^t + \Delta t \cdot \dot{x}^t \\ \dot{x}^{t+\Delta t} = \dot{x}^t + ...
GAMES101笔记-动画(Animation)
发表于2025-10-05|GAMES101课程笔记
动画是一种信息传递的工具 美学经常比技术重要 是模型的延伸 → 连续性 将场景模型表示为时间的函数 输出一系列图像,当顺序查看时提供运动的感觉 帧率 电影:24FPS 视频:30FPS、29.994FPS VR:90FPS (不晕的基础要求) 关键帧动画 动画师创建关键帧 助手(人工或程序)创建中间帧 其中的关键技术即为插值技术 线性插值: 通常可能不太满足动画需求 样条插值: 更平滑的插值方式 Catmull-Rom 样条 B 样条 Bezier 曲线 物理仿真动画 模拟、仿真:推导、实现公式,模拟出物体应该怎么变化 例子:布料模拟、流体模拟 质点弹簧系统 Mass-Spring System 一个弹簧左右连接两个质点,位置是a,b\mathbf a, \mathbf ba,b,弹簧劲度系数为kSk_SkS​。 当弹簧拉伸时候,弹簧会对两个质点施加一个拉力: 质点a\mathbf aa受到的往b\mathbf bb方向的拉力为: fa→b=kS(b−a)\mathbf f_{a \rightarrow b} = k_S ( \mathbf ...
GAMES101笔记-光线追踪(辐射度量学)
发表于2025-08-11|GAMES101课程笔记
背景 Radiometry(辐射度量学)是研究光的物理量的学科,主要关注光的能量和强度等方面。它与光线追踪密切相关,因为光线追踪需要模拟光的传播和交互。 它定义了光在空间中的各种物理量,根据这些物理量用正确的物理方式来计算光照。 Radiant energy 辐射能 Radiant energy 是电磁辐射的能力,单位是焦耳(J)。通常使用符号 $ Q [J = Joule]$ 来表示。 Radiant flux/power 辐射通量 Radiant flux 是单位时间内能量发射,反射,传播,接收的能量量。单位是瓦特(W)。通常使用符号 $ \Phi = \frac{dQ}{dt}[W = Watt = J/s]$ 来表示。对于光而言,通常使用 lumen(流明)来表示。 Angle & Solid Angles 角与立体角 Angle 角 角度:弧长和半径的比值。 θ=lr\theta = \frac{l}{r}θ=rl​ 整个圆的角度是2π2\pi2π。 Solid Angle 立体角 立体角:是角度在三维空间中的推广。它是一个球面上某个区域的面积与球半 ...
GAMES101笔记-几何(Geometry)
发表于2025-08-10|GAMES101课程笔记
表达几何的方式有很多种,基本可以分为两大类: 隐式表示 Algebraic Surface 代数曲面 Level Set 水平集 Distance Function 距离函数 Signed Distance Function(SDF): 有符号距离函数 Unsigned Distance Function(UDF): 无符号距离函数 … 显式表示 Point Cloud 点云 Polygon Mesh 多边形网格 subdivision, NURBS … 几何的表示方式 几何的隐式表示 隐式不会告诉具体的点在哪,只描述点满足什么约束关系,如对于一个球的隐式表示如下: x2+y2+z2=r2x^2 + y^2 + z^2 = r^2 x2+y2+z2=r2 更通用的表述方式为满足f(x,y,z)=0f(x, y, z) = 0f(x,y,z)=0的点集,就可以描述一个隐式的几何表示。 隐式表示的缺点是不直观并不知道有哪些点,优点是很轻易可以判断一个点是否在几何上,几何内还是几何外。 基于代数方法的隐式表示 使用代数方程来描述几何体 CSG(Const ...
GAMES101笔记-着色(Shading)
发表于2025-08-09|GAMES101课程笔记
图形学中 Sharding 的概念值对一个物体应用不同的材质的过程。 光照 Lighting Blinn-Phong 反射模型(BPR) Blinn-Phong 反射模型是对光线与物体表面交互的一个经验模型。 它将光线与物体表面的交互分为三个部分: 环境光:物体表面在没有直接光照的情况下的颜色 漫反射:物体表面在直接光照下的颜色,取决于光源的颜色和物体表面的颜色 高光反射:物体表面在直接光照下的高光部分,取决于光源的颜色、物体表面的颜色和观察者的视角 计算光线从一个着色点反射到相机中中的颜色: 输入变量定义如下: vvv: 观察者的视角的单位向量 lll: 表示光源的方向的单位向量 nnn: 物体表面着色点的单位法向量 表面材质(颜色,反光程度,…) 漫反射 一根光线从光源发出,照射到着色点后,会沿四周反射,即为漫反射。 Lambert’s Cosine Law 描述了漫反射的强度与光线入射角的关系。 当光线垂直入射时,物体表面几乎可以接收到全部的光线能量。 当光线倾斜入射时,物体表面接收到的光线能量会减少。 当光线平行于物体表面时,物体表面几乎无法接收到光线能 ...
GAMES101笔记-光栅化
发表于2025-08-09|GAMES101课程笔记
光栅化是把标准化立方体渲染到屏幕上的过程 屏幕的定义: 一段像素数组 像素的数组长度就是分辨率的尺寸 屏幕是一个典型的光栅成像设备 像素的定义: Pixel 是 Picture Element 的缩写 一个简单的假设是每个像素认为是一个拥有单一颜色的小正方形(当然还有更复杂的假设放在后面讨论) 每个像素的颜色可以用 RGB 三个分量来表示 屏幕空间的定义(这里和虎书中的定义有所差别): 屏幕空间是一个二维坐标系,原点在左下角,x 轴向右,y 轴向上 每个像素的索引由(x, y)唯一表示,x, y 均为整数 像素索引的范围是 [0,width−1]×[0,height−1][0, width-1] \times [0, height-1][0,width−1]×[0,height−1] 像素的中心点坐标为 (x+0.5,y+0.5)(x + 0.5, y + 0.5)(x+0.5,y+0.5) 屏幕空间的坐标范围是 [0,width]×[0,height][0, width] \times [0, height][0,width]×[0,height] Viewport ...
基于 rust-vmm 玩转虚拟化
发表于2025-06-19|虚拟化
前言 虚拟化技术发展了 20 多年,QEMU 作为标杆项目积累了数百万行 C 代码 —— 功能极致丰富,但代码体积、攻击面、内存安全 CVE 数量都让它在 Serverless、机密计算等新场景下显得「过重」。 在 QEMU 之外,三个轻量级 VMM 几乎同时崛起:AWS 的 Firecracker、Cloud Hypervisor、Google 的 crosvm。它们都用 Rust 写、都跑在 KVM 上、都瞄准「启动更快、内存更小、代码更精简」—— 但一个尴尬的事实是:这三个 VMM 把同一份基础代码独立写了三遍。KVM ioctl 封装、Guest 内存管理、virtqueue 实现、内核加载、事件循环 …… 每个项目都从零造了一遍轮子。每一行重复代码,都是一个潜在的内存漏洞入口。 2019 年由 Intel、Google、AWS、阿里云等多家厂商联合发起的 rust-vmm 项目,正是为了终结这种局面。它不是一款完整的 VMM,而是一套高度解耦、可按需组装的 Rust 虚拟化基础组件库 —— 把上述「重复造的轮子」沉淀为标准化、独立发布的 crate,让每个 VMM 项目专注 ...
椭圆周长公式推导
发表于2025-04-22|数学
参考资料 本文是针对视频 https://www.bilibili.com/video/BV1ZF411f7Xv 整理的笔记 推导 椭圆的参数方程: {x=acos⁡θy=bsin⁡θ\begin{cases} x = a \cos \theta \\ y = b \sin \theta \end{cases} {x=acosθy=bsinθ​ 对参数方程求微分: {dx=−asin⁡θdθdy=bcos⁡θdθ\begin{cases} dx = -a \sin \theta d\theta \\ dy = b \cos \theta d\theta \end{cases} {dx=−asinθdθdy=bcosθdθ​ 则周长可以表示为: C=∫02πdx2+dy2=∫02π(−asin⁡θ)2+(bcos⁡θ)2dθ=∫02πa2(1−cos2θ)+b2cos2θdθ=∫02πa2−(a2−b2)cos2θdθ=a∫02π1−a2−b2a2cos2θdθ=4a∫0π21−a2−b2a2cos2θdθ\begin{aligned} C &= \int_0^{2\pi} ...
Leetcode-2145-统计隐藏数组数目
发表于2025-04-21|数据结构与算法Leetcode
题目 给你一个下标从 0 开始且长度为 n 的整数数组 differences ,它表示一个长度为 n + 1 的 隐藏 数组 相邻 元素之间的 差值 。更正式的表述为:我们将隐藏数组记作 hidden ,那么 differences[i] = hidden[i + 1] - hidden[i] 。 同时给你两个整数 lower 和 upper ,它们表示隐藏数组中所有数字的值都在 闭 区间 [lower, upper] 之间。 比方说,differences = [1, -3, 4] ,lower = 1 ,upper = 6 ,那么隐藏数组是一个长度为 4 且所有值都在 1 和 6 (包含两者)之间的数组。 [3, 4, 1, 5] 和 [4, 5, 2, 6] 都是符合要求的隐藏数组。 [5, 6, 3, 7] 不符合要求,因为它包含大于 6 的元素。 [1, 2, 3, 4] 不符合要求,因为相邻元素的差值不符合给定数据。 请你返回 符合 要求的隐藏数组的数目。如果没有符合要求的隐藏数组,请返回 0 。 分析 由于满足要求的数组长度为n+1,故可以设满足要求的数组为 a ...
Hyper-V嵌套虚拟化运行PVE折腾
发表于2025-04-19|虚拟化
参考资料 微软官方文档说明的已经很详细了,包括其中网络部分的设置 https://learn.microsoft.com/zh-cn/virtualization/hyper-v-on-windows/user-guide/enable-nested-virtualization#networking-options 环境准备 先在Windows可选功能中将Hyper-V管理平台勾选上,重启电脑后确保可以正常使用Hyper-V创建虚拟机。 创建一个Hyper-V虚拟机,准备安装PVE,我这里虚拟机起名为pve 开启嵌套虚拟化 以管理员身份开启一个PowerShell 12345678910111213# 获取当前所有虚拟机Get-VM# 查看虚拟机处理器相关信息Get-VMProcessor -VMName pve | fl# 可以看到 ExposeVirtualizationExtensions: False# 开启嵌套虚拟化Set-VMProcessor -ExposeVirtualizationExtensions $true -VMName pve# 确认是否成功开启Ge ...
1234…14
avatar
Zhangzqs
一个分享与记录的个人空间
文章
132
标签
554
分类
37
Follow Me
最新文章
10. VIVO-Y927 GPT 分区表调整2026-07-04
2. VIVO-Y927 lk1st 的移植2026-06-28
基于 rust-vmm 玩转虚拟化2026-06-19
9. VIVO-Y927 Linux 内核设备树完善(电池和充电)2026-06-15
8. VIVO-Y927 Linux 内核设备树完善(WiFi-蓝牙)2026-06-14
分类
  • AI1
  • Android7
  • GAMES101课程笔记11
  • Git1
  • Golang6
  • Java框架2
  • Python1
  • ROS机器人1
标签
LL(1)文法 half-pipe JDK动态代理 二维凸包 Python求解 数据加载 矩阵运算 buffer cache 瀑布模式开发 能量守恒 分布式部署 SmachViewer 流体模拟 透视投影矩阵 Snowboard Course 测试驱动开发 弹性弦振动 性能优化 数据读写 离散对数问题 VMware ESXi WebAssembly V模型 反走样 凯撒密码 Diffie-Hellman密钥交换算法 MapReduce 常微分方程求解 GPT 几何表示 插件化设计 隐式表示 ROS 嵌套虚拟化 纯律 Python代码 积分推导 自守形式 软件测试 词频统计
归档
  • 七月 20261
  • 六月 202610
  • 二月 20262
  • 一月 20261
  • 十二月 20251
  • 十一月 20252
  • 十月 20255
  • 八月 20254
网站资讯
文章数目 :
132
已运行时间 :
本站总字数 :
246k
本站访客数 :
本站总访问量 :
最后更新时间 :
©2020 - 2026 By Zhangzqs
框架 Hexo|主题 Butterfly
搜索
数据库加载中