Пятница, 15 Ноября 2024, 04:19

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Пишу ray tracer. Как убрать ступенчатость?
SaiteiДата: Воскресенье, 16 Августа 2015, 15:18 | Сообщение # 1
старожил
Сейчас нет на сайте

Она появилась, когда я добавил угасание интенсивности света: 1.0f/min(d*d, 0.00001f);

Я так же пытался пускать несколько лучей в один пиксель, но это не помогло:
Код
for (int i = 0; i < RPP; ++i)
{
    for (int j = 0; j < RPP; ++j)
    {
     const float diff = 1.0f/RPP;
     Vec3f direction = Vec3f(float(x) + float(i)*diff, float(y) + float(j)*diff, -1.0f) - center;
     direction.normalize();
     s += trace(center, direction);
    }
}

s = s/(RPP*RPP);
GC-VicДата: Понедельник, 07 Сентября 2015, 23:02 | Сообщение # 2
GcUp.ru
Сейчас нет на сайте
Видимо, сам метод нужно пересмотреть.

Закон Мерфи: "Если вы уверены, что ваш поступок встретит всеобщее одобрение, кому-то он обязательно не понравится".
SaiteiДата: Четверг, 10 Сентября 2015, 16:34 | Сообщение # 3
старожил
Сейчас нет на сайте
Вот с фиксами

Цитата GC-Vic ()
Видимо, сам метод нужно пересмотреть.

Кучу пейперов перечитал, вроде как всё ок...
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг