Games101-几何(基本表示方法)

news2024/12/25 13:13:04

几何分类

在这里插入图片描述
几何分类:隐式几何和显示几何
在这里插入图片描述
隐式几何:不会告诉空间中的点具体在哪,告诉这些点满足的一定关系。
如球的描述 x 2 + y 2 + z 2 = 1 x^2 + y^2 + z^2 = 1 x2+y2+z2=1
在这里插入图片描述
缺点:这个面都有哪些点是不容易看出来的,从上述的式子里很难看出是个圆环的结构。
在这里插入图片描述
优点:容易判断点在不在面上. 等于0在表面上,小于0在物体内,大于0在物体外
在这里插入图片描述
显式几何:直接给出点的位置,如之前模型上直接给出三角形的点。另一种是通过参数映射的方法定义表面。
如上图定义了一个空间uv,上面任何一个点都用坐标(u,v)表示,并且这个点都会映射对应到空间中的某一点。
则可以定义一个函数,输入的是u,v,输出的是x,y,z。
把所有的(u,v)找一遍,可以找到对应的所有的(x,y,z)。
在这里插入图片描述
优点:显示形状很容易
在这里插入图片描述
缺点:不容易判断点与表面的关系
在这里插入图片描述

More Implicit Representations in Computer Graphics

在这里插入图片描述
更多得隐式几何表现方法
在这里插入图片描述
直接用数学公式表示,最大得问题是不直观
在这里插入图片描述
CSG:通过一系列基本几何的基本运算,来定义新的几何。通过简单的几何来形成复杂的几何
在这里插入图片描述
距离函数:空间中的任意一个点,到你想要表述的几何形体上面任一点,他们直接的最小距离,正负都可以。如果点在几何形体的外面,则距离为正,如果点在物体内部,则距离为负。
如上图,两个球在相互接近时,形状发生了变换。把两个不同物体的,他们两者的距离函数都算出来之后,把两个距离函数做一个blending,融合。再恢复成原来的物体
在这里插入图片描述
应用距离函数的例子。输入和输出是两张不同的图,认为他们是一个表示某种几何的边界。有一个物体挡住了视口的1/3,另外一个物体经过了一些移动之后,挡住了2/3。希望求出物体从左到右移动的一个中间状态。
我们期望的结果是blend的新图,左边一半是黑的,右边一半是白,因为是运动信息的中间态。但现在结果是左边1/3是黑的,中间1/3是灰的,右边1/3是白的
则需要先求出距离函数。物体的边界(SDF(A)中间那条黑线)我们认为就是物体的表面(A图中黑色运动物体的边界),则靠近这个边界的点的值是比较小大,远离这个边界的值是比较大的。对于B同理。把这两张图进行blend操作,得到的边界(0)在正中,再通过SDF恢复成原本的形状。
通过blend两个对应的SDF,等于blend物体的边界
在这里插入图片描述
分别把两个物体对应的距离函数求出来,即空间中任意一个点他们对应的距离函数,然后blend起来。再恢复成原本的面。即SDF值是0的时候,就是物体的面所在的地方
在这里插入图片描述
距离函数应用的例子
在这里插入图片描述

距离函数恢复成物体的表面,取所有距离等于0的点就是物体的表面。
对于一些特点的情况。距离函数不太好写成某一种解析的式子 f(x) 的形式,只要距离函数能通过某种方法表述起来就行。
如上图,水平集方法:函数的表述是写在一个格子上的,函数在不同的地方有不同的值,水平集是在一个格子上的不同位置写好他的值是多少。只需要找到在中间某些值是0的地方,就可以提取函数所试图描述的表面。
类似地理上的等高线。
可以通过双线性插值解出等于0的位置
在这里插入图片描述
水平集可以定义在3维空间上的格子。
则如果有一3维纹理,表示人体的不同位置的密度。
如何从3维的信息提取出物体的表面:可以让密度的函数 f(x) 等于某个密度,如5.0,找到所有这样满足这个密度的位置,则可以找到一个表面
在这里插入图片描述
水花和水花结合在一块,也可以通过距离函数,水平集来描述。把水滴和水滴blend在一块,再提出融合到一块之后的表面
在这里插入图片描述
分形:自相似的意思,自己的一个部分和整体长的非常像。类似递归。
如雪花
在这里插入图片描述
优点:

  1. 隐式的函数通常表述起来都很容易。正常情况下都不是明确地把表面上的点写出来,存储比较容易
  2. 可以查询在表面的里外。
  3. 容易做光线求交
  4. 能严格的描述物体的弧度,适合描述拓扑结构等

