计算机图形学----SDF介绍

图形学基础|基于SDF的卡通阴影图 图形学基础|基于SDF的卡通阴影图 文章目录图形学基础|基于SDF的卡通阴影图一、前言二、SDF(Signed Distance Field)三、阴影图生成3.1 SDF生成3.2 插值参考博文 一、前言 回顾之前做的卡通渲染,角色面部阴影是靠一张阴影贴图实现的。 为了更好地控制角色的脸部阴影,通过计算脸部朝向与光照方向的夹角和一张单色的FaceMap来判断。 FaceMap的每个像素表示:该像素判断为阴影时候需要达到的夹角。 例如: 当方向光正对角色的时候,夹角为0°,对应的值为0,此时,FaceMap 阅读详情
AI摘要

本文介绍了 Signed Distance Field (SDF) 的概念,强调其在光线追踪中的高效性和在表示移动边界及软阴影方面的应用。通过计算每个点到物体表面的距离,SDF展示了如何通过近似反三角函数处理场景中的阴影变化。课程作者闫令琪老师的讲解深入浅出,适合图形学爱好者和开发者理解。

SDF介绍

1.SDF很快
2.SDF需要大量的存储
在这里插入图片描述
在这里插入图片描述
SDF的前提是,我们需要计算出来一个点(shading point),计算该点到某个物体表面的最近距离。如果(shading point)在物体内部,那么这个距离为负值。
在这里插入图片描述
一个运动的边界:
以下图一图二图三为上半部分的黑白图
1.图一是一个移动物体,黑色是物理,边界线为分界
2.图二物体的边界如图所示
3.图三和图二做线性插值
使用SDF表示,并返回黑白图,就可以表示阴影在移动。后面的理论是"最优传输"。
在这里插入图片描述
可以适用的场景
在这里插入图片描述
在光线追踪中使用,光线和任意表面求交。
在这里插入图片描述
用SDF生成软阴影
在这里插入图片描述
1.对于光路上的每一个位置,我们总能画出一个圆
2.计算出安全角度
3.最终计算出阴影偏黑还是偏白
在这里插入图片描述
这种场景需要计算反三角函数:
用以下公式近似
在这里插入图片描述
某一个场景的Distance Field:
在这里插入图片描述
截图和公式来源闫令琪老师games202课程
感谢闫令琪老师为我们带来这么精彩的图形学课程
https://www.bilibili.com/video/BV1YK4y1T7yY?p=4&spm_id_from=pageDriver

后仿中的SDF简介及应用 在实际的数字电路设计中,掌握SDF文件的产生和内容含义、SDF反标的方法和原理对于确保设计质量和时序正确性非常重要。 阅读详情

相关推荐

后仿真中《SDF反标必懂连载篇》之 SDF 文件由来

STA产生SDF的过程中,可以把异步接口部分的时序检查禁止掉(通过放松检查时间),比如2-DFF的同步逻辑中的第一级DFF的setup和hold检查。连线的延迟信息不多说,单元的延迟通常是根据单元时序库(timing library)中定义的timing arc,从电路图形中间接提取计算出来的,而这些timing arc,要和仿真模型中(specify block)定义的io path要一一对应,在反标过程中才能标注成功。所以用电路的真实时序信息标注的过程,其实是一个覆盖默认时序信息的过程,所以也叫反标。

那么菜的博客 3345

一张图搞定SDF的概念

本文仅代表个人理解,谬误之处请指正。 SDF: Signed Distance Field,译为有向距离场,“有向”、“距离”、“场”这三个词非常精确的描述了sdf究竟是个什么东西。GPU Gems 3中是这么描述sdf的:“SDF是由到(多边形模型)物体表面最近距离的采样网格。作为惯例,使用负值来表示物体内部,使用正值表示物体外部。SDF理念对于图形图像及相关领域具有

痞子龙3D编程 3万+

STM32H723ZGT6-单ADC极限采样率实战与分辨率权衡

本文通过实战测试,深入探讨了STM32H723ZGT6微控制器中单ADC模块的极限性能。文章详细展示了如何通过CubeMX配置时钟树、ADC参数、定时器触发与DMA,实测得出在16位分辨率下最高稳定采样率约为4.6MHz,而将分辨率降至8位后,采样率可提升至约6.2MHz,并分析了速度与分辨率之间的关键权衡,为高速数据采集项目提供选型与优化参考。

