小テスト:Create with Code 2

Quiz

Beginner

+180 XP

30m

Unity Technologies

小テスト:Create with Code 2 thumbnail

この小テストでは「Create with Code 2 Mission」で扱われるコンセプトの理解度を評価します。

Languages available:

Question 1

Random.Range が 8 という値を返した場合、コンソールにはどのようなデバッグメッセージが記録されますか?

int randomInt = Random.Range(0,10);
if(randomInt <= 3)
{
   Debug.Log("Low");
}
else if(randomInt > 8)
{
   Debug.Log("High");
}
else
{
   Debug.Log("Medium");
}

Select only one

Question 2

次のうち、「Success」と正常に表示される条件はどれでしょうか?

  1. if (true && !false) { print(“Success”); }
  2. if (true || false) { print(“Success”); }
  3. if (true && !true) { print(“Success”); }
  4. if (false || !true) { print(“Success”); }

Select only one

Question 3

コンソールに “First String” “Second string” “Third string” と表示させるには、以下の空欄にどのようなコードを記述すればよいでしょうか?

string[] strings = new string[3];
 
strings[0] = "First string";
strings[1] = "Second string";
strings[2] = "Third string";
 
foreach (__________)
{
    print (item);
}

Select only one

Question 4

次のコードを実行すると、コンソールに何が表示されますか?

void Start()
{
    StartCoroutine(MyCoroutine());
}

private IEnumerator MyCoroutine()
{
 yield return new WaitForSeconds(5);
    Debug.Log("Test");
   StartCoroutine(MyCoroutine());
}

Select only one

Question 5

コンソールに「Incorrect dialogue value」と表示するために、どのようなコードで空白を埋めますか?

int dialogue = 3;

void Start()
{
   _______________
   {
      case 2:
         print("Goodbye, old friend");
         break;
      case 1:
         print("Hello there");
         break;
      default:
         print("Incorrect dialogue value");
         break;
   }
}

Select only one

Question 6

プレイヤーオブジェクトがコインオブジェクトと衝突したとき、コインオブジェクトはプレイヤーオブジェクトの物理演算に影響を与えることなく瞬時に消滅する必要があります。コインを破壊するために、この 2 つのオブジェクトの衝突を検出するには、どのイベント関数を使用すればよいでしょうか?

Select only one

Question 7

Unity のスクリプト API によると、Component.GetComponent メソッドの有効なオプションは次のとおりです:

public Component GetComponent(Type type);
public Component GetComponent(string type);

このメソッドの正しい実装は次のうちどれでしょう?

Select only one

Question 8

Unity Scripting API によると、Transform.Translate メソッドの有効なオプションは以下のとおりです:

public void Translate(Vector3 translation);
public void Translate(Vector3 translation, Transform relativeTo);
public void Translate(float x, float y, float z);
public void Translate(float x, float y, float z, Transform relativeTo);

次のメソッド呼び出しのうち、エラーになるものはどれですか?

Select only one

Question 9

下図のようなアニメーションの遷移があった場合、キャラクターが「Idle」状態から「Walk」状態に遷移するのは、どのコードでしょうか?

Select only one

Question 10

Unity の Scripting API によると、Input.GetButtonDown メソッドの有効なオプションは以下のとおりです:

public static bool GetButtonDown(string buttonName);

例えば、ユーザーが「Fire1」ボタンを押したときに弾丸を発射したい場合、以下の空欄に何を記入すればよいのでしょうか:

public GameObject projectile;
void Update()
{
  if (__________) 
    Instantiate(projectile, transform.position, transform.rotation);
}

Select only one

Question 11

以下のスクリプトは、シーン内の Player ゲームオブジェクトにアタッチされています。以下のコードを実行した結果、コンソールには何が表示されるでしょうか?

public class PlayerManager : MonoBehaviour
{
 string playerName = "Frank";
 void Start()
  {
    Debug.Log("Hello: " + gameObject.name + playerName);
  }
}

Select only one

Question 12

データ型について、正しくないものはどれですか?

Select only one

Question 13

次のうち、正しく初期化されていない変数はどれでしょうか?

  1. List<GameObject> objectList = new List<GameObject>();
  2. GameObject[] objectArray = new GameObject[];
  3. Dictionary<string, GameObject> objectDict = new Dictionary<string, GameObject>();
  4. bool isTrue = true;

Select only one

Question 14

変数修飾子について、次のうち正しくないものはどれですか?

Select only one

Question 15

次のコードを実行すると、どのような結果になるでしょうか?

public class ExampleClass : MonoBehaviour
{
 void Start()
  {       
   SceneManager.LoadScene(Random.Range(0, SceneManager.sceneCount));
  }
}

Select only one

Question 16

数値を受け取り、その数値を最も近い整数に値を丸めた複製を返すメソッドを構築するために、以下の空欄にどのようなコードを出現順に入れますか:

_____ DuplicateNumber(float _____)
{
  number *= 2;
 int newNumber = Mathf.RoundToInt(number);
  _____ newNumber;
}

Select only one

Question 17

以下の空白を埋めるためのメソッド宣言は、2 つの帰属する float 値のうち大きい方を返す必要がありますか?

_____________________
{
 float result;
 if (num1 > num2)
    result = num1;
 else
    result = num2;
 return result;
}

Select only one

Question 18

次のようなローディングシーンのシーケンスを作成したいと思います。レベル選択画面には、各レベルに対応したボタンがいくつかあります。ユーザーがレベルをクリックすると、新しいローディング画面が現れ、選択したレベル番号が表示され、5 秒後にそのレベルに対応するシーンがロードされるようにしたいと思います。これをどのように実装するのか、高いレベルで教えてください。

Select only one

Question 19

変数とメソッドの使用に関する次のガイドラインのうち、正しくないものはどれですか?

  1. 変数名は短くするよりも、完全な単語を含む長いものにすべきです(例:「int secElpsd」よりも「int secondsElapsed」の方が良い)。
  2. メソッド名には通常、動詞またはアクションを含める必要があります(例:「RandomObject」よりも「void GenerateRandomObject」の方が良い)。
  3. メソッドは通常、2 つか 3 つのことを実行する必要があります。それぞれ 1 つのことしか実行しないメソッドがある場合、それらを組み合わせることは理にかなっています。
  4. Boolean の値 (ブール値) の名前をつけるときは、「is」「has」「can」などの一般的な単語 (例: 「isRaining」「hasStarted」「canMove」) を使って、それが Boolean であることを示します。

Select only one

Question 20

True または False を選択してください:

以下のコードスニペットでは、標準的なオブジェクト指向のフレームワークではなく、Unity の Entity Component System (ECS) を使用しています。

using System;
using Unity.Entities;

namespace Shooter.ECS
{
    [Serializable]
    public struct MoveSpeed : IComponentData
    {
        public float Value;
    }

    public class MoveSpeedComponent : ComponentDataWrapper<MoveSpeed> { }
}

Select only one

Submit answers

To calculate your score, submit your answers to the quiz. A passing score will mark this quiz complete.

Correct answers needed to pass

19/20

Retake allowed after

0 Mins