Unity URP的2D光照简介

Unity 2D光照(2D Light)和阴影(Shadow Caster 2D) 2d animation https://docs.unity3d.com/Packages/com.unity.2d.animation@3.1/manual/index.html 2d场景的光照效果 https://www.youtube.com/watch?v=F5l8vP90EvU 阅读详情

官网工程,包括2d光照,动画,动效介绍:
https://unity.com/cn/blog/games/happy-harvest-demo-latest-2d-techniques
https://docs.unity3d.com/6000.0/Documentation/Manual/urp/Lights-2D-intro.html


人物脸部光照细节和脚上的阴影投射

人物脸部光照细节和脚上的阴影投射


URP环境搭建

  1. PackageManage导入UniversalRP包

    在这里插入图片描述

  2. 创建管线配置

在这里插入图片描述

  1. 调整排序坐标规则,Renderer2DData,根据Sprite的锚点y轴值排序。
    在这里插入图片描述

光照组件 Light2D

在这里插入图片描述
在这里插入图片描述

  • 四种光源类型:全局光,点光源,Sprite贴图,Freeform自定义形状

  • 只能有一个全局光照,没有方向,类似对所有接受光照的2d材质做一层颜色混合。

  • 除了全局光,其他光源可以配置阴影强度、体积光、对法线贴图混合配置等

  • TargetSortingLayers:用来指定光照到哪些layer。

  • Blending:配置颜色混合的规则。


接收光照的Sprite

  • 需要对Sprite添加一个法线贴图,光照会根据法线计算。

    在这里插入图片描述

  • 材质替换成接受光照(Lit字样)的 Sprite-Lit-Default.mat
    在这里插入图片描述


阴影投射 ShadowCaster2D

在这里插入图片描述

  • TargetSortingLayers:接受阴影投射的层级,这里只选Bg,如果也选Defualt,阴影会投射到本身自己也是同样层级身上。

  • 点击EditShape可以编辑形状


代码调试

  • 问题:因为URP代码在Library目录,没法断点调试,且unity会自动检查代码完整性,如果修改了代码,会被自动更新会原来库里的。

  • 解决方法:将库先拷出来,remove掉原来的库,导入拷出来的库即可。

    在这里插入图片描述


阴影绘制相关代码

  • C#: ShadowRendering.RenderProjectedShadows()

  • Shader:

    • 绘制阴影:Shadow2D-Projected.shader

    • 光照和阴影混合:LightingUtility.hlsl 的 APPLY_SHADOWS

在这里插入图片描述


用光照模拟阴影

  • 使用暗色调的光照模拟为阴影

    在这里插入图片描述

unity渲染管线及升级URP unity渲染管线及升级URP一,unity渲染管线简介二,通用渲染管线URP三,shader升级URP1,Builtin RP和URP中内置Shader 的对应2,总体结构3,include4,光照模式LightMode5,变体Variants6,预定义宏辅助宏阴影贴图纹理采样器声明光照、雾7,辅助函数变换函数通用辅助函数向前渲染函数屏幕空间顶点光照深度其他7,内置变量8,后处理参考资料 一,unity渲染管线简介 Unity引擎的渲染管线主要分为"渲染核心库"与"渲染策略"两个部分, “渲染核心库”是U 阅读详情

相关推荐

unity URP实现PBR shader

unity URP实现PBR shader一,整体结构二,PBR部分 之前到处找资料参考,复制粘贴了一个文章unity渲染管线及升级URP出来,实际操作的时候却发现作用较小。 今天重新写一个URP实现PBR的文章,就基于前边写的基于物理渲染-unity实现PBR shader + 多光源 + 半透明物体和阴影的基础补充吧。 一,整体结构 第一行的shader命名和Properties部分不用变。 Tag处增加"RenderPipeline"=“UniversalPipeline”,表示这个是urp的s

噗噗噗的博客 6343

Unity学习笔记---2D光照渲染、美术、动画

Unity 提供三个渲染管线 :一个内置渲染管线和两个可编程渲染管线 (SRP)。两个 SRP 为通用渲染管线 (URP) 和高清渲染管线 (HDRP)。URP 适用于所有平台,而 HDRP 则 旨在用于针对高端 PC 和主机的游戏。

weixin_45944408的博客 6438

【unity游戏开发入门到精通——2D篇】最全的Unity各种2d光源灯光的使用和案例说明

【unity游戏开发入门到精通——2D篇】最全的Unity各种2d光源灯光的使用和案例说明

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 5565

Unity-2D光源使用讲解

此篇文章会为你介绍Unity中有关2D光源的相关知识。

Never Give Up 5809

Unity引擎开发:2D与3D渲染技术_光照与阴影

通过合理选择和使用不同类型的光源、阴影生成技术以及优化方法,可以显著提升 Unity 游戏的视觉效果和性能。方向光、点光源、聚光灯和区域光源各有其适用的场景,而硬阴影和软阴影则可以根据需要选择以达到最佳效果。此外,光照模式的选择和光照探针的使用也是优化光照效果的重要手段。希望本文对你在 Unity 中实现高质量的光照和阴影效果有所帮助。

