UCLASS(abstract, config=Game, BlueprintType, hidecategories=("Pawn|Character|InternalEvents"))
class ENGINE_API ACharacter : public APawn
{
GENERATED_UCLASS_BODY()
...
UPROPERTY(Transient)
uint32 bClientWasFalling:1;
/** If server disagrees with root motion track position, client has to resimulate root motion from last AckedMove. */
UPROPERTY(Transient)
uint32 bClientResimulateRootMotion:1;
/** Disable simulated gravity (set when character encroaches geometry on client, to keep him from falling through floors) */
UPROPERTY()
uint32 bSimGravityDisabled:1;
/**
* Jump key Held Time.
* This is the time that the player has held the jump key, in seconds.
*/
UPROPERTY(Transient, BlueprintReadOnly, VisibleInstanceOnly, Category=Character)
float JumpKeyHoldTime;
Код указан выше UE4. Кажется, они используют uint32 однобитовые битовые поля вместо bools. Почему они это делают?Почему я должен использовать 1 бит битовых полей вместо bools?
Я бы предположил, что это экономит место. – shuttle87
'bool' не использует один бит, поэтому, если они упаковывают более 4 переменных, они получают некоторое пространство. – Jarod42
UE4 - современный двигатель. Является ли сохранение памяти жизненно важным для современных систем? –