Shader for Quest 2: 自定义shader在Unity Editor中可以使用,但是在Quest 2中却不可以

csharp 复制代码
GameObject segment = GameObject.Find("DisplayArea_" + i);
MeshRenderer renderer = segment.GetComponent<MeshRenderer>();
Material mat = new Material(Shader.Find("Custom/MyShader")); 
mat.mainTexture = option.Image360;

上面这份代码,在Unity Editor中可以使用,但是编译到Quest 2之后,却没有反应。这可能是由于多种原因引起的,可以按照下面的步骤修改。

设置Graphics

如果使用Visual Studio联调的话,可能会看到这个报错:

System.ArgumentNullException: Value cannot be null.

Parameter name: shader

解决方案:

Go to the graphics settings in Unity (Edit > Project Settings > Graphics) and make sure your custom shader is included in the list of always included shaders . This ensures the shader is compiled into the build.

设置Graphics API

The Oculus Quest 2 primarily uses OpenGL ES and Vulkan.

确保shader compatible with the Graphics API

其他

如果还不行,那可能是其他代码逻辑的问题,或者是shader的问题。那可以先写一个简单的shader,例如简单变成红色,赋值到一个default cube or sphere上,一步一步地看是哪里出了问题。

相关推荐
mxwin4 小时前
Unity URP 中的法线生成完全指南
unity·游戏引擎
游乐码4 小时前
Unity基础(十五)LineRender画线功能
unity·游戏引擎
玖玥拾5 小时前
Cocos学习笔记:瓦片地图与坐标转换
游戏引擎·cocos2d
云和恩墨6 小时前
Oracle与HP红蓝聚首之后:数据库一体机赛道的风云变幻
vr
小贺儿开发6 小时前
Unity3D 图片循环查看器
unity·工具·图片·列表·循环·ugui·互动
晓131310 小时前
【Cocos Creator 3.x】篇——第二章 入门
前端·javascript·游戏引擎
玖玥拾12 小时前
Cocos学习笔记:粒子系统与对象层批量处理
游戏引擎·cocos2d
是果果呀儿13 小时前
Vuforia实现物体旋转、移动、缩放
unity·增强现实
2601_9618454213 小时前
2027考研数学大纲|数一数二数三
考研·fpga开发·ar·vr·mr·oneflow
不知名的老吴16 小时前
Unity3D 2022安装教程及全流程下载步骤指南
unity·游戏引擎