PICO 4DGS Unity SDK 集成笔记
【摘要】 PICO 4DGS Unity SDK 集成笔记 环境信息Unity 2022.3.62f3, Built-in RPPICO 4 Ultra Enterprise4DGS SDK V4.0.0 渲染管线设置 Built-in RP(当前使用)无需额外配置,文档明确说明"内置管线,不做处理"使用 GaussianSplatsDynamic.prefab(非URP版本)Shader: GSS...
PICO 4DGS Unity SDK 集成笔记
环境信息
- Unity 2022.3.62f3, Built-in RP
- PICO 4 Ultra Enterprise
- 4DGS SDK V4.0.0
渲染管线设置
Built-in RP(当前使用)
- 无需额外配置,文档明确说明"内置管线,不做处理"
- 使用
GaussianSplatsDynamic.prefab(非URP版本) - Shader:
GSSplatRender.shader,走 CGPROGRAM 路径
URP
- 需在 URP Renderer 中添加
FVGSURPFeature作为 Renderer Feature - 注入点:
RenderPassEvent.AfterRenderingTransparents(透明物体之后渲染) - Shader:
GSSplatRenderURP.shader,走 HLSLPROGRAM 路径 - 必须删除
HDRPConfig.dll和FVGSHDRPPass.cs - MR模式需关闭HDR
- MR模式需使用定制版 URP SDK (
com.unity.render-pipelines.universal@14.0.11.zip) 支持 FXAA
系统配置(两种管线通用)
- Windows: Graphics API = Direct3D12, Color Space = Linear
- Android: Graphics API = Vulkan, Color Space = Linear
Camera 设置
- Camera Tag 必须设为
MainCamera - MR模式: Camera BackgroundType = SolidColor, RGBA 全部设为 0
- SDK 示例场景中 Depth Texture 和 Opaque Texture 都关闭
深度测试
FVGSRenderDynamic.cs中有SetGSDepthTest(1)被注释- URP 版 shader 有
_DepthTestCustom变量控制自定义深度测试 - 启用深度测试需要 Camera 开启 Depth Texture
UI 闪烁问题
根因
4DGS 渲染在 AfterRenderingTransparents,World Space Canvas 也在透明渲染阶段。
Canvas sortingOrder=0 时,两者渲染顺序不确定,导致帧与帧之间谁先渲染不一致 → 闪烁。
解决方案(按优先级)
- Canvas sortingOrder = 100:确保 UI 始终在 4DGS 之后渲染(已修复)
- 启用深度测试:取消注释
SetGSDepthTest(1),4DGS 不会覆盖在 UI 前方 - Camera Depth Texture:开启
m_RequiresDepthTexture,让深度测试生效 - 渲染顺序调整(URP):将
FVGSURPFeature注入点从AfterRenderingTransparents改为BeforeRenderingTransparents
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)