1.关于EnhancedInput的使用。
1.1 起初我以为EnhancedInput 在添加MappingContext的时候,无论在BeginPlay还是在SetupPlayerInputComponent都是可以的。
在正常运行状态下确实是可以的,以上添加映射的方法,在不使用GameMode的 bDelayedStart 的情况下,无论是客户端和作为服务器的客户端,都是可以获取玩家输入的。
1.2 但直到我使用到了GameMode 的 bDelayedStart。
在正常情况下,1.1的添加映射方法,客户端和服务器两者都能够获取到输入。
但在使用了GameMode的bDelayedStart时,会先不生成Pawn,再我们手动调用StartMatch时,生成我们的Pawn,此时发生的关系就非常巧妙。这个时候,我们服务器端的Character在BeginPlay状态是无法获取Controller的。但是客户端却可以。这是很奇怪。我也不理解到底发生了什么。如果有知道的一定要告诉我。。。。我使用官方的第三人称模板,也是有这个问题的。