Я хочу реализовать мягкие тени, создаваемые локальными источниками света, в моем raytracer. У меня проблемы с генерацией случайных выборок. Таким образом, у меня есть сцена, в которой у меня есть область света (представленная в виде круга), чьи мировые (x, y, z) координаты центра заданы, радиус задан, нормаль плоскости, на которой лежит круг, равна учитывая, а также цвет и коэффициенты затухания.
Схема выборки, которую я хочу использовать, заключается в следующем: генерировать выборки на четырехугольнике, который охватывает круг, и отбрасывать точки за пределами круга, пока не будет найдено необходимое количество выборок в круге. У меня возникают проблемы с пониманием того, как я могу преобразовать трехмерные координаты центра круга в его двухмерное представление (я не думаю, что могу предположить, что проекция окружности находится на оси xy и, таким образом, просто избавиться от Z-компонента). Я думаю, что нормальная информация о самолете должна быть использована, но я не знаю, как.
Любые и все предложения приветствуются.