Следующим шагом от модели камеры с точечным отверстием является модель с тонкой линзой , где мы моделируем линзу как бесконечно тонкий диск. Это все еще идеализация, которая довольно далека от моделирования реальной камеры, но она даст вам базовые эффекты глубины резкости.
Изображение выше, от panohelp.com , показывает основную идею. Для каждой точки на изображении есть несколько лучей, прибывающих в эту точку изображения через каждую точку на поверхности 2D-линзы. Следовательно, для создания подобного изображения с использованием метода Монте-Карло для каждого луча необходимо выбрать как точку 2D-выборки на плоскости изображения, так и независимую точку 2D-выборки на поверхности линзы.
Настраиваемыми параметрами для пользователя будут радиус линзы (как физический радиус в единицах сцены), который определяет, насколько мал фокусный диапазон (больший объектив = меньший диапазон фокусировки), и расстояние, на котором вы хотите, чтобы объекты находились в фокус.
Чтобы генерировать лучи глаза в сцене, вы можете рассчитать положение и направление лучей, покидающих поверхность линзы; в этой модели нет необходимости явно моделировать плоскость изображения и преломление через объектив. По сути, представьте, что объектив расположен в центре камеры и ориентирован в направлении камеры.
Основываясь на местоположении изображения, создайте луч из положения камеры (центр объектива) в сцену, как в модели с точечным отверстием; затем найдите его пересечение с фокальной плоскостью. Вот где все лучи из этого местоположения изображения должны сходиться. Теперь вы можете сместить начальную точку луча в случайно выбранную точку на объективе и установить его направление к точке схождения.
Вы можете немного обобщить это, допустив, чтобы фокальная плоскость была чем-то отличным от плоскости, или линза была чем-то отличным от круглого диска, и следуя тому же процессу. Это может привести к некоторым интересным, если не совсем физическим эффектам. Также возможно выйти за рамки этой простой модели с более физически реалистичным моделированием элементов объектива камеры, но это не в моей компетенции.