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