언리얼이 이넘을 어떻게 인식하나하고 뽑아보니까
띠용?
front ~ start까지는 한개씩 찍히지만 그뒤로는 두개씩찍힘 ㅋㅋㅋ
end를 start로 인식하는거같음
그래서 2개씩 만들어지고
뭘고쳐야 저걸 고치지....
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | // Fill out your copyright notice in the Description page of Project Settings. #pragma once #include "CoreMinimal.h" #include "Macro.h" UENUM(BlueprintType) enum class EPeekingState : uint8 { None = 0 UMETA(Hidden), Front = 0b00000001 UMETA(DisplayName = "Front"), High = 0b00000010 UMETA(DisplayName = "High"), Low = 0b00000100 UMETA(DisplayName = "Low"), Right = 0b00001000 UMETA(DisplayName = "Right"), Left = 0b00010000 UMETA(DisplayName = "Left"), Start = 0b00000000 UMETA(DisplayName = "Start"), End = 0b1000000 UMETA(DisplayName = "End"), FrontRightStart = Front | Right | Start UMETA(DisplayName = "FrontRightStart"), FrontRightEnd = Front | Right | End UMETA(DisplayName = "FrontRightEnd"), FrontLeftStart = Front | Left | Start UMETA(DisplayName = "FrontLeftStart"), FrontLeftEnd = Front | Left | End UMETA(DisplayName = "FrontLeftEnd"), HighRightStart = High | Right | Start UMETA(DisplayName = "HighRightStart"), HighRightEnd = High | Right | End UMETA(DisplayName = "HighRightEnd"), HighLeftStart = High | Left | Start UMETA(DisplayName = "HighLeftStart"), HighLeftEnd = High | Left | End UMETA(DisplayName = "HighLeftEnd"), LowRightStart = Low | Right | Start UMETA(DisplayName = "LowRightStart"), LowRightEnd = Low | Right | End UMETA(DisplayName = "LowRightEnd"), LowLeftStart = Low | Left | Start UMETA(DisplayName = "LowLeftStart"), LowLeftEnd = Low | Left | End UMETA(DisplayName = "LowLeftEnd"), MAX UMETA(Hidden) }; DECLARE_ENUM_TOSTRING(EPeekingState); ENUM_CLASS_FLAGS(EPeekingState) | cs |
전에 쓴 글도 누가 지적해줫는데 모르는거 같은데 Start = 0b00000000인데 | 연산해서 무슨 의미가 있음?
None도 0인데 unit8에서 0하고 0b00000000하고 차이가 머냐
사용할 상태는 start랑 end만 존재할꺼라 널이여도 end랑만 다르면됨
그리고 설마해서 바꿔봣는데 똑같았음 그거문제아님
End에 0 하나 빠진거같은데 - dc App
아 상관은 없긴 하겠네 - dc App
아 저거 이유찾았음.....
바이트 숫자값이아니라 blend poses by enum이순번으로 인식함....