登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
导读
排行榜
资讯
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
小组
VIP申请
VIP网盘
网盘
联系我们
发帖说明
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
1
2
/ 2 页
下一页
返回列表
首页
›
业界区
›
科技
›
有向距离场SDF,在游戏中如何实现agent导航以及绕障 ...
有向距离场SDF,在游戏中如何实现agent导航以及绕障
[ 复制链接 ]
崔竹
2025-9-11 11:45:55
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
有向距离场(Signed Distance Field, SDF)为智能体(agent)实现避障和绕行提供了一种高效且强大的方法。其核心思想在于,SDF 不仅仅是检测碰撞,而是提供了一个关于环境中障碍物远近和方向的连续信息,从而可以引导智能体平滑地绕过障碍物。
什么是有向距离场 (SDF)?
有向距离场是一个在空间中每个点都存储了到最近物体表面的距离的场。 它的关键特性在于“有向”二字,这个“向”是通过距离值的正负号来体现的:
正值
: 表示该点位于物体外部。
负值
: 表示该点位于物体内部。
零值
: 表示该点正好位于物体表面上。
通过这种方式,SDF 将环境中的几何信息编码成一个连续的标量场。智能体只需查询自身所在位置的SDF值,就能立刻知道自己离最近的障碍物有多远,以及是否在障碍物内部。
利用SDF实现避障
SDF 实现避障的核心原理非常直观:
智能体需要始终保持在SDF值为正的区域内活动
。当智能体靠近障碍物时,其所在位置的SDF值会减小。通过监控这个值的变化,可以非常容易地实现碰撞检测和预防。
具体实现方式通常有以下几种:
简单的安全距离判断
: 可以在路径规划中设置一个安全阈值,要求智能体规划的路径上所有点的SDF值都必须大于这个阈值。这样可以确保智能体与障碍物之间始终保持一个最小的安全距离。
基于距离的排斥力
: 可以将SDF值转化为一个作用在智能体上的“排斥力”。当SDF值越小(越接近障碍物),排斥力就越大,从而将智能体推离障碍物。
利用SDF实现绕行
SDF 更强大的功能在于引导智能体进行平滑的绕行,而不仅仅是简单的避开。这主要是通过利用SDF的
梯度
来实现的。SDF的梯度是一个向量,它指向SDF值增长最快的方向,也就是
垂直于最近物体表面并指向远离该表面的方向
。
基于梯度的绕行算法
:
计算梯度
: 在智能体当前位置,计算SDF的梯度。这个梯度向量就是“最安全”的移动方向,因为它直接指向远离障碍物的方向。
规划路径/生成速度
: 智能体的导航算法可以将这个梯度信息融合进去。例如,可以将目标点的方向向量与SDF的梯度向量进行加权平均,从而生成一个既朝向目标点又远离障碍物的合力方向。
梯度下降/上升
: 智能体可以沿着SDF的负梯度方向移动,以最快的速度远离障碍物,这在需要紧急避障时非常有用。 相反,在路径规划中,可以通过在SDF场中进行类似梯度上升的搜索,来寻找远离障碍物的路径点。
总结:SDF在避障和绕行中的实现步骤
一个典型的利用SDF进行避障和绕行的智能体导航流程如下:
离线构建SDF
: 在任务开始前,对已知的静态环境进行处理,为整个场景或其关键区域生成一个SDF体素网格或SDF函数。
实时感知与更新 (可选)
: 对于动态变化的环境,可以通过传感器(如LiDAR)实时感知周围环境,并动态地更新局部或全局的SDF。
路径规划与导航
:
智能体在进行全局路径规划时(如使用A
或RRT
算法),可以将SDF值作为代价函数的一部分。离障碍物太近的节点会有更高的代价值,从而使规划出的路径天然地远离障碍物。
在局部路径规划或实时运动控制中,智能体在每个时间步查询当前位置的SDF值及其梯度。
如果SDF值小于预设的安全阈值,则激活避障逻辑。
避障逻辑会根据SDF的梯度计算出一个“逃逸速度”或调整力,与朝向目标的驱动力结合,共同决定智能体下一步的运动方向和速度。
通过这种方式,SDF为智能体提供了一种连续、平滑且计算高效的避障和绕行解决方案,广泛应用于机器人导航、无人机飞行和游戏中角色的自动寻路等领域。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
有向
离场
SDF
戏中
如何
相关帖子
详细解析Spring如何解决循环依赖问题
详细解析Spring如何解决循环依赖问题
C# 面试高频题:装箱和拆箱是如何影响性能的?
Redis持久化:从AOF到RDB,如何实现数据不丢失?
高性能制动系统如何赋能B端业务:解析RF RACER的新能源集成方案
实时行情系统的第一道槛:如何应对数据源的“限流”与“断流”
实时行情系统的第一道槛:如何应对数据源的“限流”与“断流”
如何使用 UEFI Shell 执行 Hello World 程序
如何使用 UEFI Shell 执行 Hello World 程序
如何使用 UEFI Shell 执行 Hello World 程序
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
业界
详细解析Spring如何解决循环依赖问题
0
187
崔瑜然
2026-03-27
业界
详细解析Spring如何解决循环依赖问题
0
776
旌磅箱
2026-03-27
业界
C# 面试高频题:装箱和拆箱是如何影响性能的?
0
414
旱由
2026-03-27
业界
Redis持久化:从AOF到RDB,如何实现数据不丢失?
0
350
泥地锚
2026-03-31
安全
高性能制动系统如何赋能B端业务:解析RF RACER的新能源集成方案
0
675
谲脾
2026-03-31
业界
实时行情系统的第一道槛:如何应对数据源的“限流”与“断流”
0
733
浅皮懔
2026-04-01
业界
实时行情系统的第一道槛:如何应对数据源的“限流”与“断流”
0
689
人弧
2026-04-01
业界
如何使用 UEFI Shell 执行 Hello World 程序
0
674
剽达崖
2026-04-01
业界
如何使用 UEFI Shell 执行 Hello World 程序
0
981
沦嘻亟
2026-04-01
业界
如何使用 UEFI Shell 执行 Hello World 程序
0
928
东门芳洲
2026-04-01
回复
(31)
彭水晶
2025-11-2 02:30:11
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
yyds。多谢分享
痕伯
2025-11-5 06:04:14
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
热心回复!
僭墙覆
2025-12-11 17:04:42
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
谢谢分享,辛苦了
赙浦
2025-12-19 14:32:26
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢楼主提供!
猷浮
2026-1-1 21:05:26
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
新版吗?好像是停更了吧。
章绮云
2026-1-14 02:47:03
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
感谢分享
唐嘉懿
2026-1-17 10:48:52
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
鼓励转贴优秀软件安全工具和文档!
米榜饴
2026-1-18 16:51:10
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
热心回复!
苗嘉惠
2026-1-18 20:36:18
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
yyds。多谢分享
史华乐
2026-1-20 07:57:45
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
喜欢鼓捣这些软件,现在用得少,谢谢分享!
饨篦
2026-1-20 18:05:02
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
过来提前占个楼
老僻贞
2026-1-25 08:02:14
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
谢谢分享,辛苦了
肿圬后
2026-1-25 09:09:17
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢楼主提供!
莘度
2026-1-25 11:22:38
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
热心回复!
焦和玉
2026-1-26 07:39:22
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
感谢分享,学习下。
铵滔
2026-1-29 02:07:54
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
收藏一下 不知道什么时候能用到
狞嗅
2026-2-5 03:46:53
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
过来提前占个楼
艾曼语
2026-2-7 03:11:50
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
很好很强大 我过来先占个楼 待编辑
赙浦
2026-2-8 04:15:11
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢分享,辛苦了
下一页 »
1
2
/ 2 页
下一页
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
签约作者
程序园优秀签约作者
发帖
崔竹
2026-2-8 04:15:11
关注
0
粉丝关注
21
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
3934307807
991125
anyue1937
9994892
kk14977
6845359
4
xiangqian
638210
5
神泱
9539
6
宋子
9880
7
韶又彤
9911
8
注思
9034
9
诀锺
9038
10
荪俗
9023
查看更多
今日好文热榜
182
如何在手机微信上拆分PDF文件分割?
282
如何在手机微信上拆分PDF文件分割?
153
如何在手机微信上拆分PDF文件分割?
447
如何在手机微信上拆分PDF文件分割?
612
如何在手机微信上拆分PDF文件分割?
714
AI生成多页面原型实战:APP与B端后台的生成
831
如何在手机微信上拆分PDF文件分割?
27
U535992 J-C 小梦的宝石收集
704
如何在手机微信上拆分PDF文件分割?
299
如何在手机微信上拆分PDF文件分割?
712
如何在手机微信上拆分PDF文件分割?
295
Agent构建:声明式优于硬编码
981
如何使用 UEFI Shell 执行 Hello World 程
904
AI元人文:文明没有本质差异,智慧在空性界
471
AI元人文:文明没有本质差异,智慧在空性界
773
AI元人文:文明没有本质差异,智慧在空性界
129
AI元人文:文明没有本质差异,智慧在空性界
570
AI元人文:文明没有本质差异,智慧在空性界
162
AI元人文:文明没有本质差异,智慧在空性界
20
AI元人文:文明没有本质差异,智慧在空性界