source
source copied to clipboard
The main source repository for the Raysect project.
Seems like quite a few users would be interested in trying their Zemax optical models in Raysect. Its very unlikely this could ever be a 1-1 match, i.e. load a...
Raysect really needs some kind of interactive visualisation GUI. A lot of our less experienced users struggle to visualise the scenes in their head and often make basic errors with...
Was racking my brains how to cleanly support florescence in a new redesign of the core of the ray tracer. The issue is the bsdf gains an extra dimension -...
* Need consistency across 2D and 3D classes. For example, lerp and slerp have only been implemented for 3D. These should be extended to Vector2D. * This issue will be...
* Volume emitters currently evaluate surface emission before volume emission. This execution flow doesn't allow modeling of scattering phenomena. To allow simulations of scattering and opacity effects, the emission calculation...
Maybe this is a problem of definition, but if the BSDF is defined as dLout/dEin, `Lambert.bsdf()` is missing 1/π multiplier. Also, `RoughConductor.bsdf()` is missing `1 / s_incident.z`. Note that `evaluate_shading()`...
At present we don't have any utilities to determine what an AffineMatrix3D describes. It is possible to check of a matrix defines a valid translation and rotation, which is essential...
We now have two code paths for applying rotations, affine matrices and quaternions. Affine matrices are faster for applying simple translation and rotation operations, but fall short when you have...
Recently I needed to get the id of the face which was hit by a ray. Is there now any way of getting it? For now I've solved it by...