SkeletalMesh의 LOD 바이어스 강제

3784 단어 UnrealEngine4

이 검증의 목표



다음과 같은 일을하고 싶으므로 구현 가능한지 확인합니다.
  • 게임의 특정 장면에서는 설정에 관계없이 항상 LOD1을 사용합니다.
  • 디버깅 기능으로 LOD 모델을 미리 볼 수 있습니다

  • 환경


  • UE4.22
  • Windows 10

  • LOD를 만들 때 다음 자산을 사용합니다.
    htps //w w. 그래, 응. 코 m / 마르 tp ぁ세 / 그럼 / s ぅ g / 우에 4- 만에 쿠인 - 모비
    (마네킹 욕심에 스타터 팩을 넣는 것은 왠지 싫었기 때문에)

    LOD 설정



    기본 설정 절차는 UE4 설명서를 참조합니다.
    htps : // 아피. 그래, 응. 코 m/JP응/엔기네/곤텐 t/Ty페s/S들 c메시ぇs/호w와/ぉDs/그리고 x. HTML
    htps : // 아피. 그래, 응. 코 m/JP응/엔기네/곤텐 t/Ty페스/S케타l메시ぇs/ぺrPぁt후ぉrmぉD/그리고 x. HTML

    이번에는 일정 사이즈 이하가 되면, 머티리얼을 바꾸어 색이 바뀌도록 하고 있습니다


    SkeletalMesh를 열고 "자산 세부 사항"의 "Material Slots"에서 색상 변경을위한 재료를 설정합니다.


    LOD1에서 사용할 머티리얼을 지정하여 동영상과 같은 동작을 시킬 수 있습니다.


    변화하는 거리에 대해서는 LODSEttings 측에서 ScreenSize를 설정하면 준비 완료입니다.


    전환 처리 구현



    우선 레벨 내에 LOD를 설정한 SkeletalMesh를 잡히게 배치합니다.


    그런 다음 레벨 블루프린트에서 다음 노드를 만듭니다.
    각 SkinnedMesh에 적용할 LOD를 설정합니다.
    keybord의 '1'에서 LOD1을 설정하고 keybord의 '2'로 LOD2를 설정합니다.

    SetForcedLOD에 대해서는 이하를 참조
    htps : // 아피. 그래, 응. 코 m/인 T/Bぅ에 p 린타피/코 m포넨 ts/S 킨에 d메 sh/세 t 후레세 dぉ D/그리고 x. HTML

    결과



    그리고 게임을 시작하고 키보드를 누르면 전환을 확인할 수 있습니다.


    덧붙여서 한 번 SetForcedLOD를 실시한 Mesh에 대해서는, 그 레벨내에서는 항상 설정한 LOD가 적용됩니다.
    LOD1을 설정한 후 카메라가 얼마나 멀리 작게 빛나든지 LOD1로 남습니다.


    SetForcedLevel의 InNewForcedLOD에 0을 전달하거나,
    레벨을 다시 읽으면 상태가 재설정됩니다.

    LOD가 몇 존재하는지를 돌려주는 노드도 있으므로,
    BP를 조금 수정하면 3D 모델의 뷰어 등을 만들 때 사용할 수있을 것 같습니다.
    htps : // / cs. 그래, 응. 코 m/엔-우 S/Bぅ에 p 린타피/코 m포넨 ts/S 킨에 d메 sh/게 t누 mぉ Ds/그리고 x. HTML

    좋은 웹페이지 즐겨찾기