weixin_29240711的博客 297

有向距离场(SDF)在Shader中的简单应用

SDF, 全称Signed Distance Filed,就是有符号的距离区域 看下简单的例子,一个圆型区域 那么我们定义一个距离场函数: float sdfCircle(vec2 tex, vec2 center, float dis) { return -length(vec2(tex - center)) + dis; } 传入的参数分别是:当前像素点坐标, 圆心坐标,半径,函数的返回值是一个有正负的浮点数,通俗点说就是在园内的区域返回的是一个正值,大小是离原边界的距离;而在圆外面的区域

qq_41841073的博客 3833

手把手推导APM的 sqrt_controller控制器

前言 玩过无人机的朋友对APM应该都不会陌生,如果是搞过多旋翼飞控且读过代码,肯定遇到过sqrt_controller控制器,它频繁的在位置、姿态控制中出现,所以非常有必要搞清楚这个控制原理。 下面以高度控制器为例来分析。 高度控制 APM的高度控制采用PID串级3环控制,即外环位置控制,中间速度控制,内环速度控制,如下图所示。 今天要讨论的sqrt_controller就是应用于位置控制器中。位置控制器的输出是速度控制器的参考reference输入,如果采用单P控制,其输出vel_ref = pos_e

周小逗的博客 3029

SAP CO-PA获利分析避坑指南:从数据采集到报表设计的5个关键步骤

本文深入解析了SAP CO-PA获利分析模块从数据采集到报表设计的完整流程。文章重点剖析了数据源头、特征派生、获利段设计等关键步骤,并对比了基于账户与基于成本核算两种模式的差异,特别强调了在S/4HANA时代的选择与常见陷阱,旨在帮助企业构建可靠、可执行的盈利分析体系。

flink9streamer的博客 826

SDF 项目使用教程

SDF 项目使用教程 1、项目介绍 SDF(Signed Distance Field)项目是一个开源的计算机图形学工具,主要用于生成和操作 Signed Distance Fields(SDF)。SDF 是一种用于表示几何形状的数据结构,广泛应用于光线追踪、碰撞检测、体积渲染等领域。该项目提供了高效的算法和工具,帮助开发者快速生成和处理 SDF。 2、项目快速启动 环境准备 在开始之前,请确保您...

gitblog_00998的博客 818

用WorkBuddy和ima搭建本地知识库:从概念到实操

在AI应用普及的今天,私有知识的高效管理与调用成为痛点。RAG(检索增强生成)技术通过将外部知识库与语言模型耦合,为精准问答提供了技术底座。然而,传统RAG方案往往涉及向量数据库、文本切分等复杂环节。一种更轻量的路径应运而生:借助WorkBuddy与ima的组合,将知识收集、语义检索与智能体工作流整合,让本地知识库真正服务于日常办公和研发场景。从概念到实操,系统解析这套轻量级方案的核心逻辑与配置方法,并对比重方案适用边界,帮助读者快速搭建属于自己的AI知识助手。

weixin_32830601的博客 419

探索三角网格到有符号距离函数(SDF)的强大工具

探索三角网格到有符号距离函数(SDF)的强大工具 项目介绍 在计算机图形学和几何处理领域,三角网格(Triangle Mesh)是一种常见的表示三维物体的方法。然而,直接处理三角网格在某些应用中可能会显得复杂且低效。为了解决这一问题,我们推出了一个强大的开源项目——Triangle mesh to signed-distance function (SDF)。这个项目能够将三角网格转换为有符号距离...

gitblog_00288的博客 820

Workbench下列车转向架随机振动疲劳分析

结果中添加功率谱响应工具(Response PSD Tool),可以查看几何体以及远程点上的功率谱密度,如下图11所示,这里查看几何体上某一硬点的加速度功率谱密度响应曲线,如下图12所示。结果中添加疲劳工具(Fatigue Tool),查看列车转向架的疲劳寿命情况,这里采用窄带的寿命假设理论,曝光时间为1s指明计算出的疲劳寿命的基本单位是秒,寿命结果如下图14所示,可以看到最大寿命为1e35s,最小寿命为2.3542e18s,注意单位制,可再次基础上将其转换为小时或天。频域上的统计计算,软件很快计算完成。

