网站专业建设,上海比较出名的互联网公司,西安网站制作首页,wordpress评论折叠1.思路整理#xff1a; 如何入手#xff1f;
角色可能是每个游戏的最重要的部分#xff0c;所以一般可以先从角色入手#xff0c;如果游戏很复杂#xff0c;可以进行拆分设计。 蓝图创建地图#xff1a; 创建默认Pawn#xff1a; 编写GameMode默认构造函数#xff1a;…1.思路整理 如何入手
角色可能是每个游戏的最重要的部分所以一般可以先从角色入手如果游戏很复杂可以进行拆分设计。 蓝图创建地图 创建默认Pawn 编写GameMode默认构造函数 将创建的BirdPawn设置为默认Pawn 引入Paper2D模块会加载FlipBook类似连续帧数图片 在UE4中创建FlipBook序列 创建飞行动画三帧 选取Sprite类型的资产但是图片加载进入时是纹理类型 转换纹理到Sprite 将图片按照帧率填入 FlipBook面板 单帧也可以拖动进行调整帧率 UEC中编写BirdPawn代码首先创建根组件能力 创建一个FlipBook组件
将FlipBook绑定到根组件上 可以被加载到Ue中的能力 添加相机 将UE中动画资源加载到FlipBook上 调整相机位置为了垂直于图片 设置背景
怎么知道一个资源需要什么样的组件呢
把资源拖入场景组件就会显示 创建组件对象 创建渲染组件并且设置为根节点 将创建的随机背景切换函数进行实现 在BeginPlay中调用函数 分析在什么时候开始设置背景游戏运行时那么需要在GameMode中写初始化背景逻辑创建一个类对象 BeginPlay中进行创建背景Actor Ue运行结果显示 显示不出背景原因分析由于相机吊臂的碰撞机制当有物体在相机和相机关联物体之间时相机吊臂会向前推产生碰撞所以需要关闭相机吊臂碰撞 编译运行 随机背景设置分析首先要确定有几个背景就要创建几个类对象 创建完对象之后要先将资源加载进来 如果都为空报错 随机赋值给背景根组件设置背景NEW知识Fmath随机取值 将相机设置为非正交关系投射关系2D游戏不会因摆放位置而产生视觉差距 改变投射宽度 设置地面会移动的地面 创建一个地板类会移动需要加载资源移动是行为资源是属性所以创建类对象构建移动函数 在构造函数中进行初始化属性 移动的行为定义函数 设置三块板子 初始化三块板子 初始化板子位置 如果板子出了屏幕则在后面再次出现 循环播放地板移动优化 设置飞行分析飞行是状态所以需要多种状态使用枚举类型定义状态 在类内部定义枚举类型变量 绑定输入事件 飞行函数 改变状态函数 设置力 添加与地板碰撞
首先创建碰撞函数代码段动态代理需要加UF函数 在初始化函数中绑定物理碰撞 碰撞逻辑模板 设计小鸟抬头分析向上飞行头向上抬向下落头向下所以头的方向是和飞行时x轴的偏移有关当X正向偏移小鸟的z轴旋转以x.speed为依据 设置声音 设计管道
创建actor类用数组管理
设置根节点 加载资源 以for循环进行设置节点然后绑定到根节点上将新设计的接待你绑定在Group节点上设置节点的位置 设计管道逻辑
定义变量 gameplay时 随机产生 数组 随机出现不同排列的管道 更新管道的位置在tick中调用 加分设计新建GameState
行为和属性 在管道移动中会产生分数变化所以在管道类中进行编写加分逻辑调用默认GameStateBase