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上,一步一步地看是哪里出了问题。

相关推荐
T.D.C4 小时前
【业务框架】3C-相机-Cinemachine
unity
zhongqu_3dnest7 小时前
VR视频制作有哪些流程?
vr·数字孪生·三维建模·vr看房·房产经纪·vr视频制作·vr视频拍摄
一线灵11 小时前
跨平台游戏引擎 Axmol-2.6.1 发布
游戏引擎
凯禾瑞华实训室建设12 小时前
老年生活照护实训室建设规划:照护质量评估与持续改进实训体系
大数据·人工智能·物联网·ar·vr
Clank的游戏栈15 小时前
Unity基于GraphView的可视化关卡编辑器开发指南
unity·编辑器·游戏引擎
zhongqu_3dnest1 天前
VR博物馆推动现代数字化科技博物馆
科技·vr·数字孪生·三维建模·数字博物馆·vr博物馆·线上展馆
海尔辛1 天前
Unity UI 性能优化--Sprite 篇
ui·unity·性能优化
广州华锐视点1 天前
船舶事故海上搜救VR情景演练全场景 “复刻”,沉浸式救援体验
vr
三巧1 天前
Godot 敌人生成半径和围墙不匹配,导致敌人错误的生成在围墙外的解决代码
游戏引擎·godot
技术小甜甜1 天前
【Godot引擎】如何使用内置的全局搜索功能提升开发效率
游戏引擎·godot