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

【案例】三维扫描实现

开发平台:Unity 2022
开发工具:Unity Shader Graph
学习视频:三维扫描效果 Unity Shader Graph 教程

附注:参考视频为第三方作者,本文为学习性了解 Shadergraph 实现思路。

一、效果展示


在这里插入图片描述
注:扫描效果实质上是使用 Shader 进行 外轮廓描绘 + 模型缩放 的综合效果。

二、Shader Graph 路线图


在这里插入图片描述

三、案例分析


核心思路

3.1 说明 | 获取模型深度信息

在这里插入图片描述

扫描效果的呈现在于一个三维空间下进行。需要获取模型的位置信息。因此有以下两种涉及模型位置信息:

  • Screen Postion(屏幕位置):提供 屏幕上的二维坐标信息
  • Postion(位置):提供 Object(模型空间)、World(世界空间)、View(视窗空间)、Tangent(切线空间)等的三维坐标信息

由于扫描效果的表现为三维空间环境下的立体效果,故选择 Position(位置)作为输入。
由于扫描效果与模型的叠加需要应用 “深度信息(模型)”,故 Mode = “View”。

Splite(分割)对 RGBA 数据分离单独输出。R G B 在三维中分别对应 X Y Z 轴。

  1. 在颜色的输出中,<=0 为黑色,反之为灰色->白色的过渡表现。
  2. 为了有效的获取 “深度信息(模型)”,利用其特性,接入 B(Z)作为值输出。但有意思的是
    在相机视角前,无论如何拉远、近该材质应用的游戏对象,均表现为黑色
    最佳解释是 拉远近的操作对相机而言属于在 <=0 的范围内运动。 因此加入逆矩阵操作,Mutiple(乘法)转置。得到相机视角下 灰至白的深度信息。

在这里插入图片描述

3.2 说明 | 获取模型相交的位置信息

在这里插入图片描述

Scene Depth(场景深度)允许使用输入 UV(应该是标准化的屏幕坐标)访问当前摄像机的深度缓冲区。
Scene Depth(场景深度)设置 Sampling = “Eye”,该采样数据来源相机的 “深度视角位置” 信息。

知识点:在经过此算式后可以得到模型重叠处的位置信息。

http://www.dtcms.com/a/569981.html

相关文章:

  • 无人设备遥控器之天线技术分析
  • 宁波市建设工程监理协会网站工程公司年会发言稿
  • 广州旅游团购网站建设中山seo
  • mlir 编译器学习笔记之四 -- 调度
  • 网站建设实施步骤网站源代码上传
  • 2025年 汽车零部件行业MES厂商分析
  • 学校网站制作公司公司企业邮箱怎么填写
  • 网站改版 目的网络建设公司前景
  • Milvus:索引概述(十二)
  • 【25真题】C9之一,质量极高!
  • GitPuk零基础学习,如何进行标签管理
  • Git多分支开发规范与操作指南
  • 国外网站app网址提交大全
  • pulsar SDK在Linux的使用
  • 11.4八股
  • Trae-Agent 使用本地模型
  • 哪个网站开发小程序网站建设与维护的软件
  • Docker(四)_导出容器(不含历史层)
  • GitHub Copilot CLI: How to get started
  • Android ANR的解决方案
  • 亚马逊云科技与OpenAI战略合作深度分析:算力联盟重塑AI产业格局
  • 个人接外包的网站心悦俱乐部官方网站怎么做任务
  • 【Ros2学习】话题的发布与请求
  • 肥猫网站建设广西省河池建设局网站
  • CentOS7安装docker教程
  • 论文网站建设与运营拖曳式网站建设
  • Jenkins持续集成入门指南:自动化构建与部署的最佳实践
  • 山西省建设信息网站汇点远程app下载安装
  • 阿里云手机网站建设打电话拉客户用网站做广告怎么做 好做吗
  • hexo做网站wordpress内容分页在哪改