캐릭터 확인

캐릭터 확인

모듈 설명

캐릭터 정의 및 캐릭터 형상을 확인하는 함수를 포함합니다.

매크로

#define HIKNeckBoneCount   9
 
#define HIKRequiredBoneCount   15
 
#define HIKRollBoneCount   8
 
#define HIKSpineBoneCount   9
 

함수

const int * HIKGetNeckBoneList ()
 
const int * HIKGetRequiredBoneList ()
 
const int * HIKGetRollBoneList ()
 
const int * HIKGetSpineBoneList ()
 
bool HIKValidateArmsXAxis (const HIKCharacter *pCharacter, char *pErrorMsg=0, unsigned int pErrorMsgSize=0)
 
bool HIKValidateBonePosition (const HIKCharacter *pCharacter, char *pErrorMsg=0, unsigned int pErrorMsgSize=0)
 
bool HIKValidateGeometry (const HIKCharacter *pCharacter)
 
bool HIKValidateHierarchy (const HIKCharacterDefinition *pCharacterDefinition)
 
bool HIKValidateHipsXAxis (const HIKCharacter *pCharacter, char *pErrorMsg=0, unsigned int pErrorMsgSize=0)
 
bool HIKValidateNeck (const HIKCharacterDefinition *pCharacterDefinition, char *pErrorMsg=0, unsigned int pErrorMsgSize=0)
 
bool HIKValidateRequiredBone (const HIKCharacterDefinition *pCharacterDefinition, char *pErrorMsg=0, unsigned int pErrorMsgSize=0)
 
bool HIKValidateSpine (const HIKCharacterDefinition *pCharacterDefinition, char *pErrorMsg=0, unsigned int pErrorMsgSize=0)
 
bool HIKValidateSpineYAxis (const HIKCharacter *pCharacter, char *pErrorMsg=0, unsigned int pErrorMsgSize=0)
 

매크로 정의 문서

#define HIKNeckBoneCount   9

캐릭터의 목에서 가능한 노드의 최대 수입니다.

#define HIKRequiredBoneCount   15

HIKCharacter에 대해 필요한 노드 수입니다.

#define HIKRollBoneCount   8

캐릭터의 팔과 다리에서 가능한 롤 노드의 최대 수입니다.

#define HIKSpineBoneCount   9

캐릭터의 척추에서 가능한 노드의 최대 수입니다.

함수 설명서

const int* HIKGetNeckBoneList ( )

HIKNodeId 열거에서 목의 일부인 노드를 식별하는 정수의 목록을 반환합니다. 배열 길이는 항상 HIKNeckBoneCount와 같아야 합니다.

const int* HIKGetRequiredBoneList ( )

HIKNodeId 열거에서 필요한 노드를 식별하는 정수의 목록을 반환합니다. 배열 길이는 항상 HIKRequiredBoneCount와 같아야 합니다.

const int* HIKGetRollBoneList ( )

HIKNodeId 열거에서 롤 노드인 노드를 식별하는 정수의 목록을 반환합니다. 배열 길이는 항상 HIKNeckBoneCount와 같아야 합니다.

const int* HIKGetSpineBoneList ( )

HIKNodeId 열거에서 척추의 일부인 노드를 식별하는 정수의 목록을 반환합니다. 배열 길이는 항상 HIKSpineBoneCount와 같아야 합니다.

bool HIKValidateArmsXAxis ( const HIKCharacter pCharacter,
char *  pErrorMsg = 0,
unsigned int  pErrorMsgSize = 0 
)

지정한 HIKCharacter의 팔이 X축을 따라 정렬되는지 확인합니다. 팔의 정렬이 너무 멀리 떨어져 있는 경우 함수가 false를 반환하고 pErrorMsg를 업데이트하여 문제를 나타냅니다.

매개변수
pCharacter테스트할 HIKCharacter
[out]pErrorMsg캐릭터 형상을 사용하여 감지된 오류를 나타내기 위해 업데이트되었습니다.
[out]pErrorMsgSizepErrorMsg 문자열에서 캐릭터의 수를 나타내기 위해 업데이트되었습니다.
반환
false 팔의 정렬이 X축에서 너무 멀리 떨어져 있는 경우, 그렇지 않은 경우는 true입니다.
bool HIKValidateBonePosition ( const HIKCharacter pCharacter,
char *  pErrorMsg = 0,
unsigned int  pErrorMsgSize = 0 
)

두 개의 노드 모두 3D 공간에서 동일한 위치에 설정되지 않았는지 확인합니다. 두 개의 노드가 동일한 위치에 있는 경우 이 함수는 false를 반환하고 pErrorMsg를 업데이트하여 문제를 나타냅니다.

매개변수
pCharacter테스트할 HIKCharacter
[out]pErrorMsg캐릭터 형상을 사용하여 감지된 오류를 나타내기 위해 업데이트되었습니다.
[out]pErrorMsgSizepErrorMsg 문자열에서 캐릭터의 수를 나타내기 위해 업데이트되었습니다.
반환
false 두 개 이상의 노드가 동일한 위치에 있는 경우, 그렇지 않으면 true입니다.
bool HIKValidateGeometry ( const HIKCharacter pCharacter)

지정된 HIKCharacter의 T 자세가 유효한지 여부를 결정합니다. 이 함수는 다음을 확인합니다.

  • 엉덩이와 팔이 X축을 따라 정렬됩니다.
  • 척추가 Y축을 따라 정렬됩니다.
  • 두 개의 노드 모두 3D 공간에서 동일한 좌표에 없습니다.

    이 메서드가 true를 반환하는 경우 HIKCharacterizeGeometry()를 호출하여 캐릭터 형상을 마무리해야 할 수 있습니다.

    이 메서드가 false를 반환하는 경우 확인에서 감지된 오류에 대해 로그를 검사합니다.

    Verbose 빌드에서만 사용할 수 있습니다.

    매개변수
    pCharacter확인할 HIKCharacter
