5593人加入学习
(18人评价)
【旧版】Unreal初级课程 - 3D吃豆人

旧版课程,制作完成于2018-03-29,基于Unreal 4.18

价格 免费

新建C++代码:为豆创建的代码

命名为:Collectables,并设置为 公有

 

报红因为,Collectables.h和Collectables.cpp文件夹目录不一致

解决报红:在引入的头文件中加上Public/

#include "#Public/Collectables.h"

#include "Collectables.generated.h" 这个一定要放在所有引入的头文件的最下面,不然Unreal编译不能通过

 

编码规范:

http://api.unrealengine.com/CHN/Programming/Development/CodingStandard/index.html

命名规则

命名(如类型或变量)中的每个单词需要大写首字母,单词间通常无下划线。例如:Health和UPrimitiveComponent,而非lastMouseCoordinates或delta_coordinates。

类型名前缀需使用额外的大写字母,用于区分其和变量命名。例如:FSkin为类型名,而Skin则是FSkin的实力。

模板类的前缀为T。

继承自 UObject 的类前缀为U。

继承自 AActor 的类前缀为U。

继承自 SWidget 的类前缀为S。

抽象界面类的前缀为I。

列举的前缀为E。

布尔变量必须以 b 为前缀(例如 bPendingDestruction 或 bHasFadedIn)。

其他多数类均已F为前缀,而部分子系统则以其他字母为前缀。

Typdefs 应以任何与其类型相符的字母为前缀:若为结构体的Typedefs,则使用F;若为 UObject 的Typedefs,则使用U,以此类推。

特别模板实例化的Typedef不再是模板,并应加上相应前缀,例如:

typedef TArray<FMytype> FArrayOfMyTypes;

C#中省略前缀。

多数情况下,UnrealHeaderTool需要正确的前缀,因此添加前缀至关重要。

类型和变量的命名为名词。

方法名是动词,以描述方法的效果或未被方法影响的返回值。

变量、方法和类的命名应清楚、明了且进行描述。命名的范围越大,一个良好的描述性命名就越重要。避免过度缩写。

所有变量应逐个声明,以便对变量的含义提供注释。其同样被JavaDocs格式需要。变量前可使用多行或单行注释,空白行为分组变量可选使用。

所有返回布尔的函数应发起true/false的询问,如 IsVisible() 或 ShouldClearBuffer() 。

程序(无返回值的函数)应在Object后使用强变化动词。一个例外是若方法的Object是其所在的Object;此时需要以上下文来理解Object。避免以“Handle”和“Process”为开头;此类动词会引起歧义。

若函数参数通过引用传递,同时该值会写入函数,建议以“Out”作为函数参数命名的前缀(非必需)。此操作将明确表明传入该参数的值将被函数替换。

若In或Out参数同样为布尔,以b作为In/Out的前缀,如bOutResult。

返回值的函数应描述返回的值,命名应说明函数将返回的值。此规则对布尔函数极为重要。请参考以下两个范例方法:

// True的意义是什么?

bool CheckTea(FTea Tea)

 

// 命名明确说明茶是新鲜的

bool IsTeaFresh(FTea Tea)

 

范例

float TeaWeight;

int32 TeaCount;

bool bDoesTeaStink;

FName TeaNam;

FString TeaFriendlyName;

UClass* TeaClass;

USoundCue* TeaSound;

UTexture* TeaTexture;

 

 

 

先在虚幻里面点击编译,再点击DebugGame Editor,再点击Development,解决报红

 

显示所有类:

[展开全文]

授课教师

SIKI学院老师

课程特色

图文(1)
下载资料(1)
视频(30)

学员动态