目录
一、引言
在Unity开发的游戏和虚拟现实应用中,为了提升用户体验和交互性,我们常常需要对某些物体进行高亮处理,以引导玩家注意或选择特定的目标。然而,Unity引擎本身并未内置这类高亮功能。在众多第三方插件中,QuickOutline以其简洁易用且功能强大的特点脱颖而出。通过多次实践验证,我发现QuickOutline不仅能够高效地实现物体高亮的需求,而且其简易性使得初学者也能快速上手。基于这些积极的体验,我在此向大家推荐这款优秀的高亮插件,并分享我在使用过程中的心得与体会。
二、安装与配置
我们可以从UnityAssetStore中安装该插件
在Package Manager中搜索并导入
为你需要添加的物体添加outline组件即可
(注!此处可以挂载到所需高亮物体的总物体上,只需要该物体下的子物体中有MaterRenderer组件即可!挂载了Quick Outline插件的组件的模型,都要开启Read/Write Enabled。)
注意!只有在运行状态下才会显示渲染效果,编辑模式下并不会。
三、功能特性详解
Outline Mode: 高亮方式
Outline All | Outline Visible | Outline Hidden | Outline And Silhouette | Silhouette Only |
外边框 | 未被隐藏的边框 | 被隐藏的边框 | 被隐藏的整体和 未被隐藏的边框 | 被隐藏的整体 |
Outline Color:高亮颜色
Outline Width:高亮线的宽度(0-10)
Precompute Outline:用于控制是否在编辑器阶段预先计算物体的轮廓数据。当启用预计算时,轮廓的计算会在编辑器中进行,并将结果与物体一起序列化存储;而当禁用预计算时,轮廓计算则会在运行时的Awake()
方法中执行。
四、常见问题与解决方案(必看部分!!!)
1.注意!只有在运行状态下才会显示渲染效果,编辑模式下并不会。
2.注!可以挂载到所需高亮物体的总物体上,只需要该物体下的子物体中有MaterRenderer组件即可
3. 如果是打包时出现了以下报错(或者有类似字眼)
Not allowed to access uv4 on mesh 'polySurface379' (isReadable is false; Read/Write must be enabled in import settings)
这段话的意思为
不允许访问网格“polySurface379”上的 uv4(isReadable 为 false;必须在导入设置中启用读/写)
解决方案:
可以复制polySurface379然后在Project视图中搜索
这个长得像网格一样的就是mesh文件也就是网格,
右键他,出现上图,选择Select Dependencies,这个中文版应该是 选择依赖
这时候会出现一个模型,这个模型就是mesh所在的模型,在他的Inspector视图下,切换到Model选项,下面Meshes中会有一项叫Read/Write Enabled(允许读写,如上图)。开启这个选项,这样就不会报错了。
(不过开启这个之后会造成一定性能上的损失,但是在初学者阶段,这个损失意义不大,可以直接忽略掉这条信息)另外,其他的挂载了Quick Outline插件的组件的模型,也要开启Read/Write Enabled。
4.Quick Outline资源链接:
-----------------------------------------------------------分割线-------------------------------------------------------------
如果您觉得本篇文章对您有帮助的话,麻烦给个免费的点赞,如果非常有用的话还希望您能给个收藏关注,作者在未来会持续更新的。另外如果您觉得本篇文章有内容或者逻辑性问题,请私信联系或发在评论区,我会及时跟进修改内容。欢迎大家共同讨论!在此谢谢大家!!!