虚幻Unreal - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(85评价)
价格: 3059.00元
  1. template<class UserClass>
    FInputActionBinding& UInputComponent::BindAction(
        const FName ActionName,//映射名
        const EInputEvent KeyEvent,//函数触发条件
        UserClass * Object,//引起触发的对象
        typename FInputActionHandlerWithKeySignature::TUObjectMethodDelegate< UserClass >::FMethodPtr Func//函数名
    );//将函数与项目设置中的Action Mappoings绑定。返回的引用再下一次绑定之前有效。
  2. virtual UActorComponent* AActor::FindComponentByClass
    (
        const TSubclassOf < UActorComponent > ComponentClass//组件(Component)
    )//检索组件(Component)数组,返回第一个匹配的组件
[展开全文]
菌丶 · 2019-02-26 · 0
  1. struct FHitResult;//保存命中组件信息。
  2. AActor* FHitResult::GetActor();//返回被命中组件的AActor,如果没有,返回NULL。
  3. bool UWorld::LineTraceSingleByObjectType
    (
        struct FHitResult & OutHit,//第一个触碰组件信息
        const FVector & Start,//光线起始点
        const FVector & End,//光线结束点
        const FCollisionObjectQueryParams & ObjectQueryParams,//用于检测触碰对象的属性,触碰的对象必须拥有参数指定的属性,否则将忽视该组件
        const FCollisionQueryParams & Params//用于检测碰撞
    )//使用跟踪光线,得到第一个触碰光线的组件的FHitResult。单一拾取,检测第一个碰撞后不再检测

资料:https://blog.csdn.net/zzk1995/article/details/49010999

[展开全文]
菌丶 · 2019-02-26 · 0

 

  1. virtual UWorld* AActor::GetWorld();//得到世界对象
  2. APlayerController* UWorld::GetFirstPlayerController();//返回第一个玩家控制器,如果没有则返回NULL
  3. virtual void APlayerController::GetPlayerViewPoint( FVector& Location,
        FRotator& Rotation);//返回玩家的视角
  4. struct FVector;//表示三维空间向量
  5. struct FRotator;//以度数表示x,y,z旋转信息
  6. FVector FRotator::Vector();//得到视野方向的单位向量。
[展开全文]
菌丶 · 2019-02-25 · 0
  1. APawn* AController::GetPawn();//得到一个APawn。
  2. class APawn :
        public AActor ,
        public INavAgentInterface //APawn是一个玩家和AI的基类,是一个物理行为表现类。
[展开全文]
菌丶 · 2019-02-25 · 0
  1. 在Unreal中,生成DefaultPawn的蓝图在第一次生成DefaultPawn_Blueprint窗口时有“组件” 窗口,如果不小心关掉DefaultPawn_Blueprint窗口,重进入DefaultPawn_Blueprint窗口时可能不再有“组件”窗口,这将导致无法生成C++类。 
  2.  void DrawDebugLine
    (
        const UWorld * InWorld, //世界对象
        FVector const & LineStart, //开始
        FVector const & LineEnd, //结束
        FColor const & Color, //颜色
        bool bPersistentLines, //是否保持线条
        float LifeTime, //线条保持时间
        uint8 DepthPriority,
        float Thickness //线条厚度
    )//关于bPersistentLines不管为true或false,如果LifeTime不为-1,线条都会保留LifeTime指定时间,如果bPersistentLines为true,且LifeTime<0,那么线条默认保留1秒,LifeTime>0,则按LifeTime计算。
[展开全文]
菌丶 · 2019-02-25 · 0
  1. UPROPERTY 用途广泛。它允许变量被复制、被序列化,并可从蓝图中进行访问。垃圾回收器还使用它们来追踪对 UObject 的引用数。
  2. UPROPERTY后面一定要跟一个变量,否则会报错。
  3. 不建议在构造函数中获取对象,Unreal加载项目初期的时候最开始调用各种类的构造函数,但此时需要获取的对象可能还并没有实例化。这将导致Unreal直接Crash。
[展开全文]
菌丶 · 2019-02-25 · 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[展开全文]
UnityLIYUNFAN · 2018-10-26 · 0

把场景中门Actor的细节属性中“Mobility”属性设置为“Movable”,然后给门Actor创建一个C++组件,命名为“DoorOpenComponent”,在该组件的“.cpp”文件下首先引入一个头文件,代码如下:

#include "GameFramework/Actor.h"

然后在“BeginPlay函数”中写如下代码,再进行编译,即可在游戏开始时让门处于向外开90°的状态:

// 获得Component所属的门Actor
AActor * aComponentOwner = GetOwner();
// 设置一个FRotator,用来表示门Acotr的旋转量
FRotator DoorRotation = FRotator(0, 90, 0);
// 设置门Actor的旋转量
aComponentOwner->SetActorRotation(DoorRotation);

 

[展开全文]
tzlUltraGames · 2018-09-02 · 0

给场景中的门添加碰撞器(就是让门能够检测碰撞)有两种方式,但都是对场景中门Actor的所属资源进行操作,即找到"Content Browser"中门的资源"SM_Door",然后将其打开:

1. 第一种方式是在打开StaticMesh资源的编辑界面后,在右侧的Details面板中找到Collision属性栏,将"Collision Complexity"属性修改成"Use Complex Collision As Simple"。注:这种方式相较于下一种方式而言,性能消耗较大,慎用,如下图:

2. 第二种方式则是在打开StaticMesh资源的编辑界面后,在上方菜单栏中找到Collision菜单,选择"Add Box Simplified Collision"选项,为StaticMesh资源创建一个立方体状的简易碰撞器,然后适当调整大小即可。如下图:

[展开全文]
tzlUltraGames · 2018-08-27 · 0