(UE4) C ++ 만 사용하여 뼈의 위치를 설정하려면 어떻게해야합니까?

Wolff

스켈 레탈 메시의 뼈를 C ++의 특정 위치로 설정하는 방법이 있는지 알고 싶습니다. 청사진을 사용하고 싶지 않아서 좋은 방법을 찾지 못했습니다.

Bas in het Veld

UPoseableMeshComponent를 찾습니다. 스켈레톤의 각 뼈대에 대한 변형을 설정할 수 있습니다.

편집하다:

다음은 프로젝트에서 PoseableMeshComponent를 사용하는 방법의 예입니다. 제 경우에는 mocap 데이터에 의해 구동되는 골격을 복제하고 있습니다. mocap 데이터는 네트워킹 소켓에서 수신되어 다음과 같은 구조체에 저장됩니다.

USTRUCT()
struct FSkeletonData
{
GENERATED_USTRUCT_BODY()

FSkeletonData()
    : Scale(1.0f)
{}
/**
 * The bones' location
 */
UPROPERTY(VisibleAnywhere)
TArray<FVector> Locations;
/**
 *  The bones' rotation
 */
UPROPERTY(VisibleAnywhere)
TArray<FQuat> Rotations;
/**
 *  Scale of the skeletal mesh
 */
UPROPERTY(VisibleAnywhere)
float Scale;
}

이 데이터를 수신하는 클래스에는 PoseableMeshComponent가 있으며 다음과 같이이 구조체를 기반으로 업데이트합니다.

int32 NumBones = PoseableMeshComponent->GetNumBones();

for (int32 i = 0; i < NumBones; ++i)
    {
        FName const BoneName = PoseableMeshComponent->GetBoneName(i);

        FTransform Transform(SkeletonDataActual.Rotations[i], SkeletonDataActual.Locations[i], FVector(SkeletonDataActual.Scale));

        PoseableMeshComponent->SetBoneTransformByName(BoneName, Transform, EBoneSpaces::WorldSpace);
    }
    PoseableMeshComponent->SetWorldScale3D(FVector(SkeletonDataActual.Scale));

SkeletonDataActual은 FSkeletonData 유형이며 이러한 위치는 World Space에 있습니다. 로컬 공간에서 작동하려면 액터의 위치 및 / 또는 로테이션을 추가해야 할 수 있습니다.

도움이되기를 바랍니다. 행운을 빕니다!

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

C #을 사용하여 여러 게임 개체의 위치를 다른 임의 위치로 설정하려면 어떻게해야합니까? (Unity5.5)

분류에서Dev

종속성 속성 재정의를 한 번만 설정하려면 어떻게해야합니까?

분류에서Dev

한 번에 하나의 배열 요소에만 상태를 설정하려면 어떻게해야합니까?

분류에서Dev

gcc45의 MacPort를 통해 설치 한 후이를 사용하여 Mac에서 C 언어를 빌드하려면 어떻게해야합니까?

분류에서Dev

C #에서 생성자를 사용하여 개체의 복사본을 만들려면 어떻게해야합니까?

분류에서Dev

데이터 개체의 키를 사용하여 c3.js 차트 데이터 유형을 설정하려면 어떻게해야합니까?

분류에서Dev

DirectX를 사용하여 C #에서 비디오 편집기를 만들려면 어떻게해야합니까?

분류에서Dev

for를 사용하여 연관 배열의 세 요소 만 표시하려면 어떻게해야합니까?

분류에서Dev

몇 개의 필터 만 사용하도록 GPUImage2를 조정하려면 어떻게해야합니까?

분류에서Dev

터치 위치의 중간에보기를 설정하려면 어떻게해야합니까?

분류에서Dev

일련의 ID CSS를 사용하여 테이블을 설정하려면 어떻게해야합니까?

분류에서Dev

사용자 정의 구조에서 C ++ 벡터를 사용하려면 어떻게해야합니까?

분류에서Dev

Rails4의 특정 하위 도메인 URL에만 텍스트를 표시하려면 어떻게해야합니까?

분류에서Dev

먼저 캡처 한 다음 스크롤바의 위치를 설정하려면 어떻게해야합니까?

분류에서Dev

conf 파일을 사용하여 redshift의 위치를 수동으로 설정하려면 어떻게해야합니까?

분류에서Dev

R에서 함수를 만들어 열의 하위 집합을 만들려면 어떻게해야합니까?

분류에서Dev

C ++의 curses를 사용하여 ASCII 정수를 관련 ASCII 문자로 안전하게 변환하려면 어떻게해야합니까?

분류에서Dev

설문 조사를 만들기 위해 PHP, mysql을 사용하여 배열에 3 개의 값을 저장하도록 코드를 수정하려면 어떻게해야합니까?

분류에서Dev

DevExpress를 사용하여 C #에서 DateEdit를 사용하여 연도 만 표시하려면 어떻게해야합니까?

분류에서Dev

Ubuntu 전체 설치를 사용하여 USB의 수명을 연장하려면 어떻게해야합니까?

