플레이 가능한 영역의 그레이박스

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.


그레이박스는 스크립팅이나 최종 아트 자산을 만드는 데 시간을 투자하기 전에 간단한 형태로 레벨을 구축하는 과정입니다. 이를 통해 게임 플레이를 테스트하고 레이아웃 문제를 식별하며 환경이 여전히 수정하기 쉬운 동안 빠르게 변경할 수 있습니다.

이 섹션에서는 게임의 플레이 가능한 영역을 구성하는 바다 스택 플랫폼을 그레이박스합니다. 레이아웃이 적절하게 느껴지면 스크립팅을 시작할 수 있습니다.

플레이 가능한 영역 계획하기

최종 게임에서 플레이어는 점프 파워를 증가시키기 위해 동전을 수집하고 더 높은 플랫폼에 도달합니다. 이 진행 시스템은 나중에 튜토리얼에서 구현할 것이지만, 그레이박스 환경을 계획할 때 이를 고려하는 것이 중요합니다. 일반적으로 플랫폼 간의 높이 차이는 점진적으로 증가해야 하며, 이는 플레이어가 동전을 수집하고 계속 진행하도록 유도합니다.

참고로, 샘플 Island Jump - Building 게임은 7개의 높이 레벨을 사용합니다. 첫 번째 플랫폼은 낮게 위치하여 플레이어가 도달하기 위해 몇 개의 동전만 필요합니다. 이후 높이 차이는 8, 20, 35, 55, 81, 110 스터드로 증가하여 게임 전반에 걸쳐 지속적인 진행 감각을 만듭니다.

샘플 섬 점프 게임의 그레이박스 기하학을 원거리에서 본 모습. 바다 스택 간의 높이 차이 레벨이 강조 표시되어 있습니다.

플랫폼 추가하기

이제 플랫폼 간의 높이 차이에 대한 계획이 세워졌으므로, 바다 스택을 나타내기 위해 자리 표시자 Part 객체를 추가합니다. 파트는 Roblox의 기본 빌딩 블록으로, 모양, 크기, 색상 및 기타 물리적 특성을 제어하는 속성을 가지고 있습니다.

이 프로젝트에서는 플레이어가 점프할 때 착지할 수 있는 평평한 상단을 제공하기 위해 실린더 파트를 사용합니다.

샘플 Island Jump 게임의 그레이박스와 최종 기하학 비교
샘플 Island Jump 게임의 그레이박스 기하학.
샘플 Island Jump 게임의 최종 기하학.

조직 구조 만들기

파트를 추가하기 전에 프로젝트를 정리하기 위해 두 개의 컨테이너를 만듭니다. Roblox는 관련 인스턴스를 그룹화하기 위한 Folder 객체와 3D 객체를 그룹화하기 위한 Model 객체를 제공합니다. 이 튜토리얼에서는 환경을 보관할 World 폴더와 그 폴더 안에 그레이박스 플랫폼을 보관할 Blockout_Parts 모델을 생성합니다.

  1. Explorer에서 Workspace 안에 World라는 이름의 폴더를 만듭니다.
  2. 새 폴더 안에 Blockout_Parts라는 이름의 모델을 만듭니다.

파트 삽입하기

조직 구조가 마련되었으므로, 플랫폼을 위한 실린더를 추가합니다. 어시스턴트 프롬프트를 사용하거나, 수동으로 레이아웃을 만들거나, 샘플 게임의 레이아웃을 재현할 수 있습니다.

어시스턴트가 한 번의 단계로 전체 블록아웃을 생성하도록 하려면, 고유한 레이아웃을 원하든 샘플 게임의 정확한 복사를 원하든 해당 프롬프트를 복사합니다.

자신의 레이아웃 만들기
Workspace > World > Blockout_Parts 안에 여러 개의 실린더 파트를 생성하여 플랫폼을 형성합니다.
섬 중앙에 큰 평평한 실린더 하나로 시작한 다음, 모두 같은 수직 기준에서 시작하지만 높이가 다양한 최소 7개의 실린더를 추가하여 위쪽 경로를 만듭니다.
크기, 위치 및 방향을 조정하여 상단 표면이 평평하고 걸을 수 있도록 하고, 모든 파트를 고정합니다.
샘플 재현하기
Workspace > World > Blockout_Parts 안에 다음 실린더 파트를 생성합니다:
1. Level_1 (Size 12, 131, 131; CFrame.Position -23, -4, 9; CFrame.Orientation 0, 0, 90)
2. Level_2 (Size 20, 81, 81; CFrame.Position -8, 0, 24; CFrame.Orientation 0, 0, 90)
3. Level_3a (Size 40, 44, 44; CFrame.Position 42, 10, 9; CFrame.Orientation 0, 0, 90)
4. Level_3b (Size 40, 34, 34; CFrame.Position 87, 10, 4; CFrame.Orientation 0, 0, 90)
5. Level_3c (Size 40, 44, 44; CFrame.Position 97, 10, 49; CFrame.Orientation 0, 0, 90)
6. Level_4a (Size 75, 39, 39; CFrame.Position 112, 27.5, 46.5; CFrame.Orientation 0, 0, 90)
7. Level_4b (Size 75, 65, 65; CFrame.Position 137, 27.5, 69; CFrame.Orientation 0, 0, 90)
8. Level_4c (Size 75, 60, 60; CFrame.Position 159.5, 27.5, 91.5; CFrame.Orientation 0, 0, 90)
9. Level_4d (Size 75, 30, 30; CFrame.Position 207, 27.5, 106.5; CFrame.Orientation 0, 0, 90)
10. Level_4e (Size 75, 61, 61; CFrame.Position 250, 27.5, 74; CFrame.Orientation 0, 0, 90)
11. Level_5a (Size 130, 60, 60; CFrame.Position 268, 55, 50; CFrame.Orientation 0, 0, 90)
12. Level_5b (Size 130, 25, 25; CFrame.Position 256, 55, 2.5; CFrame.Orientation 0, 0, 90)
13. Level_5c (Size 130, 25, 25; CFrame.Position 276, 55, -17.5; CFrame.Orientation 0, 0, 90)
14. Level_5d (Size 130, 54, 54; CFrame.Position 322, 55, -21; CFrame.Orientation 0, 0, 90)
15. Level_6a (Size 211, 79, 79; CFrame.Position 367, 94.5, -41; CFrame.Orientation 0, 0, 90)
16. Level_6b (Size 211, 24, 24; CFrame.Position 387, 94.5, 11.5; CFrame.Orientation 0, 0, 90)
17. Level_6c (Size 211, 44, 44; CFrame.Position 397, 94.5, 51.5; CFrame.Orientation 0, 0, 90)
18. Level_7 (Size 321, 61, 61; CFrame.Position 407, 149.5, 79; CFrame.Orientation 0, 0, 90)
모든 파트가 고정되고, 올바르게 배치되며, 연속적인 레벨 레이아웃을 형성하도록 합니다.

