Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is a BoxCollider2D in Unity?
A BoxCollider2D is a rectangular 2D collider used to detect collisions in a box-shaped area. It is simple and efficient for objects with rectangular shapes.
Click to reveal answer
beginner
Describe CircleCollider2D and when to use it.
CircleCollider2D is a circular 2D collider that detects collisions in a round area. It's best for round objects like balls or circular buttons.
Click to reveal answer
intermediate
What is a PolygonCollider2D and why is it useful?
PolygonCollider2D is a 2D collider that can have any shape made of multiple points. It is useful for complex shapes that are not simple boxes or circles.
Click to reveal answer
intermediate
How does a BoxCollider2D differ from a PolygonCollider2D?
BoxCollider2D is always a rectangle, while PolygonCollider2D can have many sides and form complex shapes. PolygonCollider2D is more flexible but can be more expensive to compute.
Click to reveal answer
beginner
Can CircleCollider2D be used for non-circular objects?
CircleCollider2D works best for circular shapes. Using it for non-circular objects can cause inaccurate collision detection because it always uses a round area.
Click to reveal answer
Which Collider2D type is best for a rectangular platform?
AEdgeCollider2D
BCircleCollider2D
CPolygonCollider2D
DBoxCollider2D
✗ Incorrect
BoxCollider2D fits rectangular shapes perfectly and is efficient for platforms.
What shape does CircleCollider2D detect collisions in?
ARectangle
BCircle
CPolygon
DLine
✗ Incorrect
CircleCollider2D detects collisions in a circular area.
Which Collider2D type allows for complex shapes with many points?
APolygonCollider2D
BCircleCollider2D
CCapsuleCollider2D
DBoxCollider2D
✗ Incorrect
PolygonCollider2D can have multiple points to form complex shapes.
Why might you avoid using PolygonCollider2D for simple shapes?
AIt is less accurate
BIt only works for circles
CIt is more expensive to compute
DIt cannot detect collisions
✗ Incorrect
PolygonCollider2D requires more computation, so simpler colliders like BoxCollider2D are better for simple shapes.
If you want a collider for a round ball, which Collider2D should you choose?
ACircleCollider2D
BPolygonCollider2D
CBoxCollider2D
DEdgeCollider2D
✗ Incorrect
CircleCollider2D matches the round shape of a ball best.
Explain the differences between BoxCollider2D, CircleCollider2D, and PolygonCollider2D in Unity.
Think about shape and complexity of the object you want to detect collisions for.
You got /4 concepts.
When should you choose PolygonCollider2D over BoxCollider2D or CircleCollider2D?
Consider shape complexity and performance cost.
You got /3 concepts.
Practice
(1/5)
1. Which Collider2D type is best suited for a rectangular game object in Unity?
easy
A. BoxCollider2D
B. CircleCollider2D
C. PolygonCollider2D
D. EdgeCollider2D
Solution
Step 1: Understand the shape of the object
A rectangle or square has straight edges and right angles.
Step 2: Match the collider type to the shape
BoxCollider2D fits rectangles and squares perfectly because it creates a box-shaped collision area.
Final Answer:
BoxCollider2D -> Option A
Quick Check:
Rectangle shape = BoxCollider2D [OK]
Hint: Rectangles use BoxCollider2D for perfect fit [OK]
Common Mistakes:
Choosing CircleCollider2D for rectangles
Using PolygonCollider2D unnecessarily for simple shapes
Confusing EdgeCollider2D with BoxCollider2D
2. Which of the following is the correct way to add a CircleCollider2D component to a GameObject in C# script?
easy
A. gameObject.AddComponent<BoxCollider2D>();
B. gameObject.AddComponent<PolygonCollider2D>();
C. gameObject.AddComponent<CircleCollider2D>();
D. gameObject.AddComponent<EdgeCollider2D>();
Solution
Step 1: Identify the correct component type
CircleCollider2D is the component for circular collision shapes.
Step 2: Use AddComponent with the correct type
The syntax is gameObject.AddComponent<Type>(); so for circle, use CircleCollider2D.
Final Answer:
gameObject.AddComponent<CircleCollider2D>(); -> Option C
Quick Check:
Add CircleCollider2D with AddComponent<> [OK]
Hint: Use AddComponent<CircleCollider2D>() for circle colliders [OK]
Common Mistakes:
Using wrong collider type in AddComponent
Missing angle brackets <> in AddComponent
Confusing BoxCollider2D with CircleCollider2D
3. What will happen if you assign a PolygonCollider2D to a GameObject and set its points to form a triangle shape?
medium
A. The GameObject will have a circular collision area ignoring the points.
B. The GameObject will have a triangular collision area matching the points.
C. The GameObject will throw a runtime error due to invalid points.
D. The GameObject will have a box-shaped collision area by default.
Solution
Step 1: Understand PolygonCollider2D behavior
PolygonCollider2D uses points to define a custom shape for collision.
Step 2: Setting points to triangle shape
When points form a triangle, the collider matches that triangle shape exactly.
Final Answer:
Triangular collision area matching points -> Option B
Quick Check:
PolygonCollider2D shape = points defined [OK]
Hint: PolygonCollider2D matches shape from points given [OK]
Common Mistakes:
Assuming PolygonCollider2D defaults to box or circle
Expecting errors from valid point sets
Confusing PolygonCollider2D with BoxCollider2D
4. You wrote this code to add a BoxCollider2D but it doesn't appear on your GameObject:
var collider = gameObject.AddComponent<BoxCollider2D>;
collider.size = new Vector2(2, 3);
What is the error?
medium
A. AddComponent cannot be used in scripts
B. BoxCollider2D does not have a size property
C. Vector2 should be Vector3 for size
D. Missing parentheses after AddComponent<BoxCollider2D>
Solution
Step 1: Check AddComponent syntax
AddComponent is a method and requires parentheses: AddComponent<Type>()
Step 2: Identify the missing parentheses
The code uses AddComponent<BoxCollider2D> without () which causes no component to be added.
Final Answer:
Missing parentheses after AddComponent<BoxCollider2D> -> Option D
Quick Check:
AddComponent needs () to work [OK]
Hint: Always add () after AddComponent<Type> [OK]
Common Mistakes:
Forgetting parentheses after AddComponent
Confusing size property with other collider types
Using Vector3 instead of Vector2 for 2D colliders
5. You want to create a complex-shaped 2D character with both circular and polygonal parts. Which approach correctly combines colliders for best collision detection?
hard
A. Add multiple Collider2D components: CircleCollider2D for round parts and PolygonCollider2D for complex parts
B. Use only a single PolygonCollider2D for the entire character
C. Use only CircleCollider2D colliders and ignore polygon shapes
D. Add a BoxCollider2D and scale it to cover all parts
Solution
Step 1: Understand collider combination
Unity allows multiple Collider2D components on one GameObject for complex shapes.
Step 2: Match collider types to shape parts
Use CircleCollider2D for round parts and PolygonCollider2D for complex shapes to get accurate collisions.
Step 3: Avoid oversimplifying with one collider
Single collider types may not fit all parts well, causing inaccurate collisions.
Final Answer:
Add multiple Collider2D components: CircleCollider2D for round parts and PolygonCollider2D for complex parts -> Option A
Quick Check:
Combine colliders for complex shapes [OK]
Hint: Use multiple colliders for mixed shapes [OK]