ansysxuexizhe的博客 2603

加速度积分得到速度的Omega算法

在工程中,有时候很难直接测量机械设备部件的速度或位移,特别是在运动着的设备上。即使在一般的场景下可以布置速度传感器,但是有时候需要同时监测速度和加速度,为了节约成本,往往通过将加速度信号直接进行积分得到速度信号。 将加速度信号积分得到速度信号有两种方法,一是直接在时域进行积分,这往往会产生趋势项,积分的结果需要进行去趋势处理。二是在频域进行积分,典型的频域积分算法是omega算法,这里做一下简单的介绍: 如果我们已经获得了加速度信号x''(t) , 其傅里叶变...

D344896224的博客 1万+

关于SDF & deform & nicp

SDF优化: https://github.com/chyacinth/sdf2sdf http://campar.in.tum.de/pub/slavcheva2016eccv/slavcheva2016eccv.pdf https://github.com/wangxihao/MeshSDFilter https://github.com/wangxihao/MeshReconstruction nicp https://github.com/RhythmJnh/Non-rigid-ICP

sinat_19868271的博客 406

智能车竞赛疯狂电路组:Altium Designer赛道设计与计分策略全解析

本文全面解析智能车竞赛疯狂电路组中,如何利用Altium Designer进行专业赛道设计。从软件基础操作、图层管理与封装库调用,到赛道拓扑绘制、核心尺寸规范,详细拆解设计全流程。文章深入结合计分策略,指导如何在设计阶段植入策略点,优化路径与元器件布局,以在比赛中获得时间优势,并提供了从图纸输出到实地测试的完整避坑指南。

beta5的博客 585

基于SDF的全局光照方法

光照计算在基于SDF的全局光照方法中扮演着至关重要的角色。通过有效地计算光线传播路径和表面法线,能够实现高效且真实的光照效果。这种方法不仅提高了渲染效率,还增强了场景的视觉质量,为实时渲染和计算机图形学的发展提供了新的可能性。阴影和反射的计算在基于SDF的全局光照方法中至关重要。通过高效的光线追踪技术,能够实现真实的阴影效果和复杂的反射效果。这不仅提升了场景的视觉质量,还增强了用户的沉浸感,为实时渲染和计算机图形学的发展提供了强有力的支持。间接光照的计算在基于SDF的全局光照方法中起着至关重要的作用。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 1271

液滴碰撞壁面的过程背景论文——bouncing反弹,spreading扩展,splashing飞溅。铺展过程介绍。还存在很多未解之谜。

【1993-德国-Phenomena of liquid drop impact on solid and liquid surfaces】液滴碰撞壁面的过程背景——bouncing反弹,spreading扩展,splashing飞溅。还存在很多未解之谜。还存在很多未解之谜。不同液滴形状碰撞过程。

qq_15963745的博客 199

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

如何使用mesh_to_sdf:从安装到生成第一个SDF的完整指南

mesh_to_sdf是一款强大的Python工具,能够为任意3D网格模型计算有符号距离场(SDF),广泛应用于计算机图形学、3D建模和深度学习领域。本指南将帮助您快速掌握从安装到生成第一个SDF的全过程,即使是零基础也能轻松上手! ## 快速安装mesh_to_sdf的两种方法 ### 使用pip一键安装(推荐) 最简单的安装方式是通过Python包管理器pip: ```bash pip i

gitblog_00197的博客 796

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

SDF法线计算

https://www.iquilezles.org/www/articles/normalsSDF/normalsSDF.htm vec3 calcNormal( in vec3 pos ) { vec2 e = vec2(1.0,-1.0)0.57730.0005; return normalize( e.xyymap( pos + e.xyy ).x + e.yyxmap( pos + e.yyx ).x + e.yxymap( pos + e.yxy ).x + e.xxxmap( pos + e.

qq_39908137的博客 814

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

SDF项目完全解析:如何快速掌握射线步进技术与距离函数

