项目模板

This is an empty project configured for 2D apps. It uses Unity's Universal Render Pipeline pre-configured with 2D Renderer.
Universal 2D = URP + 2D 专用渲染器 + 2D 工具集,是 Unity 官方推荐的现代 2D 开发标准方案。
Packages包
| Package 名称 | 版本 | 功能定位 | 与 2D URP 项目的关系 |
|---|---|---|---|
| AI Navigation | 1.1.7 | 提供 AI 寻路、导航网格功能 | 非 2D 项目默认包,通常用于 NPC / 敌人寻路,属于额外安装的功能包 |
| Burst | 1.8.21 | 高性能数学计算 / 多线程优化编译器 | URP 和部分性能优化功能的底层依赖,自动安装 |
| Core RP Library | 14.0.12 | 渲染管线核心库,URP / 其他管线的基础依赖 | 与 Universal RP 14.0.12 配套,是 URP 正常运行的基础 |
| Custom NUnit | 2.0.3 | 单元测试框架 | 编辑器内置的测试工具,无额外影响 |
| Input System | 1.14.0 | 新版输入系统 | 替代旧版 Input Manager,支持跨平台输入控制,2D 项目也可用于角色控制 |
| JetBrains Rider Editor | 3.0.36 | Rider 编辑器集成工具 | 开发工具集成包,用于 Rider 与 Unity 的联动 |
| Mathematics | 1.2.6 | 高性能数学库(向量 / 矩阵 / 几何运算) | URP、Burst 优化的依赖库,URP 项目自动安装 |
| Searcher | 4.9.2 | 编辑器内快速搜索工具 | 编辑器内置工具,无额外影响 |
| Shader Graph | 14.0.12 | 可视化 Shader 编辑器 | 与 URP 版本匹配,可用于制作 2D 特效 / 自定义 Sprite Shader,是 2D URP 项目的常用工具 |
| Test Framework | 1.4.6 | Unity 测试框架 | 单元 / 功能测试工具,编辑器内置 |
| Timeline | 1.8.7 | 过场动画 / 序列编辑工具 | 可用于 2D 游戏的剧情动画、相机镜头控制,非强制但实用 |
| Unity UI | 1.0.0 | UI 系统(UGUI) | 制作游戏 UI、菜单、HUD 的核心工具,2D 项目必备 |
| Universal RP | 14.0.12 | 通用渲染管线(URP) | 项目的核心渲染管线,版本 14.x 对应 Unity 2022.x,专为 2D/3D 跨平台优化设计 |
| Universal RP Config | 14.0.10 | URP 配置工具 | 辅助管理 URP 渲染设置、质量配置,与 URP 配套安装 |
| Version Control | 2.7.1 | 版本控制工具集成 | 支持 Unity Collaborate/Perforce 等版本管理,非强制 |
| Visual Scripting | 1.9.5 | 可视化编程(无代码逻辑) | 适合快速制作 2D 游戏的基础逻辑,非强制但对新手友好 |
| Visual Studio Editor | 2.0.22 | VS 编辑器集成工具 | 开发工具集成包,用于 VS 与 Unity 的联动 |
场景介绍
0_Splash
"Splash"场景的命名,是取了"闪屏"或"启动画面"(Splash Screen)这个专业术语的首词,既精确描述了场景的核心功能,也符合游戏开发界的通用命名惯例。

1. Main Camera
Projection(投影模式):当前为 Orthographic(正交),而 Unity 新建场景时默认是 Perspective(透视)。
Size:当前为 9.6,而正交相机默认 Size 为 5(透视模式下该参数不显示)。
2.CanvasScene(Canvas)

将 UI 与主相机绑定,实现 UI 与游戏世界的正确叠加
控制 UI 在排序中的层叠顺序
让 UI 固定在逻辑分辨率 1080×1920 下自动适配不同屏幕
Graphic Raycaster 中勾选 Ignore Reversed Graphics
目的:忽略背面向相机的图形,提高射线检测效率并避免误触。
当 UI 元素发生 3D 旋转(例如牌翻转动画)时,背面不应该再接收点击。勾选此项后,只有正面朝向相机的 UI 才会被射线检测到。
Resize Canvas: Enabled(自定义属性)
目的 :推测是项目自定义脚本,用于根据屏幕分辨率实时调整 Rect Transform 的尺寸或缩放 ,进一步确保 UI 填满相机视野。(后面解析)
- 原生 Canvas 没有这个选项,说明开发团队加了一个扩展组件,可能是为了处理某些极端宽高比时的黑边问题。
2.1 TouchPad

2.1.1 TouchManager.cs
Touch Manager.cs
https://blog.csdn.net/LFJINNAN/article/details/160413171?spm=1001.2014.3001.5502
2.1.1 TouchPad.cs
总结归纳
Main Camera
Projection(投影模式):
2D 游戏通常使用 Orthographic(正交)模式;3D 游戏则使用 Perspective(透视)模式
-
2D 游戏通常使用
Orthographic(正交)模式:这种投影没有"近大远小"的效果,所有物体无论距离相机远近,显示大小都是一样的。这非常适合纯平面、像素精度的 2D 游戏(比如麻将消消、卡牌、平台跳跃等),能让精灵(Sprite)保持原始比例,也方便进行屏幕坐标与游戏世界坐标的换算。 -
3D 游戏则使用
Perspective(透视)模式:模拟人眼或真实摄像机的视觉效果,物体离相机越远看起来越小,能产生强烈的空间纵深感,是 3D 场景的标准选择。
Canvas
Graphic Raycaster:
√ Ignore Reversed Graphics: 牌的翻转后背面不可点击