MAC平台几何着色器不生效
问题
MAC平台几何着色器不生效
解决步骤
- unity shaderlab 怎么设置以至于支持几何着色器
- 找原因,设置 编译目标级别,#pragma target 4.0, 不管用
- 看到一句话,Unity 在 Metal 图形上支持曲面细分着色器,但 Metal 不支持几何着色器
- 找到mac和ios平台使用的是Metal标准的图形api
- 遂查询是否有其他的图形 API, 发现 mac和ios还支持 OpenGL
- 在Unity中编写的Shader最终会根据不同的平台来编绎成不同的着色器语言,官方的建议是用Cg/HLSL来编写,当然也可以使用GLSL,主要是因为Cg/HLSL有更好的跨平台性,更倾向于使用Cg/HLSL来编写Shader程序。
- Shader编程语言
- 基于OpenGL的OpenGL Shading Language,简称GLSL。
- 基于DirectX的High Level Shading Language,简称HLSL。
- 还有NVIDIA公司的C for Graphic,简称Cg语言。
- URP 通用渲染管线使用HLSL
- unity是否可以指定 graphics API
- 打开 Player 设置(菜单:Edit > Project Settings,然后选择 Player 类别)。 导航到 Other Settings 并确保选中 Auto Graphics API
参考链接
--完--
- 原文作者: 留白
- 原文链接: https://zfunnily.github.io/2022/05/geometry/
- 更新时间:2024-04-16 01:01:05
- 本文声明:转载请标记原文作者及链接