SDF(Signed Distance Field,有向距离场)是计算机图形学中一种强大的几何表示方法,通过计算空间中任意点到物体表面的最短距离(带符号)来描述三维形状。GitHub加速计划中的SDF项目([gh_mirrors/sdf/SDF](https://link.gitcode.com/i/e80fe988a0b89e5696ebd8f33afbf338))汇集了关于SDF的学术论文、教

gitblog_00870的博客 1080

sdf布尔运算终极教程:并集、差集、交集的完整实现方案

在3D建模和计算机图形学领域,**SDF布尔运算**是创建复杂几何形状的核心技术。通过Python sdf库,您可以轻松实现**并集、差集、交集**等布尔操作,构建出令人惊叹的三维模型。本文将为您提供完整的sdf布尔运算实现方案,让您快速掌握这一强大的建模工具。 ## 什么是SDF布尔运算?🎯 SDF(Signed Distance Function,有符号距离函数)是一种表示3D形状的数学

gitblog_00447的博客 461

现代计算机图形学Games101入门笔记(九)

p点向右移动一个单位距离,那它会向上移动多少(梯度),根据相邻两点(p,p+1)求度差,再根据c是材质受高度贴图影响大不大是个系数,相乘得到切线。法线垂直切线,切线向量是(1,dp) 那法线就是切线逆时针旋转90度,那坐标变成(-dp,1)。可以试着转一下(dp变成x坐标,变成-x,1变成y轴方向,朝上,还是正的)。每个方向上点运动的切线都是上面一维运动过程,那dp点拆成在u方向计算和v方向分别计算,得到切线,再求法线。从函数上直接是很难看出形状的,但判断点在不在表面上,很简单,带入公式就可以判断。

qq_30065669的博客 279

1、片元着色器之有向距离场(SDF)

有向距离场(Signed Distance Field, SDF)是一种在计算机图形学中常用的概念,用于描述空间中某一点到某个形状表面距离的有符号距离。SDF 被广泛应用在实时渲染、碰撞检测、形状表示等场景中。最典型的例子:判断一个点是否在圆内:点到圆心的距离和半径的差是否为负值,负值说明在圆内,反之则在圆上或圆外。1、什么是有向距离场?

weixin_41364246的博客 900

PBR渲染,阿库娅的计算机图形学实践(阶段性总结)

从4.12上手到5.1日为止,大约三周的时间,进行一个阶段性总结,作为复习,也顺便瞻前顾后一下。(当然,只有暂时记得住的东西)

Kaliaailia的博客 649

【数学】距离函数(未完)

无符号距离函数(Unsigned Distance Function)是计算物体表面距离的一种数学函数。它通常用于计算机图形学中的体素渲染、几何形状重建和碰撞检测等应用。图1是一些常见无符号距离场的原理示意图。不够精确,只能用来确定大致的区域。的零等值面,该距离场对法向很敏感。: 表示向量的转置。

原来也有北瓜 1874

GAMES101现代计算机图形学入门——几何表示之基本表示方法

GAMES101现代计算机图形学入门课程个人笔记,对应原视频中10到11节内容 在涵盖了课程内容基础上,在个人能力范围之内进行部分了拓展,包含作业的代码及实现思路

qq_59153970的博客 1193

计算机图形学九:几何1—隐式曲面(代数形式,CSG, 距离函数,分型几何)与显式曲面

隐式曲面与显式曲面 1 隐式曲面(Implicit Surface)与显示曲面(Explicit Surface)的特点 1.1 隐式曲面的特点 1.2 显式曲面的特点 2 具体的几种隐式曲面 2.1 代数曲面(Algebraic Surfaces) 2.2 Constructive Solid Geometry(CSG) 2.3 符号距离函数(Signed Distance Function) 2.4 水平集(Level Set) 2.5 分型几何(Fra...

byliut的博客 1378

计算机图形学:几何表示

不直接描述物体表面上的每一个点,而是定义一个函数,让满足特定条件的空间点构成物体表面。以三维空间中的球体为例。假设一个球体的球心位于原点,半径为 (r),那么它的表面可以用以下方程描述:这个方程并没有直接列出球面上有哪些点,而是规定了球面上所有点必须满足的条件。例如,当 (r=1) 时:x²+y²+z²=1所有满足该方程的三维空间点连在一起,就构成了一个单位球的表面。

2401_88966792的博客 258
上一篇: 计算机图形学----阴影2---VSSM
下一篇: 计算机图形学----环境光照1
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值