вторник, 23 февраля 2016 г.

мелкие достижения

  • поправил рендеринг в файл - ppm, pfm, tga
  • поправил вывод дебаг-информации в консольном выводе
  • поменял Random-генератор на xorshift128
  • заметил необходимость переписать сохранение/загрузку файлов кэшированно
  • pfm, оказывается, hdri-формат и схож с hdr, но не настолько популярен
  • перепишу поиск пересечения луча с треугольником из недр Embree. позор! там Triangle Intersector тормозным методом Moeller Trumbore. добавлю предрасчеты динамические и будет шелестеть!

воскресенье, 21 февраля 2016 г.

ускорение metropolis light transport с помощью грамотного распределения нагрузки между потоками




слева - 105 секунд, прошлый вариант
справа - 85 секунд, новый вариант
разница между версиями программы - почти 20 секунд!
это составляет 105 / 85 = 124% ускорения

скачать можно по адресу https://github.com/tigrazone/simple-mlt

воскресенье, 7 февраля 2016 г.

изменение курса и новый todo. обновляется

Ввиду крутости реализации Embree, замораживаю работу по Delphi-версии рендера и концентрируюсь на рендере на основе Embree в связке c++, FLTK. Приятной особенностью есть готовность Embree к работе на Linux, Mac, Windows.
Поддерживаются форматы файлов с изображениями ppm, pfm, exr, с подключением ImageMagik - tga, gif, jpg, png, bmp, tif
Итак, новый список задач:
  • адаптировать к FLTK
  • быстрая загрузка obj, xml
    переписать, убрав зависимость от с++-потоков, хэширование, буферизация

    7.2.2016 поправил баг в чтении obj, в чтение mtl внёс специфичные для akari атрибуты - для тестирования сцены, которая шла в примере с akari2

    7.2.2016 добавил хэширование, буферизация не сработала. перепишу с fread

    9.2.2016 частично переписал долгие сравнения строк на хэширование. надо переписать по всему проекту


    оптимизировал и выложил на github свою версию tinyobjloader
    18.03.2016
  • metropolis light transport(Keleman style)
  • path tracing. быстрая перерисовка при перемещении камеры
    1/8 кадра, 1/4, 1/2 и полный кадр
    10.02.2016
  • russian roulette для path tracing
    20.02.2016
  • Vertex connection and merging
  • Manifoldis Next Event Estimate pdf, slides, avi. Реализовано в NANOGI
  • загрузка fbx, других форматов сцен
  • прицепить на кнопку сохранение сцены - текущее положение камеры и размеры окна
  • прицепить на кнопку сохранение отрендеренной сцены в файл
  • загрузка/сохранение файлов с изображениями
    добавить hdr
    - сохранение готово
    26.02.2016
    добавить exr(tinyexr)
    ppm, pfm, добавить tga без ImageMagik
    23.02.2106

  • добавить png, jpg, tif без ImageMagik

hairball + hdri light in my render


hairball.obj 230mb model - 2.88millions faces