Announcement

Collapse
No announcement yet.

커스텀 폰 충돌에 문제가 있는데 어느부분이 잘못되서 해당 문제가 발생하&

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    커스텀 폰 충돌에 문제가 있는데 어느부분이 잘못되서 해당 문제가 발생하&






    -----소스------

    class PR_Dog extends Pawn;


    defaultproperties
    {
    //////////////////////////////
    //스테이터스
    WalkingPct=+0.4

    BaseEyeHeight=10.0
    EyeHeight=10.0
    GroundSpeed=3000.0
    AirSpeed=440.0
    WaterSpeed=0.0
    AccelRate=300.0
    JumpZ=322.0
    UnderWaterTime = 999999.0;
    WalkableFloorZ=0.78





    ////////////////////////////////

    // Create a skeletal mesh component for the pawn
    Begin Object Class=SkeletalMeshComponent Name=CollideMesh


    ///////메시 목록////////
    //스컬 메시
    SkeletalMesh=SkeletalMesh'dirt_t_dirt.dog_r'
    //에님 트리
    AnimTreeTemplate=AnimTree'dirt_t_dirt.dog_animtree '
    //피직스 셋
    PhysicsAsset=PhysicsAsset'dirt_t_dirt.dog_r_Physic s'
    //에님셋
    AnimSets(0)=AnimSet'dirt_t_dirt.Run'

    Scale=1f //크기

    bHasPhysicsAssetInstance=true
    BlockNonZeroExtent=true
    BlockZeroExtent=true
    BlockActors=true
    CollideActors=true
    BlockRigidBody=true



    End Object

    Components.Remove(CollisionCylinder)
    CollisionComponent=CollideMesh
    Mesh=CollideMesh
    Components.Add(CollideMesh)
    //Physics=PHYS_RigidBody


    }


    ----------------------------

    show collision으로 콜리전 범위를 확인할때 분명 피직스에셋으로 만든 충돌박스가 표시되는데 맵에 설치된 메시에 케릭터의 일부분이 파묻힙니다.(뚫고 가지는 않습니다. 허리부분에 매우 작게 충돌이 되는지 저 사진 이상 파고들진 않습니다)바운드 체크를 하면 좌우 공간이 너무 심하게 비어서 적당하지 않아 사용할수 없고...역시 실린더컴포넌트로 충돌값 지정할려고 해도 위의 케릭처럼 앞뒤로 길쭉한 케릭터는 좌우공간이 비기 때문에 적절하지 않습니다. 그래서 피직스 에셋으로 사각 박스하나로 대체후 아래소스대로 실린더 컴포넌트 삭제, 스컬매시 오브젝트를 콜리전 컴포넌트에 대입했습니다.
    UDK내의 문서론 제가 못 찾은건지 근 한달을 구글검색을 포함해서 찾아봤는데 뭔가 도움이 될만한게 없었습니다. 구글검색에 UDN문서를 제외한 다른것에도 이것 이상의 힌트는 얻을수 없었습니다.

    혹시나 싶어서 피직스에셋을 등록하는 스크립트 부분을 주석 처리하니 show collision으로 충돌값 표시했을때 박스표시가 안되긴 하지만 충돌 범위는 똑같았습니다. 제생각엔 콜리젼컴포넌트에 재대로 대입이 되지 않는것 같은데 어느부분이 잘못되거나 결여됬는지 모르겠습니다.

    혹은 실린더 컴포넌트가 아닌 다른 모양으로 충돌 컴포넌트를 만는 방법이 궁금합니다.

    #2
    시도해 보지는 않았지만

    스태틱 매시 컴포넌트를 하나 넣고

    박스 형태 메시를 등록해 줍니다.

    콜리전을 해당 컴포넌트로 하고

    박스 메시의 메터리얼 오퍼시티를 0으로 줍니다.

    그러면 충돌태스트는 하겠지만 보이지는 않을 것입니다.


    * 실제로 태스트 해보지는 않았습니다.

    Comment

    Working...
    X