- 博客(141)
- 收藏
- 关注
原创 UE4装饰器事件写法和执行顺序
-----Lua的写法require "UnLua"local BTDecorator_Delayed_C = Class()function BTDecorator_Delayed_C:ReceiveExecutionStartAI(OwnerActor,ControlledPawn)--开始调用 print("2");--开始执行--任务完成将不在执行endfunction BTDecorator_Delayed_C:ReceiveObserverActivatedAI(Own.
2020-11-19 22:37:08 742
原创 UE4C++移动的几种方式
1.Actor->SetActorLocation()//使用位置拿到位置增加向量的方式实现步骤:1.1.获取演员当前位置1.2.设置演员位置(当前位置+偏移量)2.AActor::AddActorWroldOffset()与AddActorLocalOffset//使用添加偏移量的方式2.1.添加演员世界偏移(三维向量);2.2.添加演员相对偏移(三维向量);//一般用于子组件的相对移动...
2020-09-19 16:53:55 1999
原创 UE4学习路线
*路线*:1.C++基础扎实2.采用C++编写游戏逻辑3.适用虚幻引擎底层C++框架4.Module配置和插件使用5.UBT和UHT6.掌握Core模块的C++库:Fstring,Tarray,YE_LOG.....7.熟悉了解掌握CoreUObject:宏,GC,序列化......8.熟悉C++和BP交互的方式*学会C++的标志*:1.懂得解决各种编译链接错误,常是因为Module配置出错2.懂得常见编写套路,CreateDefaultSuBObject,UPR
2020-09-19 16:50:04 4206
原创 UE4C++加载素材
头文件"UObject/ConstructorHelpers.h"static ConstructorHelpers::FObjectFinder<UStaticMesh>StaticMeshAsset(TEXT(“路径”));静态类 ConstructorHelpers::FObjectFider<加载类型>类型Aeest(加载路径);
2020-09-19 16:25:07 397
原创 UE4GamePlay框架学习
1.Actor概念 //一般用与场景中静态的物体组成世界的单位个体//存在于游戏场景的每一个对象可互相嵌套//每个Actor都可以挂在另外一个Actor上组件的容器//Actor本身是为空的,需要挂载对应的组件给与Actor相应的功能2.Component组件//赋予继承Actor的对象的一系列功能组件是一种能力为Actor提供能力能力是跨游戏的//可移植到其他游戏3. ALevelScriptActor-关卡蓝图//场景唯一的一种逻辑处理一个特殊的默认脚本Actor:.
2020-09-19 16:15:25 577
原创 UE4C++设置Character控制器
GetCharacterMovement()->bOrientRotationToMovement = true;//获得控制器运动->b朝向旋转朝移动//设置移动是否朝着方向旋转GetCharacterMovement()->RotationRate = FRotator(0.0F, 540.0f, 0.0f);//获得控制器运动->旋转比例 //设置旋转比例???GetCharacterMovement()->JumpZVelocity = 600.0f...
2020-09-19 16:14:05 1027
原创 UE4C++屏幕打印测试函数
GEngine->AddOnScreenDebugMessage(-1,5.0f,FColor::Blue,Fstring::SanitizeFloat(val));
2020-09-12 20:36:35 649
原创 UE4C++设置网格的移动力与旋转力
网格组件引用->AddForce(FVertor(0.1f,0.1f,0.1f));//移动力 参数3.不计算质量网格组件引用->AddTorque(Fvertor(0.1f,0.1f,0.1f));//旋转力
2020-09-09 00:30:01 413
原创 UE4C++创建根组件
RootComponent=Createfaultsubobject<UstaticMeshComponent>(TEXT("RootComponent"));
2020-09-09 00:26:47 952 1
原创 UE4C++设置为父对象(节点)
需要设置的组件->SetupAttachment(GetRootComponent());//设置上级需要设置的组件->SetupAttachment((设置的对象));//某个对象
2020-09-09 00:26:30 1269
原创 UE4C++设置Actor与父Actor的相对位置和相对旋转
需要设置的Actor->SetRelativeLocation(FVetor(-300.0f,0.0f,300.0f));//设置基于父类的相对位置需要设置的Actor->SetRelativeRotation(FVetor(-45.0f,0.0f,0.0f));//设置基于父类的相对旋转
2020-09-09 00:26:14 2492
原创 限制值设置的最小值和最大值
UPROPERTY(EditAnywhere,Mate=(ClampMin=-5.0f,ClampMax=5.0f,UIMin=-5.0f,UIMax=5.0f))//Mate设置最小最大值
2020-09-08 11:52:03 1401
原创 设置在任意地方可见(蓝图类,细节面板)
UPROPERTY(Visiblewhere,Category="My Actor")属性宏(任意地方可见,设置分类="分类名")
2020-09-08 11:30:51 165
原创 在任意地方可编辑
UPROPERTY(EditAuywhere,Category="My Actor")属性宏(设置在任意地方可编辑,设置分类=分类名)
2020-09-08 11:28:38 69
原创 可在蓝图类可见,但不可修改
UPROPERTY(VisibleDefaultsOnly,Category="My Actor")UPROPERTY(设置可在蓝图可见不可修改值,设置分类=分类名)
2020-09-08 11:06:01 334
原创 UE4反射和垃圾回收系统
反射:程序在运行时检查自身,将参与反射的数据(变量,类,函数等等)暴露给蓝图,允许运行时区调用垃圾回收:与C#的GC一致需要头文件 "MyActor.generated.h"//这个头文件必须在最后UCLASS() //标识类参与反射UPROPERTY()//标识属性参与反射UFUNCTION()//标识函数参与反射GENERATED_CODE//反射后的结果放置位置...
2020-09-08 10:44:32 193
原创 C++多态虚析构和纯虚析构
父类指针在析构时,不会释放子类中析构函数,导致子类如果有堆区属性不能被释放,出现泄露作用:解决父类指针在释放时无法访问子类的析构代码class A{public: string *name;virtual ~A()=0;//一个纯虚析构,表示这个类是抽象类//虚析构则表示这个类不是抽象类}class B:public::A{B(){name=new string("小明");//在堆在开辟一块内存} public: vo...
2020-09-08 10:44:12 80
原创 C++多态案例 制作饮品
class A //抽象类{public: string name;virtual void add()=0;//一个虚函数}class B:public A//继承一个抽象类{add()//重写抽象类虚函数{string B::name="咖啡";cout<<"这是一杯"<<name<<endl;}}int main(){B b;b.add();//结果为这是一杯咖啡}...
2020-09-08 10:44:02 290 1
原创 C++纯虚函数抽象类
纯虚函数语法:virtual void 函数名()=0;1.只要有一个纯虚函数这个类就是抽象类2.抽象类无法实例化对象3.继承抽象类必须实例化对象,否则这个类就是抽象类
2020-09-08 10:43:51 86
原创 C++使用多态实现计算器
作用:结构清晰可读性强,利于扩展class abstractA{public : int a; int b;virtual int (string oper){retrun 0;}}class A:public:abstract//加法{int(string oper)//重写父类的虚函数{return a+b;}}int main(){A*a=new A;//创建一个对象Aabstract&...
2020-09-08 10:43:42 827
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人