Giter Club home page Giter Club logo

sort's Issues

Path tracing issue

Path tracing appears a little dimmer when DOF is enabled.
It doesn't happen to BDPT, light tracing or naive BDPT.

Will follow up the issue.

Better log system

It would be nice to have the following features:

  • Each message has their own level. Which level to be output can be configurable.
  • Each message also has their own type. One message can have multiple types at the same time.
  • Multiple output streams support. ( Visual studio output, external log file.)
  • Better implementation. Logging system doesn't need to be a singleton, global variable may be a better choice for all-life-time access.

Remove pure reflection and refraction bxdf

Delta function introduces many special cases in basically every integrator. And it is likely impossible to sample a path with delta bxdf and delta light directly connected in current design.
Although it reduces dimension and increases performance a little, I don't particularly like its presence in my renderer because it can be totally replaced by Microfacet bxdf.

Need to delete the two bxdf in the near future.

Support more texture types

Only bmp and exr texture file formats are currently support in SORT now.
Need to support more.

Current plan is to use a light-weight simple library CImg.
An alternative is to make one by myself, however it takes longer time and may not be as robust as CImg if less effort is devoted on it.

Serialization of resource file

Serialization of the following input:

  • scene description
  • material
  • texture ( may not be necessary depending on situation )

Error c2536 under msvc 2013

I find this error with MSVC 2013 under win7 x64. I are fixed on my local repo with this changes:

struct Splits
    {
#if defined(_MSC_VER) && _MSC_VER == 1800
        // Fix error c2536 under msvc 2013
        Split*		split[3] = {};      /**< Split planes along three different axis. */
        unsigned	split_c[3] = {};    /**< Number of split planes in each different axis. */
#else
        Split*		split[3] = { nullptr, nullptr, nullptr }; /**< Split planes along three different axis. */
        unsigned	split_c[3] = { 0, 0, 0 };                 /**< Number of split planes in each different axis. */
#endif
        //! Release the allcoated memory.
        void Release()
        {
            SAFE_DELETE_ARRAY(split[0]);
            SAFE_DELETE_ARRAY(split[1]);
            SAFE_DELETE_ARRAY(split[2]);
        }
    };

Greetings..

PBRT exporter

Export the scene from Blender to PBRT so that we have a reference renderer to compare.

Find a better way to sample Microfacet brdf.

The convergence rate of sampling microfacet brdf highly depends on its roughness, the less rougher it is, the more spiky the brdf is, thus it is more difficult to sample it, if not impossible.

Fix memory leak issue in SORT

This is a relatively big issue.
I haven't paid much attention since the project is transferred to github.

Relatively low priority.

Fix errors on Ubuntu

It has been a while before my last update on ubuntu...
Hopefully I have some time on this one.

Priority is relatively low.

Fix material missing bug

Sometimes material is missing at the start of Blender.

It seems that certain material information is lost somehow.

Fix bdpt bug

The current implementation of BDPT is far from a correct one.
Need to fix it in the future.

add layered bxdf

blender bxdf layer.
Current implementation of blending bxdf is not flexible because the blender factors can't be varied depending on the specific shading case.
Things like fresnel blending won't be supported.

Import PBRT scene

Import the data so that it is automatically converted to SORT data.

Cross machine rendering

SORT supports multi-thread rendering. However, in order further exploit parallelism, cross machine rendering on a network may be a desired feature.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.