UE4 C++知识点记录

这篇博客详细记录了UE4使用C++开发过程中的重要知识点,包括c++截屏方法,动态创建并加载流关卡的步骤,友元函数和友元类的概念及应用,如何使用UPROPERTY显示结构体属性,调用AIMoveTo的实现,编辑器模式下build.cs文件的模块添加,函数传参特别是带有返回值的方法,AI功能如FAIStimulus和UAISenseID的转换,以及反射操作和自定义LogCategory的实践。
摘要由CSDN通过智能技术生成

学习UE4知识点记录。

1.c++截屏

.h

	/* 获取屏幕截图 
	@ fileName命名规则如:"ScreenShotCut.png"
	@ showUI,是否显示UI
	@ addFilenameSuffix,是否增加后缀00000,防止重名
	@ return,截屏图片绝对路径
	*/
	static FString ScreenShotCut(FString fileName,bool showUI,bool addFilenameSuffix);

.cpp

	
	FString UToolLibrary::ScreenShotCut(FString fileName, bool showUI, bool addFilenameSuffix)
 	{
    
		ScreenshotRequest::RequestScreenshot(fileName, showUI, addFilenameSuffix);
		FString fileNameNextScreenshot = FScreenshotRequest::GetFilename();
		FScreenshotRequest::CreateViewportScreenShotFilename(fileName);
		
		return FPaths::ConvertRelativePathToFull(fileNameNextScreenshot);
	 }

2.动态创建并加载流关卡

原文:UE4中动态创建并加载流关卡

3.friend——友元函数,友元类

友元函数
将全局函数声明为友元的写法如下:

friend 返回值类型 函数名(参数表);

将其他类的成员函数声明为友元的写法如下:

friend 返回值类型 其他类的类名::成员函数名(参数表);

但是,不能把其他类的私有成员函数声明为友元。

class CCar;  //提前声明CCar类,以便后面的CDriver类使用
class CDriver
{
   
public:
    void ModifyCar(CCar* pCar);  //改装汽车
};
class CCar
{
   
private:
    int price;
    //friend int MostExpensiveCar(CCar cars[], int total);  //声明友元
    friend void CDriver::
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值