Mesh 101 자습서 4장: 메시 상호 작용 가능 개체 및 물리학을 사용하여 개체 이동 및 트리거 애니메이션

이 챕터에서는 풍력 발전 단지의 모델을 사용합니다. 메시 상호 작용 가능 개체 및 물리학을 사용하여 고정 본문(이 경우 풍력 터빈)을 잡고 해제하고 시각적 스크립팅을 사용하여 애니메이션 트리거를 설정하는 방법을 알아봅니다. 풍력 터빈을 제한하여 지정된 영역 내에서만 이동할 수 있도록 래핑합니다.

이 챕터는 3장에서 했던 것보다 약간 더 간단합니다---스크립팅이 없으며, 네트워킹이 설정되어 물리학이 세션의 모든 아바타와 동일하게 표시됩니다.

첫 번째 역을 시작하기 전에 해야 할 몇 가지 사항이 있습니다.

계층 구조 다시 구성

  • 계층 구조에서 Chapter3 GameObject를 축소한 다음 Chapter4 GameObject를 확장합니다.

컴퓨터 설명의 스크린샷

4장 구 테라스를 표시하도록 보기 변경

Mesh의 환경에서 참가자는 챕터 3의 끝에서 4장의 시작 부분으로 원활하게 이동하고 4장 학습 활동을 시작하기 위해 제대로 배치됩니다. 그러나 챕터 3의 끝에서 재생 모드를 종료했을 때 장면 창에서 4장 모델에 대한 보기가 자동으로 배치되지 않았습니다. 해당 보기를 설정해 보겠습니다.

  1. 계층 구조에서 4.1 -- Grab and Release라는 GameObject를 선택합니다.

    컴퓨터 설명의 스크린샷

  2. 장면 창 위로 커서를 이동한 다음 키보드에서 F 키를 누릅니다.

    4.1 -- Grab 및 Release 개체에 대한 뷰를 중심으로 하지만 필요한 위치에 있지 않을 가능성이 큽니다.

  3. 아래와 같이 4장 스테이션이 앞에 표시될 때까지 보기를 끌어서 회전하거나 확대/축소합니다.

    컴퓨터에서 생성된 산 모델 이미지 설명이 자동으로 생성됨

스테이션 4.1: 잡아서 놓기

이 교육 장의 참가자의 목표는 풍력 터빈을 탁상에서 바다로 이동하는 것입니다. 일단 그곳에 도착하면 터빈은 바다 바람을 포착하여 블레이드가 회전하고 전력을 생성합니다.

  1. 계층 구조에서 4.1 -- Grab and Release GameObject를 확장합니다. 장면의 탁상에 있는 세 개의 Wind Turbine GameObjects가 포함되어 있습니다.

    컴퓨터 설명의 스크린샷

    참가자가 Mesh에서 이동할 수 있도록 WindTurbine1 에 "잡기 및 릴리스" 기능을 추가해 보겠습니다.

  2. 계층 구조에서 WindTurbine1을 선택합니다.

  3. 검사기에서 구성 요소 추가 단추를 클릭한 다음 메시 상호 작용 가능 설정을 검색하여 추가합니다.

    스크린샷

    이 구성 요소에 대한 설명은 이 자습서의 3장에서 제공되었습니다.

  4. 동일한 구성 요소에서 개체 유형 드롭다운을 클릭한 다음 , 관리 가능을 선택합니다.

    스크린샷

  5. 구성 요소가 활성 상태인지 확인합니다.

  6. Rigidbody 구성 요소에서 필요한 경우 제약 조건 옵션을 확장한 다음 회전 고정 설정에서 X,YZ를 선택합니다.

    컴퓨터 스크린샷, 자동으로 생성된 설명

이렇게 하면 터빈을 고르지 않은 표면에 놓으면 터빈이 뒤집히는 것을 방지할 수 있습니다.

