【UE4、5】游戲啟動(dòng)時(shí)不創(chuàng)建Character和隱藏Joystick
????最近一直再看ActionRPG的代碼,細(xì)心的去了解每個(gè)模塊。還是可以發(fā)現(xiàn)很多新鮮的內(nèi)容的。比如今天我們要講到的兩個(gè)點(diǎn):
游戲啟動(dòng)時(shí)不創(chuàng)建Character
在沒(méi)有登錄游戲之前,隱藏系統(tǒng)提供的虛擬搖桿(JoyStick)
????為什么要在游戲啟動(dòng)時(shí)不創(chuàng)建Character呢,也許你希望先加載很多玩家數(shù)據(jù)之后,再根據(jù)這些信息,初始化Character的屬性和外形。
????翻看GameModeBase源碼可以看到,在進(jìn)入游戲的時(shí)候會(huì)調(diào)用RestartPlayer創(chuàng)建角色。如果該方法不被調(diào)用,那么就不會(huì)創(chuàng)建了。也即是說(shuō),當(dāng)你需要生成控制角色時(shí),手動(dòng)去調(diào)用該方法。
????看看下面兩段代碼:
????只要在重寫(xiě)PlayerController的CanRestartPlayer,在合適的時(shí)機(jī)讓其返回true或false。再調(diào)用RestartPlayer,就可以控制Character的生成了。
????這里也可以不由Controller來(lái)控制,GameMode也可以由藍(lán)圖來(lái)實(shí)現(xiàn)PlayerCanRestart控制是否創(chuàng)建Character。
????


????為什么啟動(dòng)時(shí)不顯示操作搖桿呢?剛進(jìn)游戲,肯定不是直接開(kāi)始移動(dòng),要做些角色選擇、游戲介紹、Sequence等特殊處理。此時(shí)顯示Joystick,肯定不合適。而且在有些情況,游戲進(jìn)行中也不希望有Joystick。? ?
????如何隱藏虛擬搖桿呢?直接看看ActionRPG中的實(shí)現(xiàn)。

