Bird
Raised Fist0
Unityframework~20 mins

Scene hierarchy window in Unity - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Scene Hierarchy Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
What is the output of this Unity C# script affecting the hierarchy?
Consider the following Unity C# script attached to a GameObject in a scene. What will be printed in the Console when the scene starts?
Unity
using UnityEngine;

public class HierarchyTest : MonoBehaviour {
    void Start() {
        Debug.Log(transform.childCount);
        foreach (Transform child in transform) {
            Debug.Log(child.name);
        }
    }
}
AThe number of children of the GameObject, followed by each child's name on a new line
B0
CNullReferenceException at runtime
DThe name of the GameObject only
Attempts:
2 left
💡 Hint
Think about what transform.childCount returns and how foreach over transform works.
🧠 Conceptual
intermediate
1:30remaining
Which statement about the Scene Hierarchy window is true?
Select the correct statement about the Unity Scene Hierarchy window.
AIt shows GameObjects from all loaded scenes combined.
BIt only shows GameObjects that are active in the scene.
CIt shows all GameObjects in the current scene including inactive ones.
DIt allows editing of GameObject components directly.
Attempts:
2 left
💡 Hint
Think about whether inactive GameObjects appear in the hierarchy.
🔧 Debug
advanced
2:30remaining
Why does this code not find a child GameObject in the hierarchy?
This code tries to find a child GameObject named "Enemy" but always returns null. Why? GameObject enemy = transform.Find("Enemy").gameObject;
AThe code should use GameObject.Find instead of transform.Find.
BThe child "Enemy" is nested deeper than one level, so transform.Find("Enemy") returns null.
CThe child "Enemy" is inactive, so transform.Find cannot find it.
DThe child "Enemy" does not exist in the scene at all.
Attempts:
2 left
💡 Hint
Remember how transform.Find works with paths and direct children.
📝 Syntax
advanced
2:00remaining
Which code snippet correctly moves a GameObject under a new parent in the hierarchy?
Select the correct code to set the parent of a GameObject named "child" to another GameObject named "parent".
Achild.transform.SetParent(parent.transform);
Bchild.parent = parent.transform;
Cchild.transform.SetParent(parent);
Dchild.transform.parent = parent.transform;
Attempts:
2 left
💡 Hint
Check the correct method and parameter type for setting a parent transform.
🚀 Application
expert
3:00remaining
How many GameObjects will be active in the scene after this code runs?
Given a GameObject "Root" with 3 children: "A" (active), "B" (inactive), and "C" (active). The code below runs: foreach (Transform child in root.transform) { child.gameObject.SetActive(false); } root.SetActive(true);
A4
B3
C0
D1
Attempts:
2 left
💡 Hint
Remember what SetActive does to children and the parent separately.

Practice

(1/5)
1. What does the Scene hierarchy window in Unity primarily display?
easy
A. The list of scripts attached to objects
B. All objects in the current scene arranged in a tree view
C. The textures used in the scene
D. The lighting settings of the scene

Solution

  1. Step 1: Understand the purpose of the Scene hierarchy window

    The Scene hierarchy window shows all objects currently in the scene, organized in a tree structure to show parent-child relationships.
  2. Step 2: Identify what is NOT shown in the hierarchy window

    Scripts, textures, and lighting settings are managed elsewhere, not in the hierarchy window.
  3. Final Answer:

    All objects in the current scene arranged in a tree view -> Option B
  4. Quick Check:

    Hierarchy = objects tree view [OK]
Hint: Hierarchy shows scene objects in a tree, not scripts or textures [OK]
Common Mistakes:
  • Confusing hierarchy with project or inspector windows
  • Thinking scripts or textures appear in hierarchy
  • Assuming lighting settings are shown here
2. Which of the following is the correct way to rename an object in the Scene hierarchy window?
easy
A. Drag the object to the Inspector window
B. Double-click the object in the Scene view
C. Right-click the object and select 'Rename' or press F2
D. Delete the object and create a new one with the desired name

