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

devtools/2024/10/7 23:26:12/
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 API

The Oculus Quest 2 primarily uses OpenGL ES and Vulkan.
在这里插入图片描述

确保shader compatible with the Graphics API

在这里插入图片描述

设置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.在这里插入图片描述
除了自己的custom shader需要拖进来之外,一些内置的shaders,例如Unlit/Texture 也需要拖进来。这可能是由于将Graphics API修改了,这些内置的shaders也不能被找到了。

其他

如果还不行,那可能是其他代码逻辑的问题,或者是shader的问题。那可以先写一个简单的shader,例如简单变成红色,赋值到一个default cube or sphere上,一步一步地看是哪里出了问题。例如在我的代码中,就发现全部360图片呈现白色,是因为另外一个球遮挡住了其他球。


http://www.ppmy.cn/devtools/24148.html

相关文章

Java设计模式_概述(设计模式类型和基本原则)

一、设计模式 设计模式&#xff08;Design pattern&#xff09;代表了最佳的实践&#xff0c;是软件开发人员在软件开发过程中面临一般问题的解决方案&#xff0c;是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。是优秀程序猿的经验结晶。 但不推荐刚入门的开…

李廉洋:4.30非农即将来临,黄金原油是涨是跌,必看策略。

目前美国10年期国债收益率4.6%的水平反映出市场预期&#xff0c;即在经济持续增长的情况下&#xff0c;通胀可能会持续高于美联储2%的目标。美债收益率飙升背后的原因很简单&#xff0c;因为通胀水平似乎远高于美联储的目标&#xff0c;徘徊在3%左右&#xff0c;并且有反弹的迹…

【中级软件设计师】上午题12-软件工程(3):项目活动图、软件风险、软件评审、软件项目估算

【中级软件设计师】上午题12-软件工程&#xff08;3&#xff09; 1 软件项目估算1.1 COCOMO估算模型1.2 COCOMOⅡ模型 2 进度管理2.1 gantt甘特图2.2 pert图2.3 项目活动图2.3.1 画项目图 3 软件配置管理4 软件风险4.1 风险管理4.2 风险识别4.3 风险预测4.4 风险评估4.5 风险控…

6-动态路由

前文提到用户可以通过url访问到不属于自己权限的页面&#xff0c;这需要通过动态路由来解决 1.将后端返回的菜单数据存储到Cookie之后&#xff0c;调用状态管理中添加路由方法 //调用store中的setMenu函数this.$store.commit(setMenu,data.data.data)// 动态路由配置this.$sto…

UG NX二次开发(C++)-获取模型中所有的拉伸(Extrude)特征

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1、前言2、在UG 12中创建几个拉伸特征3、UFun中获取对象类型4、通过NXOpen过渡5.测试结果1、前言 在采用UG NX二次开发时,有时需要在模型中获取特定的对象,比如拉伸特征、关联特征等等。但是通过…

面试过程种遇到的面试题收集

文章目录 讲一讲这个项目是干什么的&#xff1f;需求规格说明书有哪些章节&#xff1f;职工部门层级如何显示在一张SQL表上&#xff1f;需求开发用到了哪些技术&#xff1f;HashMap 底层数据结构说一下&#xff1f;介绍一下红黑树&#xff1f;HashMap是线程不安全的&#xff0c…

uniapp 微信小程序 分享海报的实现

主页面 <template><view class"page"><!-- 自定义导航栏--><Navbar title"我的海报"></Navbar><view class"container"><poster ref"poster" :imageUrl"image" :imageWidth"7…

C++ 点云单木分割(欧氏距离法)

基于欧式距离的单木分割方法相对简单且直观,但存在一些缺点,存在噪声或物体边缘不清晰时会影响分割结果。 一、代码示例 #include <pcl/io/pcd_io.h> #include <pcl/filters/voxel_grid.h> #include <pcl/surface/concave_hull.h> #include <pcl/conso…