UDN
Search public documentation:

SettingUpVehiclesKR
English Translation
日本語訳
中国翻译

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 홈 > 게임플레이 엘리먼트 > 비히클 셋업하기

비히클 셋업하기


문서 변경내역: James Golding 작성. Jeff Wilson 업데이트. 홍성진 번역.

비히클 모델링 - 셋업과 리깅


언리얼 엔진 3에서 비히클(Vehicle, 탈것)을 렌더하는데는 스켈레탈 메시가 사용됩니다. 이를 통해 바퀴, 서스펜션, 플랩, 문 등 움직이는 부속이 여럿 있는 메시를 하나의 애셋으로 손쉽게 임포트할 수 있습니다. 비히클에는 많은 형태가 있으나, 코드는 하나의 리짓 섀시(rigid chassis)를 가진 것으로 추정합니다. 비히클 바퀴 수는 몇이든 달 수 있으며, 바퀴 크기조차 여러가지로 할 수도 있습니다. 하지만 바퀴 수가 4 개 초과되는 비히클에는 추가 프로그래밍 작업이 필요합니다.

UE3에서 사용하기 위한 비히클 메시를 만들려면 다음과 같은 점을 몇 가지 염두에 둬야 합니다.

  • 루트 본은 메인 리짓 섀시에 웨이팅되어 있어야 합니다.
  • 비히클의 아래쪽은 +X축을, 위는 +Z 축을 향해야 합니다. 그리고 루트 '섀시' 본도 아래쪽은 +X축을, 위는 +Z 축을 향해야 합니다. 본을 추가하기 전에 비히클 방향을 바르게 하는 것이 좋습니다.
  • 다른 바퀴 및 서스펜션 본은 섀시 본의 직계 자손이어야 합니다. 바퀴 본을 서스펜션 본의 자식으로 만들지 말고 섀시의 자식으로 놔두십시오.
  • 바퀴를 회전(rotate=roll+steer) 시키고자 하는 곳에 각 타이어 본을 배치하십시요. 본의 한 축은 roll 축을, 다른 한 축은 steering 축을 향하게 해야 합니다 (메시를 임포트한 다음 애님트리 셋업시 엔진에 어떤 축을 사용할지 알려야 합니다).
  • 비히클을 익스포트할 때는, 서스펜션이 최대로 뻗친 곳까지 바퀴 본이 내려가는지 확인하십시요.
  • 어떤 무기도 (같은 본이든 별도의 본이든) Pitch와 Yaw 로 회전 가능한 본을 필요로 합니다. 좌석 수가 여럿인 비히클에 대해서는, 각 좌석에 본이 있어야 (표시되는 경우) 탑승자를 부착시키는 기준이 될 수 있습니다. 또한 비히클이 사용하는 카메라와 (총구 섬광, 발사체 스폰, 분출 효과, 피해 효과 등의) 효과에도 부착시킬 소켓이 필요합니다. 많은 경우 소켓이 위치할 딱 그 위치에 본이 필요하지는 않지만, 그렇게만 되어 있다면야 소켓 셋업이 훨씬 빨라집니다.

Vehicle_Paladin.jpg

Vehicle_Scorpion.jpg

비히클 익스포트


무기 스켈레탈 메시를 엔진으로 익스포트하는 작업은 표준 스켈레탈 메시 작업과 완전히 동일합니다. 메시와 애니메이션을 .PSK와 .PSA 파일로 각각 익스포트하기 위해 ActorX 를 사용할 수도 있고, 3D 어플리케이션 내장 익스포트 툴로 .FBX 파일에 메시와 애니메이션을 익스포트하여 언리얼의 FBX 임포트 파이프라인을 활용해도 됩니다. 해당 비히클에 필요한 메시와 각 애니메이션을 익스포트해야 합니다.

비히클이 어느 클래스에서 확장되었는가 혹은 자체 데미지 시스템을 구현했는가에 따라, ActorX 나 3D 어플리케이션의 .FBX 익스포트 툴을 사용하여 익스포트해야 하는 모프 타겟 세트가 있을 수도 있습니다. 게다가 어느정도 피해입은/파괴된 비히클 조각을 (3dsMax 의 .ASE 로 또는 Maya 의 ActorX 에서 'axmesh' 명령을 통해) 스태틱 메시로 익스포트해야 할 수도 있습니다. 예로 UTVehicle 클래스는 부분은 물론 Vehicle에 부착된 터렛 파괴시 "잔해"를 스폰합니다.

비히클 임포트와 셋업


비히클에 대해 .PSK 파일(이나 선호 유형에 따라 .FBX 파일)은 스켈레탈 메시로 콘텐츠 브라우저에 임포트해야 합니다.

meshimportpsk.jpg meshimport_fbx.jpg

비히클용 텍스처와 머티리얼은 임포트, 셋업을 거친 후 스켈레탈 메시에 할당해야 합니다. 애님세트 에디터에서, File > New AnimSet... 를 선택한 다음 패키지와 그룹 (옵션), 이름을 넣어 주면 새 AnimSet 를 만들 수 있습니다.

newanimset.jpg

그 후 애님세트 에디터에서 File 메뉴의 Import PSA... 를 다시 선택하여 비히클의 AnimSet 로 비히클용 애니메이션이 담긴 .PSA 파일을 임포트해야 합니다.

newanimation.jpg

.FBX 파일 포맷을 사용한다면 애니메이션 임포트시 Import FBX Animation... 을 대신 선택해야 합니다.

비히클에 모프 타겟이 있다면, 그 역시도 애님세트 에디터를 통해 임포트할 수 있습니다. 먼저 새 MorphTargetSet 를 만듭니다. File 메뉴에서 New MorphTargetSet 를 선택한 다음 패키지, 그룹(옵션), 이름을 지어서요.

newmorphset.jpg

그 후 File 메뉴에서 Import MorphTarget 을 선택하여 그 모프 타겟 세트로 개별 모프 타겟을 임포트하면 됩니다.

newmorphtarget.jpg

이 옵션은 모프 타겟이 담긴 .PSK나 .FBX 파일을 임포트하는 기능을 제공합니다.

피직스 애셋 만들기

일단 엔진에 비히클 메시를 임포트하고나면, 그에 대한 콜리전 모양을 정의하기 위한 피직스 애셋을 만들어야 합니다. 그 작업은 PhAT(Physics Asset editing Tool)를 사용해야 합니다.

비히클과 관련해서 피직스 애셋에 중요한 딱 하나의 바디는 루트 '섀시' 본입니다. 다른 본에 대해서는 피직스 바디를 만들 필요가 없습니다. 즉 바퀴에 대해서는 조인트를 만들 필요가 없는 것입니다. 바퀴 시뮬레이션은 전부 비히클 피직스 코드에 의해 처리됩니다. 섀시 바디만 피직스 오브젝트로 만들어지며, Vehicle 콜리전으로 사용되는 것입니다. 피직스 애셋은 선 검사와 Vehicle에 대한 플레이어 콜리전 용으로 사용되기에, 다른 본에 대한 콜리전 모양이 좀 더 정확한 콜리전을 갖도록 만드는 것이 좋을 것입니다. 그 본이 (문, 뚜껑, 터렛 등) 움직이는 것이라면 더욱 그러합니다.

게임에서 Vehicle의 질량과 관성은 섀시 콜리전 지오메트리의 볼륨, 섀시 BodySetup 에 적용된 PhysicalMaterial 의 Density 프로퍼티에 따라 달라집니다. 게임 내에서 Vehicle의 질량을 변경하려면 PhysicalMaterial 을 변경하거나, 섀시 BodySetup 의 MassScale 프로퍼티를 조절하면 됩니다.

애님 트리 만들기

Vehicle에 애니메이션을 재생할 계획이 없더라도, 정상 작동하게 만들려면 애님트리를 만들어 줘야 합니다. 왜냐하면 애님트리는 게임에서 순차적으로 개별 본을 움직이는 데 필요한 SkelControl 도 포함되어 있기 때문입니다. UE3 Vehicle 시스템은 내재된 시뮬레이션에 일치시키고자 바퀴 본을 움직이는 특수형태의 본 콘트롤러를 사용합니다. SkelControl 에 대한 세부 정보는 스켈레탈 콘트롤러 사용하기 페이지를 참고하시기 바랍니다.

기본 AnimTree 셋업 및 에디터 사용법에 대한 세부 정보는 애님트리 에디터 유저 가이드 페이지를 참고해 주시기 바랍니다.

바퀴 셋업하기

SkelControlWheel.jpg

`WheelDisplacement', `WheelRoll', `WheelSteering' 세팅은 단지 시각적인 것들이어서, 에디터에서는 사물들이 바른 축의 바른 방향으로 움직이는 것을 볼 수 있습니다. Vehicle의 퍼포먼스나 한계를 실제로 변경하지는 않습니다.

`WheelMaxRenderDisplacement' 세팅은 Z 축으로의 옮기기(translation) 한계를 설정합니다. 이는 서스펜션의 이동 범위를 결정합니다. 그래서 `WheelDisplacement' 에 값을 입력하면 바퀴가 이동가능한 상한선을 시각적으로 결정하는 것입니다. 그리고 `WheelMaxRenderDisplacement'에 그 최종 값을 입력하면 이 값이 한계로 설정됩니다. 게임에서 Vehicle을 사용하는 동안 바퀴는 0에서 `WheelMaxRenderDisplacement'에 지정된 값 사이를 오르락 내리락 합니다. 나머지 설정들을 사용해서 Roll축과 Steering축을 변경하거나 거꾸로 만들 수 있습니다.

SkelControlWheel의 ControlName 프로퍼티도 설정해야 합니다. 이 값은 시뮬레이션에 전달되며, 그럼으로써 시뮬레이션은 Vehicle이 운행될 때 어떤 콘트롤을 업데이트 할 지 알게 됩니다.

서스펜션 본 셋업하기

Vehicle을 운전하면서 바퀴를 움직이기 위한 콘트롤은 물론, 서스펜션 암을 제어하는 본에도 콘트롤을 추가시키면 좋을 것입니다. `look at' 콘트롤러라 불리는 SkelControl 타입이 있는데, 이는 본이 항상 한 축을 가리키면서 공간상의 다른 오브젝트, 본, 지점을 향하도록 하는 것입니다. 이 노드는 서스펜션 본을 제어하는 데 사용됩니다.

SuspensionRig.jpg

SkelControlLookAt.JPG

파란 다이아몬드 모양이 조준 대상입니다. `TargetLocationSpace' 세팅은 조준 대상이 다음 중 어디에 상대적인지를 나타냅니다: 자신, 부모, 액터 공간, 월드 공간, (여기서는) 다른 본. 조준하려는 본 이름을 `TargetSpaceBoneName' 에 입력하십시오. `Target Location' 설정은 그 `Target Location Space' 설정과 관계된 조준 대상의 위치를 오프셋합니다. 또한 SkelControlSingleBone 노드를 LookAt 노드 뒤에 연결함으로써 조준을 오프셋시켜 서스편션 본의 회전을 오프셋시킬 수도 있습니다.

SkelControlSingleBone.JPG

LookAtAxis 또는 UpAxis 가 3D 패키지에서와는 달리 align 되어 있다면, 바꾸거나 반전시킬 수 있습니다. 서스펜션의 복잡도에 따라 LookAt 노드와 SingleBone 노드를 사용하여 피스톤과 달리 연결된 이동 부속을 만들 수 있습니다.

또 LookAt 노드는 휀더처럼 바퀴에 연결되어 있는, 스티어링과 함께 회전하고 서스펜션와 함께 움직이기는 해야 하지만, 앞으로 또는 뒤로 맴돌아(spin)서는 안되는 부품의 회전을 취소하는데도 쓰입니다. 이를 위해서는 바퀴본을 부모로 가지고 있지만 정확히 같은 장소에 있는 본을 추가합니다. 휀더 메시를 이 본에 바인드합니다. 또 하나의 본을 바퀴본의 바로 위에 추가합니다. 이 본이 휀더가 겨냥할 대상입니다. AnimTree에서 휀더 본에 LookAt 제약을 추가, 휀더를 겨냥하는 본을 겨냥하도록 합니다. LookAt 노드의 설정에서, LookAt Axis 와 Up Axis 를 둘 다 Z로 설정합니다. 휀더 본은 이제 서스펜션이 이동하는 동안 바퀴 본와 함께 움직이고 돌아가지만 맴돌지는 않습니다.

FenderTip1.JPG

FenderTip2.JPG

Damage 노드 셋업하기

UTVehicle 클래스를 확장하는 Vehicle 은 현지화된 대미지 시스템을 활용할 수 있습니다. 이를 통해 차량 피해가 생긴 곳에 점진적인 대미지 표시가 가능합니다. 이 시스템은 모프 타겟은 물론 특수 스켈레탈 콘트롤러 UTSkelControl_Damage, UTSkelControl_DamageHinge, UTSkelControl_DamageSpring 노드를 활용합니다.

Morph 노드

피해를 입어가며 멀쩡한 메시와 피해입은 메시를 혼합하는 식으로, 모프 타겟을 Vehicle 외형을 변경하는 데 사용할 수 있습니다. 보통 대미지를 개별적으로 입히려는 각각의 부분의 각 부분마다 하나의 모프 타겟을 둡니다. 예를 들어 차량형 Vehicle 의 경우 후드, 양쪽 휀더, 후면, 각 문짝 등에 대해 모프 타겟을 두는 것이 좋습니다. 이런 식으로 다른 차량이 전면 좌측 휀더에서 달려든 경우, 대미지 시스템은 그 모프 타겟으로 블렌드 인 시켜, 그 휀더만 피해입은 것처럼 보이게 만들 수 있습니다.

damage_morph.jpg

모프 타겟 임포트에 대한 것은 Vehicle 임포트와 셋업 부분에서 다루었습니다.

비히클에 모프 타겟을 임포트하고 준비가 되면, 애님트리에서 셋업해 줘야 합니다. 먼저 각 모프 타겟에 대해 MorphNodePose 를 만들어야 합니다. 이 노드의 Morph Name 프로퍼티는 어떤 모프 타겟을 제어하는지를 나타냅니다.

damage_morphpose.jpg

다음으로 MorphNodeWeight 를 추가해야 합니다. 이 노드는 MorphNodePose의 모프 타겟이 일정 시간에 얼마만큼이나 블렌딩되는지 나타냅니다. MorphNodePose 는 MorphNodeWeight 로 연결해야 하며, 또 차례로 베이스 AnimTreenode 상의 Morph 링크로 연결해야 합니다. MorphNodeWeight 에 NodeName 프로퍼티를 사용하여 이름도 지어줘야 하는데, 프로그래머가 스크립트에서 참조할 것이기 때문입니다.

damage_morphweight.jpg

이 프로세스는 대미지 시스템에서 사용된 모프 타겟마다 해 줘야 합니다.

damage_morphnodes.jpg

Damage 노드

스켈레탈 콘트롤러는 Vehicle 일부가 피해를 입어 파손될 때는 물론, 파괴될 때 폭발하게 하는 데도 사용 가능합니다. 기본 대미지 콘트롤러는 UTSkelControl_Damage 입니다. 이 뉴ㅗ드는 주로 Vehicle 이 죽을 때 파손된 비히클 부속 스폰을 담당하나, vehicle 에 피해가 누적되어감에 따라 파손 부품을 스폰하는 데도 쓸 수 있습니다. UTSkelControl_DamageHinge 및 UTSkelControl_DamageSpring 노드는 주로 Vehicle에 피해가 쌓이면서 일부가 떨어져 나가도록 하는 데 사용됩니다. 관련된 차량 부속이 떨어져 나가기 전에 (사용되는 노드형이 힌지냐 스프링이냐에 따라) 덜그럭거리거나 느슨해 보이도록 하는 기능도 가능합니다.

노드가 특정 본에 연결되고, 그 본 위치에 (또는 다른 본보다 여기에 가깝게) 대미지가 발생하면 관련된 대미지 콘트롤러에 적용될 것입니다.

SkelControlDamage.jpg

UTSkelControl_Damage, UTSkelControl_DamageHinge, UTSkelControl_DamageSpring 노드에 관련된 프로퍼티가 여럿 있습니다:

Damage 대미지

  • On Damage Active 대미지시 활성화 - 참이면 damage and breaking 함수성이 이 콘트롤에 켜집니다.
  • Control Str Follows Health 제어력이 체력을 따름 - 참이면 활성화된 제어력은 콘트롤러의 현재 체력에 의해 결정됩니다. 거짓이면 활성화시 제어력은 항상 최대 크기입니다.
  • Damage Bone Scale 대미지 본 스케일 - 콘트롤러가 분리될 때 연결된 본에도 설정할 스케일입니다. 보통 (0,0,0)이면 부속을 완전히 숨깁니다.
  • Damage Max 최대 대미지 - 사망 전까지 버틸 수 있는 대미지 양이며, 본질적으로 콘트롤러의 최대 체력입니다.
  • Activation Threshold 활성 한계치 - 콘트롤러가 활성 상태로 있을 수 있는 체력 비율 (현재 체력 / 최대 체력) 입니다.
  • Break Mesh 파손 메시 - 이 콘트롤러가 파손될 때 스폰시킬 스태틱 메시입니다.
  • Break Threshold 파손 한계점 - 이 이상의 제어력이어야 콘트롤러가 파손되어 보이기 시작합니다.
  • Break Time 파손 시간 - 파손 시작서부터 완전히 파손될 때까지 걸리는 총 기간입니다.
  • Default Break Dir 디폴트 파손 방향 - 파손된 부분의 속도를 결정하는 데 사용되는 방향입니다.
  • Damage Scale 대미지 스케일 - 스폰된 비히클 부속에 사용할 스케일입니다. 비히클 반대편의 여러 부속에 사용되는 동일 스태틱 메시를 미러링하는 데 좋습니다.
  • PS_Damage On Break PS_파손시 대미지 - 콘트롤러 파손시 스폰시킬, 작은 폭발효과같은 피티클 시스템입니다.
  • PS_Damage Trail PS_대미지 흔적 - 떨어져 나간 부속에 흔적으로 부착시킬, 연기 흔적 효과같은 파티클 시스템입니다.

OnDeath 사망시

  • On Death Active 사망시 활성화 - 참이면 이 콘트롤러에 death breaking 함수성이 켜집니다.
  • On Death Use For Secondary Explosion 사망시 두 번째 폭발에 사용 - 참이면 이 대미지 콘트롤은 비히클의 첫 번째 사망이 아닌 두 번째 사망 폭발시 사용됩니다.
  • Death Percent To Actually Spawn 실제 사망 스폰율 - 비히클이 죽을 때 이 콘트롤이 파손된 부위를 실제로 스폰시킬 확률(0 에서 1)입니다.
  • Death Bone Scale 사망 본 스케일 - 콘트롤러가 분리될 때 연결된 본에도 설정해 줄 스케일입니다. 보통 (0,0,0)이면 부속을 완전히 숨깁니다.
  • Death Static Mesh 사망 스태틱 메시 - 이 콘트롤러가 죽을 때 스폰시킬 스태틱 메시입니다.
  • Death Impulse Dir 사망 충격 방향 - 파손된 조각의 속도를 결정하는 데 사용되는 방향입니다.
  • Death Scale 사망 스케일 - 스폰된 비히클 부속에 사용할 스케일입니다. 비히클 반대편의 여러 부속에 사용되고 있는 동일 스태틱 메시를 미러링하는 데 좋습니다.
  • PS_Death On Break PS_파손시 사망 - 사망시 콘트롤러가 분리될 때 스폰시킬, 작은 폭발 효과같은 파티클 시스템입니다.
  • PS_Death Trail PS_사망 흔적 - 떨어져나간 부분에 흔적으로 부착시킬, 연기 흔적 효과같은 파티클 시스템입니다.

소켓 셋업하기

소켓이란 이미 앞서 말한바와 같이, 플레이어 카메라나 총구 섬광은 물론 비히클에 필요할 수도 있는 다양한 부가 효과를 추가하기 위한 부착점으로 사용됩니다. 소켓이란 본질적으로 특정 본에 부모가 되는 로케이터로, 이름을 짓고 오프셋시켜 개별적으로 회전을 줄 수도 있습니다. 이를 통해 특정 위치에 아이템을 쉽게 부착하거나 스폰시킬 수 있습니다.

소켓은 언리얼 에디터 내 애님세트 에디터에서 스켈레탈 메시에 추가합니다. 툴바의 toolbar_socket.jpg 버튼을 누르면 소켓 매니저가 열립니다.

socketmanager.jpg

newsocket_button.jpg 버튼으로 메시에서 사용가능한 본이 전부 나열되는 대화창이 새로 열립니다.

newsocket_bone.jpg

메시의 총신 끝에 추가된 본을 선택하고 OK 를 누릅니다. 그러면 코드에서 새 소켓 식별용으로 사용되는 이름을 지을 수 있는 창이 열립니다.

newsocket_name.jpg

이름을 입력하고서 OK 를 눌러 새 소켓을 추가합니다. 애님세트 에디터의 미리보기 패널과 소켓 매니저의 소켓 목록에 나타날 것입니다.

newsocket_complete.jpg

보여드린 예제는 터렛을 제어하는 탑승자용 카메라에 부착시킬 로케이터로 사용될 것입니다. 다른 소켓은 각 무기 배럴 끝과 효과가 필요할 수도 있는 다른 곳에 추가될 것입니다. 아래의 예제 Vehicle 은 필수 소켓을 전부 추가한 모습입니다.

vehicle_sockets.jpg

발사체 만들기

발사체(프로젝타일)란 무기 발사를 물리적으로 표현한 것입니다. 언리얼에서 발사체의 시각적 성분은 단지 파티클 시스템입니다. 발사체용 파티클 시스템 만들기란 여타 파티클 시스템 만들기와 다를 바 없는 단순한 작업입니다. 본질상 발사체의 비행중 모습을 나타내도록 파티클 시스템을 셋업하고 싶을 것입니다. 원하는 효과를 내는데 필요한 만큼의 이미터로 파티클 시스템을 구성할 수 있습니다.

발사체 파티클 시스템의 예제는 아래와 같습니다:

projectile_link.jpg projectile_rocket.jpg Manta_Proj.jpg

총구 섬광 셋업하기

총구 섬광(Muzzle flash)은 무기의 총신에서 뿜어져 나가는 발사체를 흉내내는 데 사용됩니다. 현실에서도 총을 발사할 때 보게 되는 섬광처럼 말입니다. 언리얼의 웨폰 시스템은 총구 섬광의 시각 성분으로 파티클 시스템을 사용합니다. 발사체와 마찬가지로, 총구 섬광용 파티클 시스템도 필요한 만큼의 이미터로 구성할 수 있습니다.

총구 플래시 파티클 시스템의 예제는 아래와 같습니다:

Scorpion_Flash.jpg mf_rocket.jpg Manta_Flash.jpg

프로그래머용


모든 애셋을 올바르게 셋업해 주고 나서, 프로그래머에게 구현을 위한 정보를 주어야 합니다. 필요한 정보는 다음과 같습니다:

  • SkeletalMesh 이름.
  • PhysicsAsset 이름.
  • AnimTree 이름.
  • 각 바퀴 본 이름.
  • 각 SkelControlWheel 이름.
  • 각 바퀴 반경.

효과적 반복처리를 위해서는 이 정보의 표준 세트를 준비해두는 것이 최선의 방법 입니다.

주: 필요한 정보와 애셋은 전적으로 클래스가 어디에서 확장했는가에 따라 달라집니다. 위의 예제는 SVehicle 에서 확장했다 가정합니다. UTVehicle 에서 확장한 경우, (효과와 웨폰 클래스같은) 애셋이 분명 더 필요하거나, UTVehicle 클래스 전용 아이템이나 좌석도 정의해 좌야 합니다.

스크립트 파일 작성

다음은 Vehicle에 필요한 모든 정보를 어떻게 UnrealScript 클래스 파일(.uc)에 기록하는지 보여주는 예입니다.

// MyVehicle.uc 로 저장
class MyVehicle extends SVehicle;

defaultproperties
{

   Begin Object Name=SVehicleMesh
      SkeletalMesh=SkeletalMesh'VehiclePackage.VehicleMesh'
      AnimTreeTemplate=AnimTree'VehiclePackage.VehicleAnimTree'
      PhysicsAsset=PhysicsAsset'VehiclePackage.VehiclePhysAsset'
   End Object

   Begin Object Class=SVehicleWheel Name=RRWheel
      BoneName="R_R_Tire"
      SkelControlName="R_R_Tire_Cont"
      WheelRadius=25
   End Object
   Wheels(0)=RRWheel
}

주: 비히클의 각 바퀴에 대해 SVehicleWheel 프로퍼티가 하나 있을 것입니다. 또한 위의 두 예제는 SVehicle 에서 확장한다 가정합니다. UTVehicle 에서 확장한다면, 비히클의 여러가지 면을 프로그래머의 스크립트로 셋업해 줘야 할 것입니다.

퍼포먼스: 비히클 튜닝

비히클을 다루는 콘트롤은 많이 있습니다. 일부는 각 SVehicleWheel 오브젝트에 있는 바퀴별 파라미터인 반면, 전체 비히클에 영향을 끼치는 것들은 SVehicle 및 SVehicleSim 오브젝트에 있습니다. 각 파라미터에 대한 설명은 Vehicles Technical Guide KR 페이지를 참고하시기 바랍니다.

유용한 콘솔 명령

비히클 튜닝에 매우 유용한 언리얼 엔진 기능 중 하나는 editactor 콘솔 명령입니다. 비히클을 운전하면서 콘솔에 editactor class=svehicle 이라 치면 프로퍼티창이 뜹니다. 운전하면서 거의 대부분의 파라미터를 조정할 수 있으니 반복처리가 매우 빨라집니다.