chenlz2007的博客 805

图相似度模型(论文篇)

图相似度模型

weixin_43702653的博客 5748

Unity2D光照 2DLight使用详细讲解

#Unity2D光照详细讲解 首先我们需要知道unity的2d光照是在2019版本新增的功能 在2020里面是看不到的,而我们想要在2020版本里使用此功能则需要将我们的项目升级成URP项目 或者在创建项目的时候选择URP。 ##一、那么我们先讲一下如何在2019里面配置2D光照 首先我们在Window下找到packageManager 搜索Light 你会看到这样一个包点击右下角的install 如下图 这样我们的基础包算是安装完成了 2、如果你使用的是unity2020版本 那么是无法像2019版

qq_42553673的博客 1万+

开放自己本机的mysql允许别人连接

需要在左下角搜索记事本应用,右键以管理员身份运行,之后按照上述地址找到my.ini文件,ctrl+F搜索到[mysqld],修改或添加 bind-address 设置,将其更改为 0.0.0.0 或你的计算机的 IP 地址。打开 MySQL 的配置文件 my.ini。username和密码是第3步创建能从远程地址访问的用户和密码,ip地址是ipconfig查看的地址(前提是能ping通,才能连接该地址对应的数据库)。使用 MySQL 命令行连接到自己的数据库,并创建一个能够从远程地址访问的用户。

m0_74824687的博客 1168

Unity Shader URP 学习 《Built-in和URP中光照的区别》

前面我们讲了基础名称上的区别和新增的库文件,那我们就要说说很重要的光照了。 Built-in光照文件 Lighting.cginc引用 UnityLightingCommon.cginc、UnityGBuffer.cginc、UnityGlobalIllumination.cginc URP光照文件 Lighting.hlsl引用 Common.hlsl、EntityLighting.hlsl、ImageBasedLighting.hlsl、Core.hlsl、Shadows.hlsl、 .

enk_2的博客 8108

STM32 烧录报错Invalid ROM Table

STM32 烧录报错Invalid ROM Table

热爱科技,物联,程序开发等 1734

Dify-前端本地运行-单点登录

本文介绍了如何在已部署Dify的系统中实现AI应用跳转及页面定制化改造。通过iframe跳转无法满足甲方需求后,作者对Dify前端源码进行了本地化二次开发,主要步骤包括:1) 按照官方文档搭建本地开发环境;2) 修改.env配置文件连接部署好的后端服务;3) 隐藏侧边栏和头部导航栏;4) 实现单点登录功能,通过URL参数获取用户邮箱自动登录。过程中解决了请求拦截导致的登录校验问题,最终达成仅保留对话框界面并同步用户信息的需求。该方案涉及Next.js框架和React技术的应用,为类似定制化需求提供了参

weixin_43163457的博客 3226

Unity URP 2D光照导入与配置

URP 全称为 Universal Render Pipeline(通用渲染管线)。它的特点是在手游和端游均能在保持性能的同时有良好的效果也就说在多数情况下,在下面的平台使用是这样的情况.(不代表不能用,只是不适合)BuiltIn RPURPHDRP移动VVXPCVVV其中HDRP的效果最佳,但是在移动端往往不足以支撑。而URP效果稍次,但是性能优异,而BuiltInRP…一言难尽。其中如果你想使用2D Light,就选URP,如果制作2D游戏,就选URP。

yueh0607 5031

TouchGFX使用教程(三)

TouchGFX使用教程(三)界面事件控件修改方法图片等资源放置位置 界面事件 控件修改方法 图片等资源放置位置

yuanzhan11的专栏 6972

Unity/URP 在3D项目中2D图片(SpriteRenderer)光照的解决方案

问题起因:当前在制作一个斜45度视角的2.5D的项目,光照方面由于URP的2D灯光作用于3D的时候会有折角,3D灯光无法作用于URP2D的原因项目中故使用的光照处理的方法是Unity未导入URP时的Sprites的Diffuse材质(漫反射)但是最近项目要做出泛光(bloom)效果所以导入了URP,结果!!! Sprites的Diffuse材质不能用了(如下图): 可恶啊,这本来是一个很可人的压缩饼干的说… 思前想后找了很久资料但是没怎么找到解决方案,所以考虑了下用shadergraph写一个漫反射2..

指引前路的苍蓝星的博客 5022

从零开始学习CANoe(六)—— CAPL 测试节点

创建CAPL Test Module的两种方式

蚂蚁小兵 1万+

华为OD机试真题2026双机位C卷 C语言 实现【主次关联成环警告】

在ICT运维领域,现网运维工程师面向对设备上报的众多告警,往往需要筛选出最主要的告警优先处理,次等级的告警或许为同一个根因导致的告警,处理优先级会放后或者不处理,这样就诞生出主次关联告警的概念。给定一系列告警的主次关联关系,判断是否存在如下情况:

MISAYAONE的博客 172

Unity Shader URP 学习 《URP中光照的应用》

