Priv's Blog

Programming Simple Functionality: Unit 3 - Sound and Effects) Quiz 3 본문

Unity Learn/Pathway: Junior Programmer

Programming Simple Functionality: Unit 3 - Sound and Effects) Quiz 3

Priv 2021. 7. 24. 18:10

출처

 

Quiz 3 - Unity Learn

This quiz will assess your knowledge of the skills and concepts learned in Unit 3.

learn.unity.com


 

 

문제 1

플레이어가 죽었을 때 적들이 생성되는 것을 멈추게 만들기 위해 아래와 같이 두 개의 스크립트를 작성하였습니다. 그러나, EnemySpawner 스크립트 파일 내에 밑줄 친, "isAlive" 코드 부분에서 에러가 발생했습니다. 에러가 발생한 이유가 무엇인가요?

 

  1. "playerController.isAlive"에서 "p"가 대문자여야 합니다.
  2. PlayerController 클래스 안에 "bool" 형 변수에 "public" 접근 지정자가 필요합니다.
  3. Update 메서드 안에는 if문을 사용할 수 없습니다.
  4. "isAlive"는 필히 대문자 "I"로 시작되어야 합니다. ("IsAlive")

 

- 정답

더보기

답: 2

다른 클래스에서 변수에 접근하기 위해서는, 변수에 "public"이 필요합니다. 기본적으로, 접근 지정자를 기입하지 않을 경우, 변수는 private 상태이며, 다른 클래스에서 접근할 수 없습니다.

 


 

문제 2

매개변수 세트들을 애니메이션 메서드에 맞게 배치해주세요.

 

  1. 1A, 2B, 3C
  2. 1A, 2C, 3B
  3. 1B, 2A, 3B
  4. 1C, 2A, 3B

 

- 정답

더보기

답: 3

SetInt는 정수형(interger) 매개변수를 필요로 하며, SetBool은 불리언(boolean) 매개변수를, SetTrigger는 트리거의 이름/id만을 필요로 합니다.

 


 

문제 3

아래에 주어진 애니메이션 컨트롤러 / 상태 머신 (animation controller / state machine)에서 캐릭터 트랜지션(transition) 값이 "Idle" 상태에서 "Walk" 상태로 바뀌도록 만드는 코드는 무엇입니까?

 

  1. setFloat("Speed_f", 0.3f);
  2. setInt("Speed_f", 1);
  3. setTrigger("Speed_f");
  4. setFloat("Speed_f", 0.1f);

 

- 정답

더보기

답: 1

inspector에서 "Speed_frk 0.25보다 큼"이라는 트랜지션의 상태 값을 보실 수 있습니다. 소수점을 사용하며 값이 0.25보다 커야 하기 때문에 float형이 필요하다는 것을 알 수 있습니다.

 


 

문제 4

GameObject의 AudioSource 컴포넌트 대한 올바른 참조 방법은 무엇인가요?

 

  1. A 줄
  2. B 줄
  3. C 줄
  4. D 줄

 

- 정답

더보기

답: 1

"GetComponent <AudioSource>();"는 GetComponent 메서드를 사용하는 올바른 방법입니다.

 


 

문제 5

아래 코드의 프로젝트를 실행했을 때, 다음과 같은 에러가 발생합니다: "NullReferenceException: Object reference not set to an instance of an object." 어느 부분이 문제인가요?

 

  1. Player 오브젝트가 collider를 가지고 있지 않음
  2. Enemy 오브젝트가 Rigidbody 컴포넌트를 가지고 있지 않음
  3. "Start" 메서드가 아니라 "Update" 메서드여야 함
  4. scene에 "Player"라는 이름의 오브젝트가 존재하지 않음

 

- 정답

더보기

답: 4

scene에 존재하지 않는 오브젝트에 대해 "Find" 함수를 사용하시면, "NullReferenceException" 에러가 발생합니다.

 


 

문제 6

플레이어가 땅에 서 있고 게임이 끝나지 않았음을 검사하는 조건문은 어느 것인가요?

 

  1. A 줄
  2. B 줄
  3. C 줄
  4. D 줄

 

- 정답

더보기

답: 3

!= 의 의미는 "같지 않다" 이므로, "gameOver != true"는 게임이 끝나지 않았다. 를 검사하는 문장입니다. 만약 여러분이 "isOnGround"처럼 불리언 이름만을 사용하실 경우, 해당 불리언 값이 참인지를 검사하게 됩니다. 두 가지 조건이 모두 만족하는 지를 검사하는 논리 연산자는 "&&"입니다.

 


 

문제 7

기본적으로 Animation Controller에서 어떤 state 값이 가장 먼저 사용되나요?

 

  1. "Any State"
  2. "NotCrouched"
  3. "Death"
  4. "Crouch_Up"

 

- 정답

더보기

답: 2

기본 시작 상태는 "Entry" 상태와 연결된 것입니다.

 


 

문제 8

다음 중, 유니티의 표준 명명 규칙을 따르는 변수 선언은 무엇인가요? (특히 대문자 사용과 관련하여)

 

  1. 2번 줄과 4번 줄
  2. 3번 줄과 6번 줄
  3. 4번 줄과 5번 줄
  4. 1번 줄과 5번 줄

 

- 정답

더보기

답: 4

 

  1. private Animator anim; - 정답
  2. private player Player; - “private Player player”이어야 합니다.
  3. Float JumpForce = 10.0f; - “float jumpForce = 10.0f"이어야 합니다.
  4. bool gameOver = True; - “true” (소문자 “t”)이어야 합니다.
  5. private Vector3 startPos; - 정답
  6. Public gameObject ObstaclePrefab; - “public GameObject obstaclePrefab”이어야 합니다.

 

 


 

문제 9

아래의 "Run"과 "Walk" 사이의 트랜지션을 나타내기 위한 상태 값으로 올바른 것은 무엇인가요?

 

  1. Jump_b가 참(true)
  2. Speed_f가 0.5보다 작음
  3. Speed_f가 0.5보다 큼
  4. Animation_int가 10보다 작음

 

- 정답

더보기

답: 2

만약 여러분이 달리기에서 걷기 상태로 전환할 경우, 속도가 줄어들 것이므로, "Speed_f가 0.5보다 작음"을 검사하는 것이 가장 적합합니다.

 


 

문제 10

다음 중, 단순한 이동 상태 머신에 가장 적합하다고 생각하는 것은 무엇인가요?

이미지 A.

이미지 B.

이미지 C.

 

  1. 이미지 A
  2. 이미지 B
  3. 이미지 C

 

- 정답

더보기

답: 1

기본 상태로 "Idle"로 시작한 다음, 모든 상태들(Idle, Walk, Run) 간에 전환이 가능해야 합니다. Walk와 Run 상태 간에는 필히 전환이 가능해야 합니다.

 


 


수고하셨습니다!


Comments