文件主要目錄:

創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)與策劃設(shè)計,肥鄉(xiāng)網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:肥鄉(xiāng)等地區(qū)。肥鄉(xiāng)做網(wǎng)站價格咨詢:18982081108
- Binaries:存放編譯生成的結(jié)果二進(jìn)制文件。gitignore
- Config:配置文件。
- Content:平常最常用到的,所有資源和藍(lán)圖等都放在該目錄里。
- DerivedDataCache:“DDC”,存儲著引擎針對平臺特化后的資源版本。gitignore
- Intermediate:中間文件,存在一些臨時生成的文件。gitignore
- Saved:存儲自動保存的文件,其他配置文件,日志文件,引擎崩潰日志,硬件信息,烘培信息數(shù)據(jù)等。gitignore
- Source:代碼文件
命名約定:
- 模板類以T作為前綴,比如TArray、TMap、TSet
- UOject派生類都以U為前綴
- AActor派生類都以A為前綴
- SWidget派生類都以S為前綴
- 抽象接口以I為前綴
- 枚舉以E開頭
- bool變量以b為前綴,如bPendingDestruction
- typedef的以原型名前綴為準(zhǔn),如typedef TArray FArrayOfMyTypes
編譯系統(tǒng):
- UnrealBuildTool(UBT,C#):UE4的自定義工具,來編譯UE4的逐個模塊并處理依賴等。
- UnrealHeaderTool(UHT,C++):UE4的C++代碼解析生成工具。我們在代碼里寫的那些宏UCLASS等和#include"*.generated.h"都為UHT提供了信息來生成相應(yīng)的C++反射代碼。
Actor和Component
- Actor繼承自UObject,特性有Replication、Spawn、Tick
- Component組件,具有不同的能力,Components組成Actor,使其有各自的能力
Level和World
- Level相當(dāng)于是Actors的容器,通過ALevelScriptActor來編寫邏輯管理Level中的Actors
- World可以通過Sublevel的方式,將不同的Level拼接起來,有Persistent,Streaming兩種加載方式
WorldContext
- World的種類Game、Editor、PIE、Preview、Inactive(問題1:World類型的None?)
- FWorldContext用來保存切換過程信息和目標(biāo)World上下文信息。所以一般切換的時候,比如OpenLevel,也都需要傳FWorldContext的參數(shù)
- GameInstance保存著當(dāng)前WorldContext和其他整個游戲的信息
Pawn
- 從Actor中派生出APawn,并定義了三塊基本的模板方法接口
- 可被Controller控制
- PhysicsCollision表示
- MovementInput的基本響應(yīng)接口
- 木偶相當(dāng)于就是Pawn,而提線的是Controller
- DefaultPawn、SpectatorPawn、Character(人形Pawn)
Controller
- “顯示”指的是游戲的UI,是屏幕上顯示的3D畫面,或是手柄上的輸入和震動,也可以是VR頭盔的鏡片和定位,是與玩家直接交互的載體;
- “數(shù)據(jù)”指的是Mesh,Material,Actor,Level等各種元素組織起來的內(nèi)存數(shù)據(jù)表示;
- “算法”可以是各種渲染算法,物理模擬,AI尋路,本文咱們就先暫時特指游戲開發(fā)者們編寫的游戲業(yè)務(wù)邏輯。
- 控制游戲中的Actor
- PlayerState玩家的游玩數(shù)據(jù)
PlayerController和AIController
- PlayerController:接收輸入,然后在PlayerController內(nèi)部根據(jù)情況去處理不同的Pawn。允許出現(xiàn)多個PlayerController。
- PlayerController的重要模塊:
- Camera的管理
- Input系統(tǒng)
- UPlayer關(guān)聯(lián)
- Level的切換
- Voice方便網(wǎng)絡(luò)中語音聊天的控制函數(shù)
- AIController:AI也算一個Player,不接收控制,自行決策
- AIController的重要模塊;
- Navigation用于智能導(dǎo)航尋路
- AI組件
- Task系統(tǒng)
GameMode和GameState
- 游戲玩法叫做GameMode,功能上實現(xiàn)了許多接口,主要分為以下幾大塊:
- Class登記,GameMode里登記了游戲里基本需要的類型信息,在需要的時候通過UClass的反射可以自動Spawn出相應(yīng)的對象來添加進(jìn)關(guān)卡中。GameMode就是比Controller更高一級的領(lǐng)導(dǎo)。
- 游戲內(nèi)實體的Spawn
- 游戲的進(jìn)度
- Level的切換
- 多人游戲的步調(diào)同步
- GameState保存當(dāng)前游戲的狀態(tài)數(shù)據(jù)
UPlayer
- 繼承自UOject,每個Player分配一個PlayerController
- ULocalPlayer:本地玩家,從Player派生下來的類
- UNetConnection:一個網(wǎng)絡(luò)連接也可以是一個Player
GameInstance
- World、Level的切換
- 動態(tài)添加或刪除Players
- 控制UI各種切換邏輯
- 全局的配置
- 游戲額外的第三方邏輯
- 引擎的初始化加載
- Player的創(chuàng)建
- GameMode的重載修改
- OnlineSession的管理
SubSystems
- Subsystems是一套可以定義自動實例化和釋放的類的框架
- Subsystem對象依存屬于的5類Outer對象
- UEngine* GEngine
- UEditorEngine* GEditor
- UGameInstance* GameInstance
- UWorld* World
- ULocalPlayer* LocalPlayer
- 生命 周期5類:預(yù)定義好的5個可由此派生的父類
- UEngineSubsystem
- UEditorSubsystem
- UGameInstanceSubsystem
- UWorldSubsystem
- ULocalPlayerSubsystem
- 自動實例化
- 托管生命周期
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
本文題目:<<InsideUE4>>筆記-創(chuàng)新互聯(lián)
標(biāo)題來源:http://chinadenli.net/article28/dhpgcp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、服務(wù)器托管、品牌網(wǎng)站設(shè)計、網(wǎng)站策劃、Google、定制開發(fā)
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源:
創(chuàng)新互聯(lián)