bool HIKValidateHierarchy ( const HIKCharacterDefinition pCharacterDefinition)

지정된 HIKCharacterDefinition이 유효한지 여부(예: 필요한 노드가 누락되지 않았는지 여부)를 결정합니다.

이 메서드가 true를 반환하는 경우 정의에서 유효한 HIKCharacter를 만들어야 할 수 있습니다.

이 메서드가 false를 반환하는 경우 확인에서 감지된 오류에 대해 로그를 검사합니다.

Verbose 빌드에서만 사용할 수 있습니다.

매개변수
pCharacterDefinition확인할 HIKCharacterDefinition
bool HIKValidateHipsXAxis ( const HIKCharacter pCharacter,
char *  pErrorMsg = 0,
unsigned int  pErrorMsgSize = 0 
)

지정한 HIKCharacter의 엉덩이가 X축을 따라 정렬되는지 확인합니다. 엉덩이의 정렬이 너무 멀리 떨어져 있는 경우 함수가 false를 반환하고 pErrorMsg를 업데이트하여 문제를 나타냅니다.

매개변수
pCharacter테스트할 HIKCharacter
[out]pErrorMsg캐릭터 형상을 사용하여 감지된 오류를 나타내기 위해 업데이트되었습니다.
[out]pErrorMsgSizepErrorMsg 문자열에서 캐릭터의 수를 나타내기 위해 업데이트되었습니다.
반환
false 골반의 정렬이 X축에서 너무 멀리 떨어져 있는 경우, 그렇지 않은 경우는 true입니다.
bool HIKValidateNeck ( const HIKCharacterDefinition pCharacterDefinition,
char *  pErrorMsg = 0,
unsigned int  pErrorMsgSize = 0 
)

지정된 HIKCharacterDefinition의 목에 누락된 노드가 없는지 확인합니다. 예를 들어 Neck2NodeIdNeck1NodeId가 없는 한 Neck3NodeId를 사용하여 캐릭터를 만들 수 없습니다. 목에서 하나 이상의 노드가 누락된 경우 함수가 false를 반환하고 pErrorMsg를 업데이트하여 누락된 노드를 나열합니다.

매개변수
pCharacterDefinition테스트할 HIKCharacterDefinition
[out]pErrorMsg정의에 없는 누락된 모든 목 노드를 나열하기 위해 업데이트되었습니다.
[out]pErrorMsgSizepErrorMsg 문자열에서 캐릭터의 수를 나타내기 위해 업데이트되었습니다.
반환
false하나 이상의 목 노드가 캐릭터 정의에서 누락된 경우, 그렇지 않은 경우 true입니다.
bool HIKValidateRequiredBone ( const HIKCharacterDefinition pCharacterDefinition,
char *  pErrorMsg = 0,
unsigned int  pErrorMsgSize = 0 
)

지정된 HIKCharacterDefinition에 필요한 모든 노드가 포함되어 있는지 확인합니다. 하나 이상의 노드가 누락된 경우 함수가 false를 반환하고 pErrorMsg를 업데이트하여 누락된 노드를 나열합니다.

매개변수
pCharacterDefinition테스트할 HIKCharacterDefinition
[out]pErrorMsg정의에 없는 누락된 모든 노드를 나열하기 위해 업데이트되었습니다.
[out]pErrorMsgSizepErrorMsg 문자열에서 캐릭터의 수를 나타내기 위해 업데이트되었습니다.
반환
false하나 이상의 필수 노드가 캐릭터 정의에서 누락된 경우, 그렇지 않은 경우 true입니다.
bool HIKValidateSpine ( const HIKCharacterDefinition pCharacterDefinition,
char *  pErrorMsg = 0,
unsigned int  pErrorMsgSize = 0 
)

지정된 HIKCharacterDefinition의 척추에 누락된 노드가 없는지 확인합니다. 예를 들어 Spine2NodeIdSpine1NodeId가 없는 한 Spine3NodeId를 사용하여 캐릭터를 만들 수 없습니다. 척추에서 하나 이상의 노드가 누락된 경우 함수가 false를 반환하고 pErrorMsg를 업데이트하여 누락된 노드를 나열합니다.

매개변수
pCharacterDefinition테스트할 HIKCharacterDefinition
[out]pErrorMsg정의에 없는 누락된 모든 척추 노드를 나열하기 위해 업데이트되었습니다.
[out]pErrorMsgSizepErrorMsg 문자열에서 캐릭터의 수를 나타내기 위해 업데이트되었습니다.
반환
false하나 이상의 척추 노드가 캐릭터 정의에서 누락된 경우, 그렇지 않은 경우 true입니다.
bool HIKValidateSpineYAxis ( const HIKCharacter pCharacter,
char *  pErrorMsg = 0,
unsigned int  pErrorMsgSize = 0 
)

지정한 HIKCharacter의 척추가 Y축을 따라 정렬되는지 확인합니다. 척추의 정렬이 너무 멀리 떨어져 있는 경우 함수가 false를 반환하고 pErrorMsg를 업데이트하여 문제를 나타냅니다.

매개변수
pCharacter테스트할 HIKCharacter
[out]pErrorMsg캐릭터 형상을 사용하여 감지된 오류를 나타내기 위해 업데이트되었습니다.
[out]pErrorMsgSizepErrorMsg 문자열에서 캐릭터의 수를 나타내기 위해 업데이트되었습니다.
반환
false 척추의 정렬이 Y축에서 너무 멀리 떨어져 있는 경우, 그렇지 않은 경우는 true입니다.