首先我们要明确 realtime 和 bake两种状态 Realtime 实时光照中我们正常拿取Unity提供给我们的主光 Light mainLight =GetMainLight(); Light mainLight =GetMainLight(input.shadowCoord); 两者的区别在于是否传入坐标,本质上只会改变shadowAttenuation的值是1还是实际值。 ...

enk_2的博客 4941

Codex 100个真实案例 - 全系列总结与Codex最佳实践全解析

历经100个案例的淬炼,我们终于来到了终点!本篇是整个系列的压轴之作——全面回顾100个案例的分类统计、提炼Codex使用的核心技巧和最佳实践、总结Prompt工程的精华要点、剖析常见错误及解决方案、展望AI编程的未来趋势,并为不同水平的读者规划学习路径。这不仅是一篇总结,更是一本Codex实战手册!

yueyeguzhuo的专栏 136

【URP】Unity[内置Shader]复杂光照ComplexLit

Unity URP中的ComplexLit是一种高级PBR着色器,支持多光源、法线贴图等特性,通过BRDF计算实现真实材质表现。相比基础Lit着色器,ComplexLit增加了视差映射、次表面散射等高级功能,但需要更高硬件支持。它适用于写实风格的高端设备场景,而Lit更适合常规项目。ComplexLit支持通过ShaderGraph配置,能实现各向异性高光、清漆涂层等特殊效果,但需注意在移动端的性能优化。该技术自Unity2019年SRP重构后持续发展,已成为跨平台开发的重要渲染解决方案。

设计 AI 玩游戏🎮 2330

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

【URP】Unity[内置Shader]粒子简单光照ParticlesSimpleLit

《Unity URP中的ParticlesSimpleLit着色器解析》摘要:ParticlesSimpleLit是URP专为粒子系统设计的高性能简化光照着色器,通过牺牲物理准确性换取渲染效率,特别适合移动端。它采用简化光照模型,包含SurfaceOptions、Inputs和Advanced三部分。随着URP版本迭代不断优化,支持ShaderGraph和GPU实例化。使用时可配置基础纹理、颜色、高光等参数,适用于火焰、雨雪、魔法特效等场景。通过调整混合模式、透明度和颜色模块,能实现丰富粒子效果。开发时建议

设计 AI 玩游戏🎮 1798

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Unity URP渲染管线详解

Universal Render Pipeline (URP,通用渲染管线)是Unity推出的轻量级、高性能渲染管线解决方案,适用于移动平台、PC和主机等多种平台。

2302_76776557的博客 3850

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

URP中实现的Custom2D光照系统的代码分析

虽然urp中是自带2D光照系统的,但是并不能和前向渲染同时使用,只能使用2D工作流了,所以在网上研究了一下怎样实现一个unity内的2D光照系统。 代码是来源于 https://github.com/SardineFish/Unity2DLighting​github.com/SardineFish/Unity2DLighting 这个项目是由一位知乎er写的,也有对应的文章 SardineFish:Unity中实现2D光照系统244 赞同 · 17 评论文章正在上传…重新上传取消​ 阴影产生的.

FREEstriker的博客 1097

【URP】Unity[内置Shader]简单光照SimpleLit

SimpleLit Shader是Unity URP中的轻量级着色器,采用简化的Blinn-Phong光照模型,相比标准Lit Shader提升30%-50%的渲染性能。它通过模块化结构(SurfaceOptions/SurfaceInputs/AdvancedOptions)和精简变体管理实现高效渲染,特别适合移动端和低端设备。发展历程从2019年基础功能到2024年支持DOTS实例化,功能不断完善。开发者可通过材质面板或代码配置基础颜色、光滑度等属性,在ShaderGraph中也能创建SimpleLit

设计 AI 玩游戏🎮 1227

2d shader unity 阴影_Unity中实现2D光照系统

在一些 2D 游戏中引入实时光影效果能给游戏带来非常大的视觉效果提升,亦或是利用 2D 光影实现视线遮挡机制。例如 Terraria, Starbound。2D 光影效果需要一个动态光照系统实现, 而通常游戏引擎所提供的实时光照系统仅限于 3D 场景,要实现图中效果的 2D 光影需要额外设计适用于 2D 场景的光照系统。虽然在 Unity Assets Store 上有不少 2D 光照系统插件,实...

weixin_33552698的博客 1565

【Unity URP】手写PBR:从build-in转到URP

在URP下实现初步的包含阴影的PBR

qq_41835314的博客 4362

【URP】Unity[内置Shader]烘焙光照BakedLit

摘要:BakedLit是Unity URP中的着色模型,利用预烘焙光照信息(光照贴图和探针)来提升渲染性能,避免实时光照计算。它适用于静态场景对象,需标记为Static并配置烘焙参数。随着URP发展,BakedLit功能不断完善,支持ShaderGraph节点访问烘焙数据。该技术特别适合移动平台和静态场景,能显著提高渲染效率。使用方式包括直接应用BakedLit着色器或在ShaderGraph中通过BakedGI节点实现光照效果。

设计 AI 玩游戏🎮 891
上一篇: 游戏内常见加密
下一篇: Unity 代码优化记录
ChiLi_Lin
博客等级 码龄12年 760粉丝 184原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值