작업 테스트

  1. 프로젝트를 저장한 다음 Unity 편집기 재생 단추를 선택합니다.

    플레이 모드로 전환할 때마다 게임 창의 시작점은 챕터 3 Sphere Terrace입니다. 이 챕터의 경우 다른 Sphere Terrace---4 챕터 기능이 있는 Sphere Terrace에 있습니다. 다행히도, 거기에 도착하는 쉬운 방법이있다.

  2. 4장으로 이동 정보 상자가 표시될 때까지 보기를 오른쪽으로 회전합니다.

    컴퓨터 설명의 스크린샷

  3. 정보 상자까지 이동한 다음, 4장까지 텔레포트 단추를 선택합니다.

    컴퓨터 스크린샷, 자동으로 생성된 설명

  4. 챕터 4 구 테라스에 도착한 후 WindTurbine1 위로 커서를 이동하면 모양이 변경됩니다. 그런 다음 터빈을 장면 주위로 끕니다.

    터빈은 회전 고정 제약 조건을 켜면 수직으로 유지됩니다.

    그림

  5. Unity 편집기 재생 단추를 클릭하여 재생 모드를 종료합니다.

다른 두 풍력 터빈을 업데이트할 필요가 없습니다. 이미 업데이트했습니다.

스테이션: 4.2 애니메이션 트리거

여기서 아이디어는 풍력 터빈을 바다 위로 끌면 "바람"으로 인해 터빈의 블레이드가 회전한다는 것입니다. 실제로 발생하는 일은 애니메이션 트리거 라는 투명한 큐브가 바다 위에 있으며 트리거 볼륨 역할을 한다는 것입니다. 풍력 터빈을 트리거 볼륨으로 끌면 회전 블레이드 애니메이션을 시작하는 On Trigger Enter 이벤트가 시작됩니다.

이 챕터에서는 GameObject에 스크립트를 추가한 다음 스크립트에서 애니메이션을 사용하도록 설정합니다.

  1. 계층 구조에서 4.2 -- 애니메이션 트리거 GameObject를 확장한 다음 애니메이션 트리거라는 자식 개체를 선택합니다.

    스크린샷

    애니메이션 트리거 GameObject의 상자 충돌체의 녹색 윤곽선을 볼 수 있습니다.

    스크린샷

  2. 검사기에서 Box Collider 구성 요소로 이동한 다음 트리거를 선택합니다.

    스크린샷

트리거를 선택하면 충돌체 구성 요소가 트리거 볼륨에 연결된 개체가 됩니다.

  1. 계층 구조에서 4장 4.1>- 잡아서 놓기로 이동한 다음 WindTurbine1을 선택합니다.
  2. 구성 요소 추가 단추를 클릭한 다음 스크립트 머신을 검색하여 추가합니다.

스크립트를 포함하려고 하지만 일반적으로 처음부터 새 스크립트 그래프 만들기를 시작해야 합니다. 바로 가기를 살펴보겠습니다. 지금은 원본 옵션을 Graph 로 설정합니다. 기존 스크립트 그래프를 연결한 다음 포함된 그래프로 변환합니다.

  1. 그래프 필드에서 단추를 클릭한 다음 SelectSceneGraph 창에서 SPWindTurbineScript를 선택합니다.

    스크린샷

  2. 변환 단추를 클릭합니다. 이렇게 하면 그래프 설정이 제거되고 원본 옵션이 포함으로 변경 됩니다.

그래프에 회전 블레이드 애니메이션 추가

잠시 시간을 내어 스크립트 그래프를 검사합니다. 두 개의 그룹이 있습니다. 위쪽 그룹은 사용자가 풍력 터빈을 트리거 볼륨으로 끌 때 블레이드 회전 애니메이션을 트리거하고, 하위 그룹은 사용자가 터빈을 볼륨 밖으로 끌 때 애니메이션을 중지합니다.

스크린샷

그래프는 원하는 방법을 거의 설정하지만 남은 문제는 하나 있습니다. 두 개의 Animator: 트리거 노드 설정 ...로 설정됩니다.

스크린샷

... 그러나 애니메이션(즉, WindTurbine1)에는 트리거하려는 애니메이션이 없습니다. 찾아봅시다.

  1. 계층 구조에서 WindTurbine1을 확장한 다음 WindTurbineBody라는 자식 개체를 확장합니다. 그러면 Windmill_Turbine_001:Propellors10이라는 자식 개체가 표시됩니다.

    스크린샷

  2. Windmill_Turbine_001:Propellors10을 선택한 다음 검사에서 WindTurbine1Propellers라는 Animator 컨트롤러가 있는 Animator 구성 요소가 포함되어 있음을 확인합니다.

    스크린샷

    애니메이터는 애니메이션을 제공합니다.

  3. 계층 구조에서 Windmill_Turbine_001:Propellors10 GameObject를 끌어서 스크립트 그래프에서 Animator: 첫 번째 그룹에 있는 트리거 노드 설정의 첫 번째 필드에 놓습니다.

    스크린샷

  4. 계층 구조에서 Windmill_Turbine_001:Propellors10 GameObject 를 다시 끌어 다 놓은 다음 스크립트 그래프에서 Animator: 두 번째 그룹에 있는 트리거 노드 설정의 첫 번째 필드에 놓습니다.