缺点:

  1. 难以描述复杂的模型形状

Explicit Representations in Computer Graphics

在这里插入图片描述
三角形面,贝塞尔曲面,点云。。。
在这里插入图片描述
点云:不考虑物体是一个表面,而是表面上的一堆点,把每个点都表示成一个点。只要点够细,就看不到点与点之间的缝隙,就可以看到一个表面的概念
即一个(x,y,z)的列表
通常人们做一个三维空间的扫描,得到的输出就是点云
点云经常在之后会处理成多边形的面
在这里插入图片描述
多边形面:四边形或三角形
要注意的是连接关系
在这里插入图片描述
特定的文件格式:.obj,文本文件,存储的是空间中的一个物体。
把空间中的一堆点,一堆法线和一堆纹理坐标分开来表示,然后再一块组织起来
一个立方体:8个点v,6个法线vn(输出的时有冗余,29,30是同一法线),12个纹理坐标vt。
face定义连接关系(v,vt, vn),即三角形面

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1574317.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[Apple Vision Pro]开源项目 Beautiful Things App Template

1. 技术框架概述: - Beautiful Things App Template是一个为visionOS设计的免费开源软件(FOSS),用于展示3D模型画廊。 2. 定位: - 该模板作为Beautiful Things网站的延伸,旨在为Apple Vision Pro用户…

从300亿分子中筛出6款,结构新且易合成,斯坦福抗生素设计AI模型登Nature子刊

ChatGPT狂飙160天,世界已经不是之前的样子。 新建了免费的人工智能中文站https://ai.weoknow.com 新建了收费的人工智能中文站https://ai.hzytsoft.cn/ 更多资源欢迎关注 全球每年有近 500 万人死于抗生素耐药性,因此迫切需要新的方法来对抗耐药菌株。 …

最具有影响力的三个视觉平台 | 3D高斯、场景重建、三维点云、工业3D视觉、SLAM、三维重建、自动驾驶

大家好,我是小柠檬 这里给大家推荐三个国内具有影响力的3D视觉方向平台! 原文:最具有影响力的三个视觉平台 | 3D高斯、场景重建、三维点云、工业3D视觉、SLAM、三维重建、自动驾驶

青风环境带您了解2024第13届生物发酵展

参展企业介绍 浙江青风环境股份有限公司创立于1998年,是一家集科研、生产及贸易为一体的高新技术企业。公司座落于浙江省丽水市水阁工业区,占地面积120亩,建筑面积近11万平方米,年产值可达20亿元,建有标准的冷&#x…

【JAVASE】带你了解instanceof和equals的魅力

✅作者简介:大家好,我是橘橙黄又青,一个想要与大家共同进步的男人😉😉 🍎个人主页:再无B~U~G-CSDN博客 1.instanceof instanceof 是 Java 的保留关键字。它的作用是测试…

编译原理实验3(基于算符优先文法分析的语法分析器 )

实验目的 加深对语法分析器工作过程的理解;加强对算符优先分析实现语法分析程序的掌握;能够产用一种编程语言实现简单的语法分析程序;能够使用自己编写的分析程序对简单的程序段进行语法分析。 实验要求 根据简单表达式文法构造算符优先分…

Retrofit2 完全解析 探索与okhttp之间的关系

//用于访问zhy的信息 http://192.168.1.102:8080/springmvc_users/user/zhy //用于访问lmj的信息 http://192.168.1.102:8080/springmvc_users/user/lmj 即通过不同的username访问不同用户的信息,返回数据为json字符串。 那么可以通过retrofit提供的PATH注解非…

自动驾驶汽车关键技术_感知

