【推荐100个unity插件之16】3D物品描边效果——Quick Outline免费插件

文章目录

前言

关于3D描边,其实之前有用shader弄过一个:【实现100个unity特效】shader实现3D物品闪光和描边效果

但是很遗憾的是他不支持URP项目,所以现在推荐这款插件,他能很好的支持URP,对于HDRP我没有试过,官方也没有说明,需要的可以去试试看

地址

https://assetstore.unity.com/packages/tools/particles-effects/quick-outline-115488#reviews

介绍

快速轮廓是一个世界空间轮廓工具,可为任何对象添加实心轮廓。

它非常适合 VR。

许多轮廓着色器在屏幕空间中工作,这使得它们的速度很慢,而且它们不支持 MSAA。如果他们确实在世界空间中工作,那么他们在硬角落里有"间隙"。快速大纲解决了这些问题。

Quick Outline 最初是为 VR 设计的,因此它支持实例化立体渲染和 MSAA。它在任何 HMD 中看起来都很棒,并且不会影响帧速率。

  • 专为 VR 设计(包括单次通过)
  • 支持 MSAA
  • 与后处理堆栈
    兼容 - 多种轮廓模式
  • 轻巧且高性能

使用例子

预制体挂载脚本

效果

代码控制轮廓显示隐藏

csharp 复制代码
private void Update()
{
    // 发射一条从相机视口中心向屏幕内部发出的射线
    Ray ray = Camera.main.ViewportPointToRay(new Vector3(0.5f, 0.5f, 0));
    RaycastHit hit;

    // 检测射线是否击中物体
    if (Physics.Raycast(ray, out hit))
    {
        GameObject objectHitByRaycast = hit.transform.gameObject;

        // 如果被射线击中的物体有 Weapon 组件
        if (objectHitByRaycast.GetComponent<Weapon>())
        {
            // 获取 Weapon 组件并启用 outline
            Weapon hoveredWeapon = objectHitByRaycast.GetComponent<Weapon>();
            hoveredWeapon.GetComponent<Outline>().enabled = true;
        }
        else
        {
            // 如果被射线击中的物体没有 Weapon 组件,或者没有 Outline 组件,则禁用 outline
            if (hoveredWeapon != null)
            {
                hoveredWeapon.GetComponent<Outline>().enabled = false;
            }
        }
    }
}

完结

赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注,以便我第一时间收到反馈,你的每一次支持都是我不断创作的最大动力。当然如果你发现了文章中存在错误或者有更好的解决方法,也欢迎评论私信告诉我哦!

好了,我是向宇https://xiangyu.blog.csdn.net

一位在小公司默默奋斗的开发者,出于兴趣爱好,最近开始自学unity,闲暇之余,边学习边记录分享,站在巨人的肩膀上,通过学习前辈们的经验总是会给我很多帮助和启发!php是工作,unity是生活!如果你遇到任何问题,也欢迎你评论私信找我, 虽然有些问题我也不一定会,但是我会查阅各方资料,争取给出最好的建议,希望可以帮助更多想学编程的人,共勉~

相关推荐
魔士于安7 小时前
unity 圆盘式 太空飞船
游戏·unity·游戏引擎·贴图·模型
陈言必行8 小时前
Unity 之 Addressables 加载失败:路径变量未替换导致的 404 错误分析与解决
unity·游戏引擎
2501_9181269110 小时前
学习所有6502写游戏动画的语句
汇编·嵌入式硬件·学习·程序人生·游戏
qq_1702647511 小时前
unity出安卓年龄分级的arr包问题
android·unity·游戏引擎
CDN36012 小时前
游戏服稳定运行:360CDN SDK 游戏盾实测体验
运维·游戏·网络安全
WMX101214 小时前
Holoens2开发报错记录02_unity项目常见错误
unity
魔士于安14 小时前
宇宙版地球模拟器
游戏·unity·游戏引擎·贴图·模型
wanhengidc14 小时前
《三国志异闻录》搬砖新游戏 云手机
运维·服务器·数据库·游戏·智能手机
好家伙VCC15 小时前
# 发散创新:用 Rust构建高性能游戏日系统,从零实现事件驱动架构 在现代游戏开发中,**性能与可扩展性**是核心命题。传统基于
java·python·游戏·架构·rust
魔士于安16 小时前
氛围感游戏场景,天空盒,带地形,附赠一个空要塞
游戏·unity·游戏引擎·贴图