赞
踩
GetWorld()->SpawnActor() //创建
GetWorld()->GetActorList() //查询
unreal中支持反射的宏定义,蓝图调用反射是基础设置
DEFINE_FUNCTION(UMyObject::execIsBoy)
{
P_FINISH;
P_NATIVE_BEGIN;
*(bool*)Z_Param__Result=P_THIS->IsBoy();
P_NATIVE_END;
}
代码编译在两个阶段中进行
UnrealBuildTool(UBT)编译*.Target.cs配置
public 构造函数(TargetInfo Target)
{
Type = TargetType.Game;
}
UnrealBuildTool源码中定义的编译目标
public enum TargetType { /// <summary> /// Cooked monolithic game executable (GameName.exe). Also used for a game-agnostic engine executable (UE4Game.exe or RocketGame.exe) /// </summary> Game, /// <summary> /// Uncooked modular editor executable and DLLs (UE4Editor.exe, UE4Editor*.dll, GameName*.dll) /// </summary> Editor, /// <summary> /// Cooked monolithic game client executable (GameNameClient.exe, but no server code) /// </summary> Client, /// <summary> /// Cooked monolithic game server executable (GameNameServer.exe, but no client code) /// </summary> Server, /// <summary> /// Program (standalone program, e.g. ShaderCompileWorker.exe, can be modular or monolithic depending on the program) /// </summary> Program, }
unreal按照场景节点添加的顺序,反向一次调用初始化
// Called when the game starts or when spawned
void AMyCharacter::BeginPlay()
{
Super::BeginPlay();
}
// Called every frame
void AMyCharacter::Tick(float DeltaTime)
{
Super::Tick(DeltaTime);
}
c++和蓝图交互的,回调函数
Bind()
绑定到一个现有的代理对象上。
BindRaw()
绑定到一个原始的C++指针全局函数代理上。原始指针不使用任何引用,所以如果从代理的底层删除了该对象,那么调用它可能是不安全的。因此,当调用Execute()时一定要小心!
BindSP()
绑定一个基于共享指针的成员函数代理。共享指针代理保持到您的对象的弱引用。您可以使用 ExecuteIfBound() 来调用它们。
BindUObject()
绑定一个基于UObject的成员函数代理。UObject 代理保持到您的对象的弱引用。您可以使用 ExecuteIfBound() 来调用它们。
UnBind()
解除绑定该代理。
Execute()
ExecuteIfBound()对于没有返回值的代理
IsBound()判断函数是否已经“绑定”了代理
class FLogWriter
{
void WriteToLog( FString );
};
DECLARE_DELEGATE_OneParam( FStringDelegate, FString );//代理
代理对象绑定
FSharedRef< FLogWriter > LogWriter( new FLogWriter() );
WriteToLogDelegate.BindSP( LogWriter, &FLogWriter::WriteToLog );
WriteToLogDelegate.Execute( TEXT( "Delegates are spiffy!" ) );
蓝图可以做为脚本绑定到对象实例上,BP_Object
蓝图实例是类对象的思想,图形化编程的方式可以调用对象、函数数据,蓝图有成员变量和函数,还有构造
基本函数print打印字符串、set变量、get变量
目标节点输入,可以理解成输入对象,调用对象函数
执行节点输入,可以理解成下一个执行的运算
蓝图调试,运行后检查,场景中的输入,蓝图调试依赖场景输入(设计器中没法输入)
蓝图查看类,右上角父类
关卡默认的蓝图,通过菜单栏打开
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。