自动驾驶汽车关键技术|感知 附赠自动驾驶学习资料和量产经验:链接 两套标准 分别由美国交通部下属的国家高速路安全管理局(NationalHighwayTraffic Safety Administration ,NHSTA) 和国际汽车工程师协会(Societyof Automotive Engineers&am…

Linux grep和find命令常用类型

1. grep命令的使用。 查找文件中符合条件的字符串或正则表达式,然后将含有范本样式的那一列显示出来。若不指定任何文件名称,或是给的文件名为-,则gerp命令会从标准输入设备读取数据。 用于测试的文件目录结构如下: 1.1 在单个文…

软考中级之软件设计师---知识点汇总总结

软考中级之软件设计师---知识点汇总总结 软考介绍资格设置证书样本 计算机组成原理操作系统1. 进程的三态模型2. 磁盘调度算法 计算机网络1. 网络的分类2. 各层的互连设备3. 网络模型,协议簇4. 传输层协议TCP、UDP4.1 TCP (Transmission Control Protocol,传输控制协…

高压防触电警示牌是什么

在现代社会中,电力已成为人们生活中不可或缺的能源之一。随着电力行业发展,电力设施也不断增多,电力安全成为人们关注的一个重要话题。电力事故可能导致人员伤亡、财产损失甚至社会安全问题。因此,为了提醒人们注意远离带电设备&a…

vue前端项目到后端执行逻辑——自己改的话要怎么改

文章目录 vue前端项目到后端流程——自己改的话要怎么改 vue前端项目到后端流程——自己改的话要怎么改

07 Python进阶:多线程

python线程概念 在 Python 中,线程(Thread)是用于实现多任务并发执行的基本单元。线程允许程序同时执行多个部分,每个部分称为一个线程,因此能够提高程序的效率,特别适用于需要同时执行多个任务的情况。下面…

docker-compose安装dozzle

dozzle是一个docker日志的webui工具 安装配置 docker-compose.yaml version: "3" services:dozzle:container_name: dozzleimage: amir20/dozzle:v4.11.4volumes:- /var/run/docker.sock:/var/run/docker.sockrestart: unless-stoppedports:- 20342:8080networks:cu…

HarmonyOS4.0 ArkUI常用组件

一、Image 语法: Image(src:string|PixelMap|Resource)使用方式: string格式:用来加载网络图片,需要在module.json5中申请网络访问权限:ohos.permission.INTERNET Image("http://xxx.png")PixelMap格式&am…

Windows11安装MySql-8.0.36安装详细教程(保姆级教程)

之前一直用的mysql5.7,最近导入一个项目一直报错,经查阅发现数据库mysql版本太老,今天特地重头下载安装配置一下,做个记录供大家参考。 下载安装包: 下载地址:https://dev.mysql.com/downloads/ 进入后选…

如何在WHM面板上创建cPanel账户

本周有一个客户,购买Hostease的独立服务器并选择了WHM控制面板,询问我们的在线客服,如何在WHM面板上创建cPanel账户。我们为用户提供教程,用户很快完成了设置。在此,我们分享这个操作教程,希望可以对您有帮…

使用Springboot配置生产者、消费者RabbitMQ?

生产者服务 1、引入依赖以及配置rabbitmq 此时我们通过使用springboot来快速搭建一个生产者服务 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId> </dependency> applica…

智慧数字乡村解决方案大全:标准规范顶层设计指南、供应商整体解决方案及售前PPT、数字乡村标准白皮书等全套460份,一次性打包下载

关键词&#xff1a;数字乡村解决方案&#xff0c;数字乡村标准白皮书&#xff0c;数字乡村建设成功案例&#xff0c;数字乡村发展行动计划&#xff0c;数字乡村建设方案&#xff0c;数字乡村云平台&#xff0c;数字乡村建设指南&#xff0c;智慧乡村建设解决方案&#xff0c;智…

【游戏分析】非游戏领空追字符串来源

通过NPC名称找NPC数组 扫描 NPC名字 ASIC型 发现全部都有后缀 那么采用 字节集的方式去扫描 也是扫不到 说明:不是ASIC型字符串 扫描 NPC名字 Unicode型 没有结果 那么转换成字节集去扫描 终于发现结果了 把结果挨个修改字符串 发现 其中两个是可以用的 22和23 …