10 exam-style questions with answers and explanations, straight from our 1,030-question bank. Tap an answer to check yourself. When you're ready, take the scored version in the free practice test.
These 10 free AP questions are organized by exam domain, so you can see how each part of the Certification in Anatomic Pathology blueprint is tested. Reveal the answer and explanation under each question.
Domain 1: Gastrointestinal (includes GI tract, liver, pancreas, gallbladder) 22% of exam
Question 1
Pausing a game sets Time.timeScale to 0. A confirmation message should disappear after two seconds of real time while gameplay stays paused. Its coroutine runs on a GameObject that remains active, but this instruction never finishes during the pause:
yield return new WaitForSeconds(2f);
What should replace that instruction?
Show answer & explanation
Correct answer: C - yield return new WaitForSecondsRealtime(2f);
Question 2
A Door component already derives from InteractableProp, and a Lift component already derives from TransportController. These unrelated MonoBehaviour-based classes provide behavior that must remain unchanged; neither declares Interact(). A new interaction system needs to call Interact() on either component through one shared type, without testing its concrete class. How should Door and Lift expose that capability?
Show answer & explanation
Correct answer: B - Implement IInteractable on both classes, with the interface declaring void Interact().
Question 3
A pickup should detect a player entering its volume without physically blocking the player. In this 3D scene, the player has an enabled CapsuleCollider and a nonkinematic Rigidbody. The pickup has an enabled BoxCollider with Is Trigger selected and no Rigidbody. Both GameObjects are active, their layers permit interaction, and the player crosses the pickup during physics simulation. The pickup script's entry callback should be declared as:
Show answer & explanation
Correct answer: A - void OnTriggerEnter(Collider other)
Question 4
A loading screen starts SceneManager.LoadSceneAsync("Arena", LoadSceneMode.Single) and sets the returned operation's allowSceneActivation to false. The Continue button is hidden until isDone becomes true; clicking Continue would set allowSceneActivation to true. Loading reaches progress 0.9, but the button never appears. The scene must remain inactive until the player clicks. Which change resolves this wait?
Show answer & explanation
Correct answer: B - Show Continue when progress reaches 0.9, and let its click handler enable scene activation.
Domain 2: Head and Neck (excludes Neuropathology) 5% of exam
Question 5
An ammunition counter on a screen-space Canvas must remain 24 UI units inside the bottom-right corner of its parent as the parent resizes. The counter must stay 160 by 40 UI units. Neither RectTransform is rotated or scaled, and no layout controller affects the counter. With sizeDelta fixed at (160, 40), select the required RectTransform settings.
A health display uses an assigned uGUI Image configured as Filled. Both health and maxHealth are int fields. With health = 45 and maxHealth = 90, the bar is empty after this assignment:
healthImage.fillAmount = health / maxHealth;
Nothing else changes fillAmount. Which replacement displays the correct fraction for every health value from 0 through maxHealth?
Show answer & explanation
Correct answer: C - healthImage.fillAmount = (float)health / maxHealth;
Domain 3: Genitourinary (includes male reproductive) 6% of exam
Question 7
A standalone build misses its 60 fps target. A representative CPU-bound frame has 22 ms of main-thread work. The CPU Usage Profiler shows these nested samples on that thread:
EnemyController.Update: Time ms = 14; Self ms = 2
FindNearestTarget: Time ms = 12; Self ms = 12
FindNearestTarget is called only from EnemyController.Update. The remaining main-thread work takes 8 ms; GPU work and frame-rate caps are not limiting performance. Which interpretation should direct the first optimization?
Show answer & explanation
Correct answer: D - Investigate FindNearestTarget first; its 12 ms is already included in the parent sample's 14 ms.
Question 8
A gate has an Animator on the same GameObject as this enabled component. Awake logs True. Later, Open() throws NullReferenceException on the SetTrigger line; the Animator has not been removed or destroyed. What explains the failure?
using UnityEngine;
public class GateController : MonoBehaviour
{
private Animator animator;
private void Awake()
{
Animator animator = GetComponent<Animator>();
Debug.Log(animator != null);
}
public void Open()
{
animator.SetTrigger("Open");
}
}
Show answer & explanation
Correct answer: D - Awake assigns a local variable named animator, leaving the component's animator field null.
Domain 4: Endocrine 4% of exam
Question 9
An Enemy Prefab has health 100 and speed 3. Its Scout variant overrides speed to 6 but inherits health. Two Scout instances are saved in a scene: East overrides health to 40; West has no instance overrides. Outside Play mode, the Enemy asset is changed to health 120 and speed 4. No other edits are made. What values will the two scene instances now inherit or retain?
Show answer & explanation
Correct answer: A - East: health 40, speed 6. West: health 120, speed 6.
Question 10
An artist renamed Rune.png to RuneIcon.png outside Unity without moving its .meta file. After Unity generated new metadata, several materials lost their texture references, although the image still imports. The original .meta file is available in version control. The current image contents and unrelated project edits must be preserved. With the Editor closed, which recovery addresses the broken asset identity?
Show answer & explanation
Correct answer: C - Replace RuneIcon.png.meta with the original metadata file, renamed to match the current image.