Solution

  1. Step 1: Identify how to rename objects in the hierarchy

    In Unity, you can rename an object by right-clicking it in the hierarchy and choosing 'Rename' or by selecting it and pressing F2.
  2. Step 2: Understand why other options are incorrect

    Double-clicking in Scene view does not rename. Dragging to Inspector does not rename. Deleting and recreating is unnecessary.
  3. Final Answer:

    Right-click the object and select 'Rename' or press F2 -> Option C
  4. Quick Check:

    Rename via right-click or F2 [OK]
Hint: Use right-click or F2 to rename objects in hierarchy [OK]
Common Mistakes:
  • Trying to rename by double-clicking in Scene view
  • Dragging objects to Inspector to rename
  • Deleting objects to rename
3. Given this hierarchy structure:
RootObject
 ├─ ChildA
 └─ ChildB
     └─ GrandChild

Which object is the parent of GrandChild?
medium
A. RootObject
B. ChildA
C. GrandChild has no parent
D. ChildB

Solution

  1. Step 1: Analyze the hierarchy tree structure

    The tree shows that GrandChild is nested under ChildB, meaning ChildB is its direct parent.
  2. Step 2: Confirm parent-child relationships

    RootObject is the top parent, ChildA and ChildB are children of RootObject, and GrandChild is child of ChildB.
  3. Final Answer:

    ChildB -> Option D
  4. Quick Check:

    Parent of GrandChild = ChildB [OK]
Hint: Look at indentation to find parent-child links [OK]
Common Mistakes:
  • Choosing RootObject as direct parent of GrandChild
  • Confusing siblings with parents
  • Thinking GrandChild has no parent
4. You try to drag an object under another in the Scene hierarchy to make it a child, but it doesn't move. What could be the problem?
medium
A. The object is locked or part of a prefab instance that prevents reparenting
B. You need to rename the object first
C. The Scene hierarchy window is closed
D. You must delete the object before moving it

Solution

  1. Step 1: Understand drag-and-drop restrictions in hierarchy

    Objects that are locked or part of prefab instances may not allow reparenting by drag-and-drop.
  2. Step 2: Eliminate incorrect reasons

    Renaming is unrelated. If hierarchy window was closed, you couldn't drag. Deleting is unnecessary.
  3. Final Answer:

    The object is locked or part of a prefab instance that prevents reparenting -> Option A
  4. Quick Check:

    Locked or prefab blocks drag [OK]
Hint: Check if object is locked or prefab before dragging [OK]
Common Mistakes:
  • Trying to rename to fix drag issue
  • Assuming hierarchy window is closed
  • Thinking deletion is needed to move
5. You want to organize a complex scene by grouping several objects under a new empty GameObject in the Scene hierarchy. What is the best way to do this?
hard
A. Create an empty GameObject, then drag the objects onto it in the hierarchy
B. Rename all objects to have the same prefix
C. Delete the objects and recreate them under a new parent
D. Use the Inspector window to assign parents

Solution

  1. Step 1: Create an empty GameObject as a container

    In Unity, you can create an empty GameObject to act as a group or folder for other objects.
  2. Step 2: Drag objects under the new GameObject in the hierarchy

    Dragging objects onto the empty GameObject makes them its children, organizing the scene.
  3. Step 3: Understand why other options are less effective

    Renaming does not group objects. Deleting is destructive and unnecessary. Inspector does not assign parents directly.
  4. Final Answer:

    Create an empty GameObject, then drag the objects onto it in the hierarchy -> Option A
  5. Quick Check:

    Group by empty GameObject + drag [OK]
Hint: Use empty GameObject as folder, drag children under it [OK]
Common Mistakes:
  • Trying to rename instead of grouping
  • Deleting objects to regroup
  • Using Inspector to assign parents (not possible)
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard