배울 내용#
Engine에서 실제 씬에 prop을 배치하고, 물리를 부여한 다음, Play 모드에서 테스트하고, 편집을 위해 Sculpt나 Pigment로 다시 보내는 왕복 기능을 사용합니다.
시작하기 전에#
- Pigment에서 prop에 텍스처 입히기를 마쳤거나, 텍스처가 입혀진 mesh를 준비해 두세요.
- Engine은 후원이 필요한 모듈입니다. 브라우저가 지원하면 WebGPU를 사용하고, 그렇지 않으면 WebGL2로 폴백하므로 어떤 경우든 열립니다.
- 알아두면 좋은 점: Engine은 완전한 기능을 갖춘 게임 엔진입니다. 씬은 Scene Graph 안에 있는 엔티티들의 트리이며, 각 엔티티는 여러 컴포넌트(Transform, Model, Light, Camera, RigidBody, Collider, Script)의 집합입니다.
단계#
-
Engine을 열고 빈 씬에서 시작하거나 데모 템플릿 중 하나를 불러와 바닥면과 조명을 거저 얻으세요.
Warning: 데모 씬은 저장되지 않습니다. 데모 위에 작업을 이어간다면, 나가기 전에 자신의 프로젝트로 저장하세요.
-
prop을 가져옵니다. Pigment에서 넘겨받거나
.glb파일을 직접 가져오세요. Transform과 Model 컴포넌트가 이미 붙어 있는 엔티티로 도착합니다. -
Scene Graph에서 엔티티를 선택하고 인스펙터에서 Transform을 확인합니다. 지금 바닥에 배치하고 적절한 스케일을 설정하세요. 이후 모든 단계가 이 값을 그대로 물려받기 때문입니다.
-
Add Component로 Collider를 추가합니다. 이것이 없으면 prop은 눈에 보이는 형태만 있을 뿐, 물리가 건드릴 수 있는 것이 아무것도 없는 상태가 됩니다.
Tip: 콜라이더는 용도에 맞게 선택하세요. prop을 대략적으로 근사하는 단순한 형태는 정확한 mesh 콜라이더보다 런타임 비용이 적으며, 바위라면 그 차이를 아무도 눈치채지 못할 것입니다.
-
prop이 물리의 영향을 받아야 한다면 Rigidbody를 추가합니다. 절대 움직이지 않는 배경 요소라면 추가하지 마세요. 정적 지오메트리가 비용이 더 적게 들기 때문입니다.
-
Play를 누릅니다. 이 모드에서는 물리가 실제로 작동하므로, Rigidbody와 콜라이더를 가진 prop은 떨어지고 착지한 다음 자리를 잡습니다.
-
착지할 때 무슨 일이 일어나는지 지켜보세요. 바닥을 뚫고 가라앉거나, 떨리거나, 이상하게 튕기는 prop은 콜라이더나 질량이 잘못되었다는 신호입니다.
-
정지 버튼을 누르고 조정합니다. Play 모드는 테스트를 위한 것이지 제작을 위한 것이 아닙니다.
-
Engine을 벗어나지 않고 모델링 문제를 고치세요: Scene Graph에서 prop을 우클릭하고 Edit in을 사용해 Sculpt, Pigment, Retopo 중 하나로 엽니다. 수정한 내용은 다시 돌아와 prop을 그 자리에서 업데이트합니다.
Tip: Shift+click, Mac에서는 Cmd+click으로 다중 선택한 다음 여러 오브젝트를 하나로 합쳐 보낼 수 있습니다. Mac에서 Ctrl+click은 컨텍스트 메뉴를 열 뿐 선택을 바꾸지 않습니다.
-
씬을 저장하고, 프로젝트가 계정을 따라다니도록 Save to Cloud를 사용하세요.
결과#
prop이 이제 플레이 가능한 씬 안에 존재합니다: 물리적 실체를 가지고, 실제 물리 아래에서 행동하며, 언제든지 아무것도 내보내거나 다시 가져오지 않고 상류 단계로 되돌려 편집할 수 있습니다.
더 알아보기#
- 스크립트로 prop에 행동을 부여하세요. Engine은 50개의 네임스페이스에 걸쳐 538개 멤버로 구성된 API를 통해
start,update(dt),onCollision,onTrigger같은 라이프사이클 훅을 제공합니다. - 로직을 직접 작성하기보다 시각적으로 구성하고 싶다면 Blueprints를 사용해 보세요.
- prop 주변 환경을 만들려면 지형 에디터와 Sky & Atmosphere 패널을 살펴보세요.