Проект - 2д платформер на Unity.
Суть вопроса вот в чём - как сделать так, чтобы предметы, которые высыпаются с чего-то (враг, контейнер) не проваливались под землю, а рассыпались по ней. Даже если предметы высыпались на платформу над землёй, то они свободно могут некоторые упасть ниже на основной ground и там замереть, ожидая подбора игроком.
using UnityEngine;
public class ManaDrop : MonoBehaviour
{
    public GameObject manaPrefab;
    public int minManaDrops = 1;
    public int maxManaDrops = 5;
    public float dropForce = 1f;
    public void DropMana(Vector2 dropPosition)
    {
        int numberOfDrops = Random.Range(minManaDrops, maxManaDrops + 1);
        for (int i = 0; i < numberOfDrops; i++)
        {
            GameObject mana = Instantiate(manaPrefab, dropPosition, Quaternion.identity);
            Rigidbody2D manaRigidbody = mana.GetComponent<Rigidbody2D>();
            Vector2 randomDirection = Random.insideUnitCircle;
            manaRigidbody.AddForce(randomDirection * dropForce, ForceMode2D.Impulse);
        }
    }
}
Для примера я создал скрипт и навесил его на врага, который после смерти случайно высыпает от 1 до 5 префабов маны на пол. Всё работает, но сами префабы летят сквозь всё. Проблема в том, что на префабе я навесил коллайдер с триггером и физику, а значит коллайдер неосязаем. Я настроил слои и физику слоёв в настройках, но всё равно ничего. На YouTube не нашёл ничего подобного, только обычные монетки на уровне. 
Подскажите как такое лучше сделать. Реализовано подобное в Hollow Knight например. Ну и в будущем создам скилл, который будет притягивать эти выпавшие префабы к игроку.