Chat GPT로 만들었습니다.
| Specifier | 설명 |
|---|---|
| Access Specifiers | |
| VisibleAnywhere | 에디터에서 읽기 전용으로 표시, 코드에서 자유롭게 접근 가능 |
| VisibleDefaultsOnly | 기본값 설정에서만 읽기 전용으로 표시, 코드에서 자유롭게 접근 가능 |
| VisibleInstanceOnly | 인스턴스에서만 읽기 전용으로 표시, 코드에서 자유롭게 접근 가능 |
| EditAnywhere | 에디터에서 읽기/쓰기 가능, 코드에서 자유롭게 접근 가능 |
| EditDefaultsOnly | 기본값 설정에서 읽기/쓰기 가능, 코드에서 자유롭게 접근 가능 |
| EditInstanceOnly | 인스턴스에서만 읽기/쓰기 가능, 코드에서 자유롭게 접근 가능 |
| BlueprintReadOnly | 블루프린트에서 읽기 전용으로 접근 가능 |
| BlueprintReadWrite | 블루프린트에서 읽기/쓰기 가능 |
| Replication Specifiers | |
| Replicated | 네트워크를 통해 복제됨 |
| ReplicatedUsing | 특정 함수로 복제를 처리함 |
| Advanced Specifiers | |
| Transient | 게임 세션 동안만 유지, 저장되지 않음 |
| DuplicateTransient | 객체를 복제할 때 복제되지 않음 |
| NonPIEDuplicateTransient | 에디터 내 플레이 중에만 복제되지 않음 |
| SaveGame | 게임 저장 시스템에서 저장 및 로드됨 |
| Meta Specifiers | |
| Category | 에디터 내에서 변수를 그룹화함 |
| DisplayName | 에디터 및 블루프린트에서 변수의 표시 이름을 설정함 |
| ToolTip | 변수에 대한 툴팁을 제공함 |
| ClampMin / ClampMax | 변수 값의 최소/최대 제한을 설정함 |
| EditCondition | 특정 조건이 참일 때만 변수를 편집할 수 있게 함 |
| Advanced Display | |
| AdvancedDisplay | 에디터의 'Advanced' 섹션 아래에 변수를 숨김 |
Example Code
UCLASS() class MYGAME_API AMyActor : public AActor { GENERATED_BODY() public: UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Character Stats", meta=(ClampMin="0.0", ClampMax="100.0")) float Health; UPROPERTY(EditAnywhere, Category="Settings", meta=(DisplayName="Player Speed", ToolTip="The speed at which the player moves.")) float PlayerSpeed; UPROPERTY(EditAnywhere, AdvancedDisplay, Category="Character Stats") float HiddenInAdvanced; UPROPERTY(ReplicatedUsing=OnRep_Health) int32 ReplicatedHealth; protected: UPROPERTY(VisibleAnywhere, Category="Character Stats") int32 ProtectedVariable; private: UPROPERTY() int32 PrivateVariable; UFUNCTION() void OnRep_Health(); };