Giter VIP home page Giter VIP logo

hobbies's People

Contributors

emrainey avatar

Watchers

 avatar

hobbies's Issues

Add more statistics

Would like to see added:

  • Total New Sample Rays
  • Total Eye Rays (original + anti-aliasing)
  • Total Shadow Rays
  • Average Recursion Depth per pixel?
  • Start Time Rendering
  • Elapsed Time Rendering
  • Number of Objects in Scene
  • Number of Lights in Scene

Implement `planar_polar` mapping

Given a ray (normal + center), x unit reference in plane and any other point within the plane, return the polar coordinates of that point.

Fix training data paths in `neuralnet.cpp`

Previously they where absolute, which was awful. Now they are completely relative, which isn't the best either. Use basal::options to implement an argument processor.

Fix Ray/Surface issues in Sphere and elsewhere

It might be double/float issues in the gtest_sphere.cpp which is cause points on interior of a sphere pointing out to intersect with the sphere, which doesn't make sense. They should not. Did I implement double-sidedness?

Add toroidal mapping 3d -> 2d for "textures"

Add a method to translate any point on a torus to a 2d point (2 angles). The first is the angle to the R3::basis::X in the XY plane. The second is the rotation around the donut (find through dot ?)

Overlaps should only have 1 valid normal at a given surface point.

Add a way for overlaps to properly return a normal from only one sub object. If an object should not return a normal at a point it should return R3::null. Some objects like cones or cylinders have normal generators which don't check if a point is on the "surface".

Implement Atmospheric Haze in Mediums

I already have this function in transparent mediums:

element_type absorbance(element_type distance) const;

which is implemented as

element_type transparent::absorbance(element_type distance) const {
    return std::exp(-distance * m_fade);
}

Implement Adaptive Depth Control in Raytrace

Pass the current scale level to each recursive trace as a magnitude. When that constituent level is below a threshold, return and do not recurse anymore. This would replace a fixed number of reflective/transmitted ray-casts.

Add N Polygon object to `raytrace`

(N triangles or does the triangle cross trick work for more than 3 points (as long as it is convex and coplanar?)

Makes any closed polygon shape?

Cuboids must be closed surfaces

Cuboids can occasionally return single intersections if the ray passes exactly through the sharp edge of a corner. I suppose it could miss entirely if it went through two edges.

Fix Quadratic Saddle ?

Not sure if it's working correctly or not, but the unit tests for QuadraticSaddle is producing weird results. Try removing the plane and just see what's left & fix if needed. May find out saddles aren't possible.

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.