[UE4] CharacterMovementComponent의 CurrentFloor에서 바닥(지면)의 정보를 취득하자!
2790 단어 위 4UnrealEngineUnrealEngine4
소개
캐릭터의 거동이나 연출을 제어하기 위해, 캐릭터가 지금 타고 있는 바닥(지면)의 각 정보를 취득하는 케이스는 많을까 생각합니다. 그 때 자주 사용되는 것이 LineTrace입니다만, 여러가지 자료로 해설되고 있는 대로, 무거운 처리이므로 자주 호출하면 문제가 될 가능성이 있습니다…
[CEDEC2018] UE4에서 다수의 캐릭터를 살리기 위한 테크닉
htps //w w. s에서 멋지다. 네 t/에피 c가메 s쟈판/세로 c2018-우에 4-111105729/115
이 문제를 해결하기 위한 기능・Tips는 몇 가지 있습니다만, 이번은 아마 사소한 Character Movement Component
의 CurrentFloor
에 대해 소개합니다.
CharacterMovementComponent의 CurrentFloor 정보
모두 다이스키(?) Character Movement Component
, 캐릭터의 움직임을 제어하는 과정에서 Capsule이나 LineTrace를 사용한 바닥의 판정 처리 (UCharacterMovementComponent::FindFloor
등)를 실행하고 있습니다. 그 결과가 Character Movement Component
의 ` CurrentFloor
에 격납되고 있습니다.
그 때문에, LineTrace에 의한 바닥 정보의 취득 처리를 구현하지 않아도, CurrentFloor
로부터 바닥의 Actor 정보나 바닥의 기울기 등 다양한 정보를 취득할 수 있습니다.
예를 들어 바닥의 기울기에 의해 모션을 바꾸고 싶은 경우는 CurrentFloor
-> Hit Result
-> Normal
로부터 필요한 정보를 취득할 수 있습니다!
바닥 정보를 사용하려면 LineTrace를 사용하기 전에 먼저 Character Movement Component
덤
LineTrace와 달리 CurrentFloor
의 FCollisionQueryParams
가 활성화되어 있지 않기 때문에 bReturnPhysicalMaterial
의 CurrentFloor
에서 Hit Result
FHitResultより
/**
* Physical material that was hit.
* @note Must set bReturnPhysicalMaterial on the swept PrimitiveComponent or in the query params for this to be returned.
*/
UPROPERTY()
TWeakObjectPtr<class UPhysicalMaterial> PhysMaterial;
그 때문에, Phys Mat
의 Character Movement Component
의 정보를 사용해 발음의 제어를 하고 싶은 경우는 물리 머티리얼 이외의 방법(Actor, Component Tag로 판정하거나…)을 검토합시다.
오시마
Reference
이 문제에 관하여([UE4] CharacterMovementComponent의 CurrentFloor에서 바닥(지면)의 정보를 취득하자!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/EGJ-Kaz_Okada/items/dc139031ed78514c031e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
모두 다이스키(?)
Character Movement Component
, 캐릭터의 움직임을 제어하는 과정에서 Capsule이나 LineTrace를 사용한 바닥의 판정 처리 (UCharacterMovementComponent::FindFloor
등)를 실행하고 있습니다. 그 결과가 Character Movement Component
의 ` CurrentFloor
에 격납되고 있습니다.그 때문에, LineTrace에 의한 바닥 정보의 취득 처리를 구현하지 않아도,
CurrentFloor
로부터 바닥의 Actor 정보나 바닥의 기울기 등 다양한 정보를 취득할 수 있습니다.예를 들어 바닥의 기울기에 의해 모션을 바꾸고 싶은 경우는
CurrentFloor
-> Hit Result
-> Normal
로부터 필요한 정보를 취득할 수 있습니다!바닥 정보를 사용하려면 LineTrace를 사용하기 전에 먼저
Character Movement Component
덤
LineTrace와 달리 CurrentFloor
의 FCollisionQueryParams
가 활성화되어 있지 않기 때문에 bReturnPhysicalMaterial
의 CurrentFloor
에서 Hit Result
FHitResultより
/**
* Physical material that was hit.
* @note Must set bReturnPhysicalMaterial on the swept PrimitiveComponent or in the query params for this to be returned.
*/
UPROPERTY()
TWeakObjectPtr<class UPhysicalMaterial> PhysMaterial;
그 때문에, Phys Mat
의 Character Movement Component
의 정보를 사용해 발음의 제어를 하고 싶은 경우는 물리 머티리얼 이외의 방법(Actor, Component Tag로 판정하거나…)을 검토합시다.
오시마
Reference
이 문제에 관하여([UE4] CharacterMovementComponent의 CurrentFloor에서 바닥(지면)의 정보를 취득하자!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/EGJ-Kaz_Okada/items/dc139031ed78514c031e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
FHitResultより
/**
* Physical material that was hit.
* @note Must set bReturnPhysicalMaterial on the swept PrimitiveComponent or in the query params for this to be returned.
*/
UPROPERTY()
TWeakObjectPtr<class UPhysicalMaterial> PhysMaterial;
Reference
이 문제에 관하여([UE4] CharacterMovementComponent의 CurrentFloor에서 바닥(지면)의 정보를 취득하자!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/EGJ-Kaz_Okada/items/dc139031ed78514c031e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)