분류에서Dev

Ubuntu 전체 설치를 사용하여 USB의 수명을 연장하려면 어떻게해야합니까?

분류에서Dev

사용자를 만들 때 기본 그룹을 설정하려면 어떻게해야합니까?

분류에서Dev

Nodo C를 수정하려면 어떻게해야합니까?

분류에서Dev

컨테이너를 사용하여 두 개의 고정 탐색 모음 사이에 공간을 만들려면 어떻게해야합니까?

분류에서Dev

요소의 일부 하위 항목 만 정렬하려면 어떻게해야합니까?

분류에서Dev

openpyxl을 사용하여 셀의 텍스트를 맨 위에 정렬하려면 어떻게해야합니까?

분류에서Dev

C ++ 11 가변 템플릿을 사용하여 벡터 튜플이 지원하는 튜플 벡터를 정의하려면 어떻게해야합니까?

분류에서Dev

HTML CSS 만 사용하여 고정 위치 헤더 및 측면 탐색이있는 반응 형 페이지를 만들려면 어떻게해야합니까?

분류에서Dev

3 대의 모니터를 사용하도록 Windows 7을 설정하려면 어떻게해야합니까?

Related 관련 기사

  1. 1

    C #을 사용하여 여러 게임 개체의 위치를 다른 임의 위치로 설정하려면 어떻게해야합니까? (Unity5.5)

  2. 2

    종속성 속성 재정의를 한 번만 설정하려면 어떻게해야합니까?

  3. 3

    한 번에 하나의 배열 요소에만 상태를 설정하려면 어떻게해야합니까?

  4. 4

    gcc45의 MacPort를 통해 설치 한 후이를 사용하여 Mac에서 C 언어를 빌드하려면 어떻게해야합니까?

  5. 5

    C #에서 생성자를 사용하여 개체의 복사본을 만들려면 어떻게해야합니까?

  6. 6

    데이터 개체의 키를 사용하여 c3.js 차트 데이터 유형을 설정하려면 어떻게해야합니까?

  7. 7

    DirectX를 사용하여 C #에서 비디오 편집기를 만들려면 어떻게해야합니까?

  8. 8

    for를 사용하여 연관 배열의 세 요소 만 표시하려면 어떻게해야합니까?

  9. 9

    몇 개의 필터 만 사용하도록 GPUImage2를 조정하려면 어떻게해야합니까?

  10. 10

    터치 위치의 중간에보기를 설정하려면 어떻게해야합니까?

  11. 11

    일련의 ID CSS를 사용하여 테이블을 설정하려면 어떻게해야합니까?

  12. 12

    사용자 정의 구조에서 C ++ 벡터를 사용하려면 어떻게해야합니까?

  13. 13

    Rails4의 특정 하위 도메인 URL에만 텍스트를 표시하려면 어떻게해야합니까?

  14. 14

    먼저 캡처 한 다음 스크롤바의 위치를 설정하려면 어떻게해야합니까?

  15. 15

    conf 파일을 사용하여 redshift의 위치를 수동으로 설정하려면 어떻게해야합니까?

  16. 16

    R에서 함수를 만들어 열의 하위 집합을 만들려면 어떻게해야합니까?

  17. 17

    C ++의 curses를 사용하여 ASCII 정수를 관련 ASCII 문자로 안전하게 변환하려면 어떻게해야합니까?

  18. 18

    설문 조사를 만들기 위해 PHP, mysql을 사용하여 배열에 3 개의 값을 저장하도록 코드를 수정하려면 어떻게해야합니까?

  19. 19

    DevExpress를 사용하여 C #에서 DateEdit를 사용하여 연도 만 표시하려면 어떻게해야합니까?

  20. 20

    Ubuntu 전체 설치를 사용하여 USB의 수명을 연장하려면 어떻게해야합니까?

  21. 21

    Ubuntu 전체 설치를 사용하여 USB의 수명을 연장하려면 어떻게해야합니까?

  22. 22

    사용자를 만들 때 기본 그룹을 설정하려면 어떻게해야합니까?

  23. 23

    Nodo C를 수정하려면 어떻게해야합니까?

  24. 24

    컨테이너를 사용하여 두 개의 고정 탐색 모음 사이에 공간을 만들려면 어떻게해야합니까?

  25. 25

    요소의 일부 하위 항목 만 정렬하려면 어떻게해야합니까?

  26. 26

    openpyxl을 사용하여 셀의 텍스트를 맨 위에 정렬하려면 어떻게해야합니까?

  27. 27

    C ++ 11 가변 템플릿을 사용하여 벡터 튜플이 지원하는 튜플 벡터를 정의하려면 어떻게해야합니까?

  28. 28

    HTML CSS 만 사용하여 고정 위치 헤더 및 측면 탐색이있는 반응 형 페이지를 만들려면 어떻게해야합니까?

  29. 29

    3 대의 모니터를 사용하도록 Windows 7을 설정하려면 어떻게해야합니까?

뜨겁다태그

보관