#本来是想先cocos,在学unity,最后学习Ue的,但是大学课设必须要用C++写,而cocos2dx实在是找不到好的学习路径(指没有好的视频或者文章学习)就只能先简单学习一下UE。#
本系列基于B站鱼香肉丝不要鱼耶的教学视频进行撰写笔记跳转链接:
【虚幻5】UE5C++零基础全网全流程开发从入门到进阶教程合集(持续跟新中)_哔哩哔哩_bilibili
课前注意: :
1.一定需要注意把UE和VS连接在一起,用UE生成C++类,方便后面调试蓝图
2.性能原因,有些生成可能会比较慢一时半会出现不了正确的东西,可以等一会
3.在一些默认设置尽量不要该,否则错误不断
4.命名一定要想好,后面修改起来很麻烦(这一点要表扬QT)
1.项目的创建
在确定好一个游戏类型时,需要添加一些必要的自定义类:
如:一个游戏一定需要一个玩家,一个HUD显示各种信息,一个pawn来模拟玩家的对手,一个控制器来控制玩家,一个玩家状态来保存玩家状态
(你也可以从默认的UE界面看看,一般游戏需要那些东西,一般例举出来,在UE默认界面商店就是需要的,上面的东西你也可以在侧边栏找到)
读到这里你可能 会觉得真的有必要这么多类吗?其实不是必然的,如果你想做一个小游戏就只需要玩家血量来确保玩家状态,那么那你可以舍弃掉这个玩家状态类,不过为了以后游戏的拓展性,推荐加上这个玩家状态类,这样也更加能够体现面向更细节对象的思想。
下面是添加对象的方法:
在工具栏找到生成C++Class
然后在找到你想生成的对应类
(我们这里以创建自己的游戏mode作为例子创建了) {
(1)GameMode,(2)HUD,(3)GameState,(4)Pawn,(5)PlayerController,(6)PlayerState
}
同样你找不到的时候可以直接在所有类里面搜索
这里基本的创建即可
下面是附加课,可以不用学习,但是推荐学习,可以了解一下UE的工作逻辑(UE的默认函数好像是包含了这个,如果出了问题也可以按照下面的方式书写,但不一定是这个错误,需要自己排查)
我们到自定义的GameMode头文件下声明一个构造函数,然后到对应cpp文件下生成对应定义
DefaultPawnClass = AMyPawn::StaticClass();
HUDClass = AMyHUD::StaticClass();
GameStateClass = AMyGameMode::StaticClass();
PlayerControllerClass = AMyPlayerController::StaticClass();
PlayerStateClass = AMyPlayerState::StaticClass();
然后关闭UE生成(ctrl+b)一下 ,再运行一下(ctrl+r)
回到UE界面就可以看见这些啦:
这样就可以方便在UE中使用了。
那么今天的小学习就到这里啦(多多练习一下(虽然后面项目每次都会写这个(》——《)))