UE4 C++写法之二(待补充)


1.通过路径读取文件/资源

ConstructorHelpers : : FObjectFinder  <USkeletalMesh /*类型名*/>  objFinder(TEXT("/Game/mesh/.../SK_PlayerMesh"  /*路径*/ ));  //在这个路径里找SK_M...资源,命名。

if ( objFinder. Succeeded() )  //是否成功找到资源里,可以用 .Succeeded()

   Mesh -> SetSkeletalMesh ( objFinder. Object ) ;  //为毛要 .Object ?

} 

/* FClassFinder 

 

2.变量类型尽量使用基类类型   

UPROPERTY()   //使用基类的好处是方便以后套用子类。

TSubclassOf <UBaseItemWdget>  命名;

 

3.从路径中加载数据表

A = LoadObject <UDataTable> ( nullptr , TEXT("路径/..")) ;  //返回空 / 路径中的数据表。

 

4.DataAsset的c++用法

Class  类名  :  public UDataAsset  { ...}

Class  类名  :  public UPrimaryDataAsset  {...}

 

4.创建世界场景设置

Class MyWorldSetting :public AWorldSettings {...}  /* 继承AWorldSettings */

那么在c++中如何获得 WorldSetting ?

//通过获取游戏模式 -> 获得世界 -> 获取世界设置;

AWorldSettings* MyWorldSetting_ptr = UGamePlayStatics :: GetGameMode(this) -> GetWorld() ->GetWorldSettings() ; 

//将世界设置转化为自己的世界设置;

MyWorldSettings* ptr_MySetting = cast < MyWorldSettings > ( MyWorldSetting_ptr) ;

 

5.怎么使用Cast to

cast < 要转化成的目标类型 > (要转化的原型); //即:将(..)cast to <..>,

//转化后返回的是一个<..>类型的值 或者 nullptr

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM