Unity3D仿星露谷物语开发2之工程初始化

1、依赖包安装

进入【Window -> Package Manager】

安装如下插件:

1)Cinemachine

它是一套专门控制Unity Camera的模块,适用于各种游戏场景中物体的移动变化,解决了许多关于摄像机间的复杂控制,混合,切换等复杂数学和逻辑。对一些摄像机功能需求能快速实现,同时能结合Timeline插件来实现动画效果。

2)Timeline插件

默认情况下已经安装完毕。

它用于制作电影内容、过场动画、游戏过程序列以及复杂的粒子系统等。

2、自定义包

(1)导入自定义包

资源名称为:starterassets.unitypackage,这里面包含了Sprite、声音、动画、动画控制器等。

链接:https://download.csdn.net/download/benben044/90117305?spm=1001.2014.3001.5501

方法:【Assets -> Import Package -> CustomPackage...】

导入All,完成后Assets显示如下:

(2)Sprite Atlas图集

Sprite Atlas是一个包含多个小图像的大图像,这些小图像被称为sprites。通过使用Sprite Atlas,可以将多个小图像合并到一张大图像中。在渲染中,每次调用都需要进行顶点转换、纹理采样等操作。通过将多个sprites共享同一个纹理,unity可以减少纹理切换的次数,从而减少DrawCall的次数和内存占用,达到提高游戏的性能和效率的目的。

3、项目工程设置

进入【Edit -> Project Settings】

(1)Quality设置

在这个游戏中我们只要Low质量即可。

保留Low,将其他都删除掉:

(2)Graphics设置

我们需要设置透明排序模式。

在3D游戏中,事物是沿着Z轴排列的,这让它们在2D游戏中呈现出深度。在2D中没有使用Z轴,所以屏幕上的一切都是平面的。

我们通过沿Y轴排序来展示2D游戏的深度。

这意味着Y位置较低的Sprite将被排序并绘制在Y位置更好的Sprite前面。

4、初始化Scene

点击【File -> Save As】,将当前场景保存为PersistentScene,同时删除自带的SampleScene。

在游戏中将使用持久场景的概念。一个持久的场景会一直加载,游戏的不同位置也会一直加载。

即使用户角色在不同场景中切换,但是该持久场景会一直保持加载,所有的游戏管理器和主游戏逻辑将在持久化场景中创建。

5、创建虚拟cinemachine camera

点击【GameObject -> Cinemachine -> Virtual Camera】

创建完毕后就可以在PersistentScene中看到该相机。

我们将它重命名为:PlayerFollowVirtualCamera

接下来是改变摄像机的正投影尺寸。

我们将正交投影大小设为8.4375,刚好是屏幕大小16.875的一半。

我们基本Sprite分辨率是16像素/单位,所以我们的目标屏幕高度16.875*16=270像素,按照16:9的宽高比,则宽度为270*16/9=480像素。

Body类型选择“Framing Transposer”。

这基本上会保持游戏对象在一个帧内。其他参数配置如下:

设置Aim为Do nothing。

6、Main Camera设置

将背景设置为纯黑色(0,0,0)。

添加Pixel Perfect Camera组件。

参数配置如下:

Sprite以每单位16像素绘制,所以需要将Assets Pixels Per Unit改为16.

7、设置Snap Settings

点击如下位置:

参数设置如下:

0.0625 = 1/ 16.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/490936.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[论文阅读] |智能体长期记忆与反思

写在前面:10月份的时候,联发科天玑9400发布,搭载这款旗舰 5G 智能体 AI 芯片的荣耀MagicOS9.0实现了一句话让手机自动操作美团点咖啡。很快商场实体店里便能看到很多品牌手机已经升级为智能体语音助手。下一步,这些智能体或许便能…

数据结构之线性表1

2.1 线性表的定义和基本操作 1.线性结构的特点是:在数据元素的非空有限集中, (1)存在惟一的一个被称做“第一个”的数据元素; (2) 存在惟一的一个被称做“最后一个”的数据元素; &a…

【conda/cuda/cudnn/tensorrt】一份简洁的深度学习环境安装清单

🚀本文主要总结一下conda、cuda、cudnn、tensorrt的快速安装。至于nvidia显卡驱动的安装,暂且不提。本文适合有一定反复安装经验的读者😂,方便其快速整理安装思路。 NVIDIA Drivers 🌔01conda ⭐️ 注意,c…

拿到小米 Offer,却迷茫了。。

大家好,我是程序员鱼皮,12 月了,很多小伙伴也拿到了秋招的 Offer(没拿到也不要灰心),但即使拿到 Offer,可能还会有一些其他的顾虑。今天分享我们编程导航一位鱼友的提问,给大家作为学…

专业140+总分400+北京理工大学826信号处理导论考研经验北理工电子信息与通信工程,真题,大纲,参考书。

考研总分400,专业826信号处理导论(信号与系统和dsp)140,成功上岸北理工,虽然已经一段时间,但是后劲很大,每每回想还是昨日事,群里同学多次要求分享自己的一些经验,感谢大…

【CC2530开发基础篇】继电器模块使用

一、前言 1.1 开发背景 本实验通过使用CC2530单片机控制继电器的吸合与断开,深入了解单片机GPIO的配置与应用。继电器作为一种常见的电气控制元件,广泛用于自动化系统中,用于控制大功率负载的开关操作。在本实验中,将通过GPIO口…

geoserver(1) 发布sql 图层 支持自定义参数

前提使用postgis 数据库支持关联 join 支持 in,not in,like,及其他sql原生函数 新增sql图层 编写自定义sql 编辑sql语句必须输出带有geom数据 正则表达式去除 设置id以及坐标参考系 预览sql图层效果 拼接sql参数 http://xxx.com/geoserver/weather/wms?SERVICEWMS&VERSI…

docker login 出错 Error response from daemon

在自己的Linux服务器尝试登陆docker出错 输入完用户密码之后错误如下: 解决方案 1.打开daemo文件: vim/etc/docker/daemon.json 2.常用的国内Docker 镜像源地址 网易云 Docker 镜像:http://hub-mirror.c.163.com 百度云 Docker 镜像&#x…

aws(学习笔记第十七课) SQS Amazon Simple Queue Service服务

aws(学习笔记第十七课) SQS Amazon Simple Queue Service服务 学习内容: 使用SQS Amazon Simple Queue Service服务整体代码(nodejs的通常工程)代码动作 1. 使用SQS Amazon Simple Queue Service服务 利用应用程序来学习SQS 创建S3$ aws s…

OpenLinkSaas 2025年1月开发计划

先来看看OpenLinkSaas的大目标 在OpenLinkSaas的产品目标中,让开发人员更加方便的使用云资源是目标之一。通过各大云厂商的API,来可视化云上基础设施的数据是远远不够的。我们准备在2025年1月份增加方便管理和运营研发场景下服务器的能力。 这部分的功能…

6.1 初探MapReduce

MapReduce是一种分布式计算框架,用于处理大规模数据集。其核心思想是“分而治之”,通过Map阶段将任务分解为多个简单任务并行处理,然后在Reduce阶段汇总结果。MapReduce编程模型包括Map和Reduce两个阶段,数据来源和结果存储通常在…

上传文件时获取音视频文件时长和文本文件字数

获取音视频文件时长和文本文件字数 一、获取音视频文件时长二、计算文本文件字数 最近有个需求,要求上传文件时获取音视频文件时长和文本文件字数🐶。 发现这样的冷门资料不多,特做个记录。本文忽略文件上传功能,只封装核心的工具…

百度智能云千帆AppBuilder升级,百度AI搜索组件上线,RAG支持无限容量向量存储!

百度智能云千帆 AppBuilder 发版升级! 进一步降低开发门槛,落地大模型到应用的最后一公里。在千帆 AppBuilder 最新升级的 V1.1版本中,企业级 RAG 和 Agent 能力再度提升,同时组件生态与应用集成分发更加优化。 • 企业级 RAG&am…

SAP PP 错误转换字段 组件

错误转换字段 组件 原因: S/4 没有起用40位长度的物料 ,CONVERSION_EXIT_ALPHA_INPUT 转换成40位长度物料而 CONVERSION_EXIT_MATN1_INPUT 转换成18位长度物料 这样使得后续bom创建 找不到对应的40位物料 引起的组件文件 解决方案 18位长度物料 20241216 写…

技术速递|.NET 9 简介

作者:.NET 团队 排版:Alan Wang 今天,我们非常激动地宣布 .NET 9的发布,这是迄今为止最高效、最现代、最安全、最智能、性能最高的 .NET 版本。这是来自世界各地数千名开发人员又一年努力的成果。这个新版本包括数千项性能、安全和…

session 共享服务器

1.安装 kryo-3.0.3.jar asm-5.2.jar objenesis-2.6.jar reflectasm-1.11.9.jar minlog-1.3.1.jar kryo-serializers-0.45.jar msm-kryo-serializer-2.3.2.jar memcached-session-manager-tc9-2.3.2.jar spymemcached-2.12.3.jar memcached-session-manager-2.3.2.jar …

Linux 权限管理实践:精确控制用户对 systemctl 和 journalctl 命令的使用

前言 在 Linux 系统管理中,精确控制用户对特定命令的访问权限是一项关键的安全实践。使用 systemctl 和 journalctl 命令时,不当的权限设置可能会导致不必要的风险。本篇博客将详细讨论如何通过 sudoers 文件和 Polkit 策略为不同用户配置 systemctl 和…

【Unity3D】报错libil2cpp.so找不到问题

mainTemplate.gradle文件末尾添加: **IL_CPP_BUILD_SETUP** 此报错发生在低版本的Unity升级到高版本后,例如Unity2019升级到Unity2021,而Unity2019默认创建的mainTemplate.gradle文件是不包含**IL_CPP_BUILD_SETUP** 因此会导致libil2cpp.so…

如何在繁忙的生活中找到自己的节奏?

目录 一、理解生活节奏的重要性 二、分析当前生活节奏 1. 时间分配 2. 心理状态 3. 身体状况 4. 生活习惯 1. 快慢适中 2. 张弛结合 3. 与目标相符 三、掌握调整生活节奏的策略 1. 设定优先级 2. 合理规划时间 3. 学会拒绝与取舍 4. 保持健康的生活方式 5. 留出…

1.metagpt中的软件公司智能体 (PrepareDocuments Action)

1. PrepareDocuments Action 定义了一个 PrepareDocuments 类,它继承自 Action 类,并实现了一个用于准备项目文档的功能。具体来说,它的主要作用是初始化项目文件夹,设置 Git 环境,并将新增的需求写入 docs/requireme…