파트 정렬하기

자신의 레이아웃을 만드는 경우, 모든 플랫폼이 동일한 기준 고도를 공유하고 크기만 다를 때 플랫폼 높이를 관리하는 것이 더 쉽습니다. 정렬 도구Y 축의 하단 모서리를 정렬하여 한 번의 클릭으로 이를 수행할 수 있습니다.

  1. Explorer에서 모든 플랫폼을 선택합니다.

  2. Model 툴바 탭에서 Align을 클릭합니다.

  3. 정렬 도구 창에서:

    1. ModeMin으로 설정합니다.
    2. Align InWorldY로 설정합니다.
    3. Relative ToSelection Bounds로 설정합니다.
  4. Align을 클릭합니다.

하단 모서리를 정렬한 많은 실린더의 수중 뷰.
모든 플랫폼이 하단 모서리를 정렬합니다

빈 터널 만들기

더 많은 시각적 다양성을 추가하기 위해 스튜디오의 솔리드 모델링 도구를 사용하여 바다 스택 중 하나에 터널을 파냅니다. 이 튜토리얼에서는 Negate를 사용하여 구멍을 만들고 Union을 사용하여 파트를 단일 형태로 결합합니다. 모든 솔리드 모델링 도구에 대한 자세한 내용은 솔리드 모델링을 참조하세요.

빈 터널 만들기
빈 터널 구조를 만들기 위해 다음 단계를 따릅니다:
1. 이름을 Tunnel로 하고 크기를 24, 65, 69로 설정하며 CFrame.Position을 137, 77, 69로 설정하고 CFrame.Orientation을 0, 0, 90으로 설정한 실린더 파트를 만듭니다. Anchored를 true로 설정합니다.
2. 이름을 Hollow_Part로 하고 크기를 24.5, 72, 22로 설정하며 CFrame.Position을 134.5, 77, 71로 설정하고 CFrame.Orientation을 0, 135, 90으로 설정한 블록 파트를 만듭니다. 이 파트는 실린더와 교차하여 빈 공간을 정의해야 합니다.
3. Hollow_Part를 부정하여 뺄셈 형태로 만듭니다.
4. Tunnel 파트와 부정된 Hollow_Part를 선택한 다음, Union 작업을 수행하여 빈 형태가 실린더에서 잘리도록 합니다.
5. 결과 Union의 이름을 Level_4b_Union으로 변경합니다.
6. 기존 Level_4b 플랫폼을 찾아 복제하고 복제본의 이름을 Level_4b_Top으로 변경합니다.
7. Level_4b_Top의 크기를 74, 65, 69로 설정하고 CFrame.Position을 137, 126, 69로 설정하며 CFrame.Orientation을 0, 0, 90으로 설정합니다. 터널 위에 위치하도록 합니다.
모든 파트가 올바르게 정렬되고 최종 결과가 열린 통로가 있는 실린더 터널과 그 위에 놓인 플랫폼이 되도록 합니다.

레이아웃 플레이 테스트

스크립팅을 시작하기 전에 레이아웃을 플레이 테스트하여 변경하기 쉬운 동안 문제를 잡아냅니다.

Test 탭에서 플레이 테스트를 시작하고 플레이어의 시작 상태를 시뮬레이션합니다.

  1. Explorer에서 캐릭터를 찾아 Humanoid를 선택합니다.
  2. UseJumpPower를 활성화합니다.
  3. Properties 창에서 JumpPower0으로 설정합니다.
  4. 더 높은 플랫폼에 도달할 때마다 JumpPower30씩 증가시켜 점프 업그레이드를 수집하는 것을 시뮬레이션하고 각 레벨에 도달할 수 있는지 확인합니다.
JumpPower 및 UseJumpPower 속성이 강조 표시된 점프 설정.

다음 섹션에서는 전체 게임 플레이를 스크립팅하는 방법을 배웁니다.

©2026 Roblox Corporation. Roblox 및 Roblox 로고, 'Powering Imagination'은 미국 및 기타 국가 내 당사의 등록 및 미등록 상표입니다.