【推荐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 小时前
[学习记录] 幼儿学习拼音html游戏
学习·游戏
晓13138 小时前
【Cocos Creator 2.x】篇——第二章 入门
javascript·游戏引擎
CG_MAGIC10 小时前
从光影到物理渲染:Substance Sampler 照片转材质
3d·材质·贴图·uv·建模教程·渲云渲染
x1387028595710 小时前
c语言排雷游戏(基础版9*9)
c语言·算法·游戏
nnsix10 小时前
Unity 贴图压缩格式 笔记
笔记·unity·贴图
wgc2k13 小时前
Oops Framework-5-GUI资源的图集打包方式
游戏·cocos2d
海兰13 小时前
【红楼梦:第二篇】梦境漫游,详细设计指南
人工智能·游戏
开开心心_Every16 小时前
解决打印机共享难题的实用工具
linux·b树·安全·游戏·随机森林·pdf·计算机外设
ysn1111119 小时前
搭建状态同步框架的实践心得
unity·架构
wgc2k20 小时前
Oops Framework-8-由空项目创建第一个登录界面
游戏·cocos2d