U4S4L9——Packed Assets 打包资源数据配置
U4S4L9——Packed Assets 打包资源数据配置
打包资产配置的作用
Packed Assets 翻译过来的意思是 打包资产(资源),它的作用是确定如何处理组中的资源
比如:你可以指定生成AB包的位置和包压缩相关的等等设置
对于我们来说 关于组的设置参数
我们必须要掌握的就是可以为每一个组设置打包和加载的路径
远程加载还是本地加载,都在组中进行设置
打包资产参数讲解
组设置的作用是确定如何在内容中处理组中的资源 比如:你可以指定生成AB包的位置和包压缩相关的设置
Build & Load Paths:配置文件路径对
定义可寻址构建系统在哪个路径为此组创建内容,
以及可寻址系统在运行时在何处加载这些内容
选择Custom就会自定义加载路径
Build Path:打包路径
LocalBuildPath - 本地路径
RemoteBuildPath - 远程路径
Load Path:加载路径
LocalLoadPath - 本地路径
RemoteLoadPath - 远程路径
Path Preview:路径预览
Advanced Op ...
U4S4L8——AddressableAssetSettings 可寻址资源数据设置
U4S4L8——AddressableAssetSettings 可寻址资源数据设置
配置文件有哪些
我们在导入Addressables包之后 创建的那些就是配置文件
AddressableAssetsData文件夹下的内容都是本质为ScriptableObject的数据配置文件
我们可以在工程中对Addressables相关内容进行设置,他们会影响我们的打包方式等等相关内容
AddressableAssetsData(可寻址资源数据)
AssetGroups(资源组)
当我们创建一个组就会多一些相关数据配置文件
AssetGroupTemplates(资源组模板,主要是对资源组的一些默认设置)
Packed Assets:打包资源数据配置
DataBuilders(数据生成器,这些内容决定了在不同模式下,资源打包和使用的方式)
BuildScriptFastMode:构建脚本快速模式
BuildScriptPackedMode:构建脚本打包模式
BuildScriptPackedPlayMode:构建脚本打包播放模式
BuildScriptVirtu ...
U4S4L7——Profile 概述窗口配置
U4S4L7——Profile 概述窗口配置
概述配置的作用
Profiles窗口中配置的变量决定了我们之后 打包加载资源时的路径
主要用于配置Addressables打包(构建)加载AB包时使用的一些变量,这些变量定义了:
在哪里保存打包(构建)的AB包
运行时在哪里加载AB包
您可以添加自定义变量,以便在打包加载时使用,我们之后在设置组中打包和加载路径相关时,都是使用这里面的变量
打开Profiles窗口
方法一:Window > Asset Management > Addressables > Profiles
方法二:在AddressableAssetSettings中打开
方法三:在Addressables Groups窗口中打开
Profiles 窗口参数相关
右侧是默认的一些路径相关
local:本地,需要选择Custom才能自定义
Local.BuildPath:本地构建路径,默认在项目的Library库文件夹中
Local.LoadPath:本地加载路径,在哪里加载本地已有的资源
...
U4S4L6——动态加载多个资源
U4S4L6——动态加载多个资源
本章代码关键字
12Addressables.LoadAssetsAsync<>() //根据资源名或标签名加载多个对象,也可以根据多种信息加载对象Addressables.MergeMode //利用多种信息加载多个资源时,不同信息映射的不同资源组时,合并加载模式的枚举
根据资源名或标签名加载多个同名对象
可以根据 资源名或标签名+资源类型 来加载所有满足条件的对象
可以根据 资源名+标签名+资源类型+合并模式 来加载指定的单个或者多个对象,详见:Addressables.MergeMode
注意:我们还是可以通过泛型类型,来筛选资源类型
假设要加载这些同名资源:
参数一:资源名或标签名
参数二:加载结束后的回调函数,每加载出来一个就执行一次的回调函数
参数三:如果为true表示当资源加载失败时,会自动将已加载的资源和依赖都释放掉;如果为false,需要自己手动来管理释放
1234567void Start(){ Addressables.LoadAssetsAsync ...
P2L3——市场调研
P2L3——市场调研
市场调研
市场调研的主要目的
通过调研关键数据来为我们的游戏项目制定应对策略
如何获取数据进行分析
通过各种数据网站获取你需要的数据,可以根据自己团队的实际情况选择免费或收费内容进行分析研究
强调:在没有数据依据的前提下,千万不要凭感觉盲目的去开始正式的项目开发
对于独立游戏开发者没有那么多幸运儿,机会只给有准备的人
市场调研的主要目的
帮助团队更好的了解游戏市场的情况和用户需求,作为游戏项目决策和执行的依据
说人话:通过调研关键数据来为我们的游戏项目制定应对策略
调研关键数据
确认市场需求
了解竞争环境
制定应对策略
指导产品设计
制定营销策略
确定商业模式
调研关键数据
确定市场需求
通过调研市场,确定目标用户的需求和偏好,找出潜在的市场机会和空白点,我们需要获取的一些关键数据有:
不同类型游戏的市场份额、市场增长率
同类型已有产品的市场份额、收益、成本、用户评价、应用评分等数据
同类型已有产品的下载量、用户留存率,付费转化率的数据
等等
了解竞争环境
可以通过分析同类型产品的情况,包括分析他们的产品特点、市场份额、营销策略 ...
P2L2——确定游戏类型
P2L2——确定游戏类型
确定游戏平台
从游戏大类型发展路径中,诞生出了几大游戏平台:
街机游戏
主机游戏(XBox、PS、Switch 等等)
个人电脑(PC)游戏
移动(手机)游戏
网页游戏
我们首先要确定你的游戏项目想要发布的平台,是否单一平台发布或多平台发布
确定游戏类型
我们可以大致的把游戏分成许多类型:比如 动作类、冒险类、休闲类、角色扮演类、模拟类、体育类、策略类等等等
但是很多游戏往往都是跨类别的,比如 动作类角色扮演游戏、动作类冒险游戏 等等
因此当我们想要将某一个游戏进行类型划分时,往往会产生犹豫,因为某些游戏可能具备多种游戏类型的特点
那么此时,我们经常会使用它表现最明显或更具差异化的特性将其归类,大家也不用过于纠结某个游戏到底是什么类型
接下来,我们对一些主流的游戏类型以及其代表作进行一个简单的介绍:
总结一下,主流的游戏类型有:
角色扮演类(ARPG、SRPG、MMORPG)、格斗类、即时战略类、射击类、
第一人称射击类、第三人称射击类、动作类、冒险类、动作冒险类、模拟/战略类、
MOBA、卡牌类、肉鸽类、体育类、赛车类、养成类、益智类 ...
U4S4L5——动态加载单个资源
U4S4L5——动态加载单个资源
本章代码关键字
123Addressables.LoadAssetAsync<>() //通过名字或者标签来异步加载资源Addressable.ReleaseAsset() //卸载资源Addressables.LoadSceneAsync() //通过名字异步加载场景
通过资源名或标签名动态加载单个资源
根据名字或标签加载单个资源相对之前的指定加载资源更加灵活
主要通过Addressables类中的静态方法传入资源名或标签名进行加载
注意:
如果存在同名或同标签的同类型资源,我们无法确定加载的哪一个,它会自动加载找到的第一个满足条件的对象
如果存在同名或同标签的不同类型资源,我们可以根据泛型类型来决定加载哪一个
释放资源时需要传入之前记录的AsyncOperationHandle对象
注意:一定要保证资源使用完毕过后再释放资源
场景异步加载可以自己手动激活加载完成的场景
命名空间:UnityEngine.AddressableAssets 和 UnityEngine ...
U4S4L4——Label标签的作用
U4S4L4——Label标签的作用
我们会经常使用指定资源加载的方式加载资源吗
我们上节课学了加载指定资源,但它并不会经常使用,要根据实际情况
指定加载资源这种模式我们必须在脚本中声明各种标识类来指定加载的资源,不够灵活,做一些小项目没问题
但是在实际商业项目开发中,很多时候加载什么资源都是根据配置文件决定的,往往都是动态加载
所以我们需要学习根据名字或标签去加载对应的资源,这样我们就可以读表进行加载
添加标签
相同作用的不同资源,我们可以让他们的资源名相同,通过标签Label区分他们来用途,用于之后的动态加载
利用名字和标签可以单独动态加载某个资源,也可以利用它们共同决定加载哪个资源
在点击标签后,点击右上角的齿轮(2021及以后的新版本)或者点击Manage Labels(旧版按钮)即可添加标签
标签添加完毕即可为资源选择之前添加的标签
标签的作用
首先需要强调,我们之后学习的动态加载资源时,是可以通过名字和标签来加载资源的
举例说明 1
游戏装备中有一顶帽子:Hat
但是它可以有不同的品质,比如:红、绿、白、蓝
那么我们可以为这个帽子添加多个材质球资源(或者贴图资 ...
P2L1——预研立项的基本流程
P2L1——预研立项的基本流程
预研立项处于整个开发周期中的位置
预研立项是游戏项目开发时一开始必须要进行的步骤,但是对于新人或新团队来说往往因不够重视,造成项目后期的失败。
你在预研立项阶段付出的越多,那你的项目成功的几率就越大
它是非常非常重要的一个开发阶段,开发团队或个人需要引起重视
除非你或你的团队没有生存压力,做游戏纯粹是兴趣爱好或者为爱发电
基本流程
各阶段主要工作
以下各个阶段的前三个阶段的前后顺序根据实际情况而定
市场调研
大公司可能会有专门的市场团队协助,调研可能的热门赛道 或 指定游戏类型后的赛道
分析对应赛道热门产品数据(想办法获取),比如下载量、日活跃、成本、营收、商业模式等等,产出基本游戏概念
组建核心团队
顾名思义,根据项目参与人数决定,如果是一个人开发,则可以跳过这一步,
如果后面要拉人,则这一步也可以延后执行
确定游戏类型
定位自己项目的游戏类型,游戏类型可以确定核心玩法 甚至 玩家群体,从而进行市场调研分析
需求分析
美术资源量(粗略大概):模型、动作、特效、UI等等
程序需求:功能开发、工具开发等等
玩法需求:核心玩法设计、同 ...
P2——独立游戏开发ARPG
P2——独立游戏开发ARPG
前置知识点
C# 相关知识点
Unity 相关知识点
UGUI 相关知识点
数据持久化之2进制
小框架重置版
如何进行学习和学习重点
一切从零开始开发,如同传统商业游戏开发流程一样的来制作我们的项目
作为程序开发教学课程,会把学习重点放到 设计开发 和 发行上线 上
因为这两部分工作和我们程序工种息息相关
而 预研立项 和 测试调优 两部分,
本课程会根据讲师的多年的工作经验简单给大家讲解
也让大家也能够了解到这两部分的重要性
(特别对于独立游戏开发者)
主要学习内容
预研立项
预研立项的基本流程
确定游戏类型
市场调研
核心玩法Demo产出
预研立项流程中的立项评估
程序准备工作
游戏开发前后端程序区别
【程序准备工作】技术栈选择
版本管理相关
【程序准备工作】为何要使用版本管理软件
使用基于Github Desktop的版本管理
【git版本管理】Github注册登录,以及Gitbub Desktop的下载安装
【git版本管理】Git创建新的代码仓库,以及将已有项目存储为库
【git版本管理】汉 ...