当前位置: 首页 > news >正文

games101学习:Lecture 10 Geometry 1(introduction)

games101学习:Lecture 10 Geometry 1(introduction)

插值 就是在已知的,离散的数据点之间“平滑地,合理的推断出中间未知点的值”,“根据已知点,猜出中间点”

纹理的应用:环境光照,球的表面的反射 。
在现代的gpu里面,纹理 = 一段内存 + 内存上的区域的范围查询(滤波)
有一块区域可以做点查询和范围查询,且可以做的非常快。

可以用纹理描述环境光长什么样。把环境光的信息储存在球面上。像展开地球仪一样展开世界地图。
image

这就是Spherical Environment Map 球面环境映射,又称 Sphere Mapping,采用单张贴图表示整个环境。可以把环境光储存在球面上,并且把他展开。

但是最上面和最下面会出现扭曲问题。
image

此时出现了Cube Map,我们假设有一个立方体把这个球包住了。会得到六张图,但是缺点就是需要计算方向。
image
image

纹理也可影响高度(凹凸),相对高度一变,法线就会变,法线发生变化,shading就会发生变换,就会发生明暗变换。
image
凹凸贴图实际上并没有改变建模的复杂度,只是改变了纹理,导致人视觉错误。

Bump Mapping
讲一下法线贴图到底做了什么事情,可以去随意改变纹理,但不去改变任何的几何信息。把任何一个像素的法线做一个“扰动”,通过定义不同位置的高度临近位置的高度差来计算法线。
纹理定义的是任意的一个点相对高度的移动。可以通过高度的变化来改变法线。
image
(黑色的是几何物体表面,黄色的是法线的凹凸贴图)
image

如何计算凹凸贴图在任何的一个点的梯度(or函数导数)法线 (二维)
image
原本表面的法线是(0,1)
现在 先求切线c * [h(p+1) - h(p)](这个c是某个常数,用来表示凹凸贴图影响到底大不大)
再求法线,法线和切线是具有垂直关系的,把切线逆时针旋转90度就得到法线。
步骤:凹凸贴图先求切线在球法线image

现在到了三维的范畴, 就多了u,v两个方向
image

凹凸贴图在边缘和阴影其实会露馅,而位移贴图不会。
位移贴图:和凹凸贴图使用完全相同的纹理,真的会移动三角形的顶点
image

image

Geometry
Implicit隐示
Explicit显示
Implicit隐示:不会说具体在哪,不给实际的点 ,但会满足某种特定关系。
image

Implicit有一定好处,也有一定坏处,哪些点满足f(x,y,z)=0?这个问题回答起来比较困难。
image
image

通过参数映射来进行显示的几何表示。
image
显示表示方法判断点在函数内or函数外会比较困难。

没有最好的表述方法,显示和隐示都有各自的好坏地方。

集合表示

数学表面(隐示)
image

CSG表示方法
组合隐示集合表示通过Boolean操作。
image

定义一个距离函数来表示几何。不直接去描述他的表面,去描述任何一个点到这个表面的最近距离。blending融合
image

New lecture 11 Geometry 2 (Curves and surface)

Explicit Representations in Computer Graphics
Point Cloud点云(Explicit)最简单显示
不考虑物体是一个表面,而是表面上的一堆点都表示为一个点。(有点像沙画)
点云会定义每个点的法线方向。

Curves (定义曲线)

贝赛尔曲线
要求只经过起止点,
![image](https://img2024.cnblogs.com/blog/3426739/202512/3426739-20251221005324109-1574270909.image
(听不懂)
image
大概这样子疯狂的迭代找 贝赛尔 曲线。
image

image
b01 b11展开能得到下面的式子。

(n+1)个点可以获得n阶贝赛尔曲线。
image

贝赛尔曲线的性质

什么是防射变换,简单来说就是线性变换,平移。

可以直接对不同的顶点作仿射变换,再对变换之后的顶点作一条贝赛尔曲线,这个贝赛尔曲线一定和原始控制点作出的贝赛尔曲线作仿射变换得出的贝赛尔曲线一定一模一样。。

http://www.rkmt.cn/news/131583.html

相关文章:

  • 为什么头部公司都在悄悄测试Open-AutoGLM?年报自动化背后的竞争密码
  • 大模型时代:Agentic AI在NLP提示工程中的应用实践
  • 8.logging日志模块
  • 【AI驱动销售革命】:Open-AutoGLM如何实现线索筛选效率提升10倍
  • 2024年最值得掌握的AI办公技能:基于Open-AutoGLM的智能年报生成全流程
  • PHP POP 链构造(上):原理与机制
  • 表级同步延迟高达30分钟?,Open-AutoGLM性能优化全攻略
  • 大数据领域数据合规的重要性及实现策略
  • 【AI赋能办公新范式】:用Open-AutoGLM构建零延迟邮件响应体系
  • Open-AutoGLM客户数据归档避坑指南(资深IT专家亲授3大核心原则)
  • Open-AutoGLM记录同步难题:5大常见故障与一键修复方案
  • 为什么90%的企业都在用Open-AutoGLM做客户信息归档?真相曝光
  • 20+岁男生程序员,想听听35岁程序员的建议
  • 近视防控效果不理想,问题可能出在了这里……
  • Obsidian:自制插件一键导出MD文件到博客园发布流程
  • 范式转移与价值裂变:软件行业投资三十年深度解析
  • 基于LSTM神经网络实现锂电池SOH估计的案例学习(附数据集处理代码与特征提取)
  • 【深客松】知识图谱技术栈
  • 2025最新银行业务库/四类业务库/四类库/银行四类库/银行四类业务库公司首选推荐昆明锦霈科技有限公司:守护金融安全,实力出众 - 全局中转站
  • Jmeter学习
  • Atcoder 437 总结+E-F题解
  • 研究生必备6款免费AI论文生成器:1天搞定综述+真实文献引用
  • Open-AutoGLM参会指南:如何最大化获取AI大模型最新实战经验
  • 图论专题(二十三):并查集的“数据清洗”——解决艰难的「账户合并」
  • 还在手动约会?Open-AutoGLM自动预约功能让效率提升8倍
  • 敏捷第21讲:测试前置策略——别等App开发完了才开始找Bug,让测试人员提前进场
  • UE:缓存路径修改
  • Flink2.1.1-Kafka写入Elasticsearch7
  • django基于Python的京东教辅图书销售数据分析系统的设计与实现演示录像2023_2q236-vue爬虫可视化
  • django基于数据挖掘的微博事件分析与可视化系统的设计与实现演示录像2023_u9nmf-vue