이제 스크립트가 완료되었습니다.

작업 테스트

  1. 프로젝트를 저장한 다음 Unity 편집기 재생 단추를 누릅니다.

  2. 앞에서 설명한 대로 재생 모드를 입력하면 아바타가 Chapter3 Sphere Terrace에 배치됩니다. 장면을 오른쪽으로 회전한 다음 텔레 포트에서 챕터 4 단추로 이동한 다음 누릅니다.

    컴퓨터 스크린샷, 자동으로 생성된 설명

  3. 이제 Chapter4 Sphere Terrace에 있어야 합니다. WindTurbine1(미리 알림: 뒤쪽에서 가장 먼 블레이드, 빨간색 블레이드가 있는 것)을 바다 위로 끕니다. 이제 터빈의 블레이드가 회전합니다.

    스크린샷, 3D 모델링, PC 게임, 비디오 게임 소프트웨어 설명이 자동으로 생성되는 그림

  4. 같은 터빈을 바다에서 끌어와 탁상 위에 다시 놓습니다. 터빈의 블레이드가 회전을 중지합니다.

  5. 애니메이션 관찰을 마치면 Unity 편집기 재생 단추를 눌러 재생 모드를 종료합니다.

당신은 다른 풍력 터빈을 업데이트 할 필요가 없습니다---우리는 이미 당신을 위해 그것을 했습니다.

스테이션 4.3: 제한 본문

현재 참가자가 풍력 터빈을 놓을 수 있는 위치에 대한 제약은 없습니다. 우리는 그들이 바람을 잡을 수있는 바다에 터빈을 배치 희망 하지만, 참가자는, 예를 들어, 실수로 바닥에 터빈을 떨어 뜨릴 수 있습니다. 터빈이 탁상이나 바다에만 착륙할 수 있도록 봉쇄 필드를 설정할 수 있도록 이 문제를 방지하려고 합니다. 이것은 기본적으로 투명한 상자입니다--- 터빈은 상자 내부로 제한됩니다.

  1. 계층 구조에서 4.3 -- 제한 본문 GameObject를 확장하고 포함 필드라는 자식 개체를 선택합니다.

    컴퓨터 스크린샷, 자동으로 생성된 설명

  2. 검사기에서 구성 요소 추가 단추를 선택한 다음, 포함 필드 구성 요소를 추가합니다.

    컴퓨터 스크린샷, 자동으로 생성된 설명

  3. 포함 필드 구성 요소에서 영향을 받는 본문 옵션의 오른쪽에 있는 "+" 단추를 선택한 다음 팝업 메뉴에서 게임 개체 이름 조건을 선택합니다.

    컴퓨터 스크린샷, 자동으로 생성된 설명

  4. 시작 상자에 "WindTurbine"을 입력 합니다 . 이 장면의 세 풍력 터빈은 모두 "WindTurbine"으로 시작하므로 모두 봉쇄 필드로 제한됩니다.

    컴퓨터 설명의 스크린샷

작업 테스트

  1. 프로젝트를 저장한 다음 Unity 편집기 재생 단추를 누릅니다.

  2. 앞에서 설명한 대로 재생 모드를 입력하면 아바타가 Chapter3 Sphere Terrace에 배치됩니다. 장면을 오른쪽으로 회전한 다음 텔레 포트에서 챕터 4 단추로 이동한 다음 누릅니다.

    컴퓨터 스크린샷, 자동으로 생성된 설명

  3. 이제 Chapter4 Sphere Terrace에 있어야 합니다. 풍력 터빈 중 하나를 탁상과 바다에서 끌어 바닥에 떨어뜨리십시오. 포함 필드는 이렇게 하지 못하게 합니다.

4장: 요약

이 장에서는 환경의 참가자가 다음을 수행할 수 있도록 하는 Mesh 기능을 추가했습니다.

  • 개체를 잡고 이동

  • 참가자가 개체를 트리거 볼륨으로 끌 때 애니메이션 트리거

  • 지정한 특정 영역에만 개체 삭제

다음 단계

5장: 테스트에 환경을 사용할 수 있도록 만들기