Changelog
version 2.5.0
- volumetric rendering (built-in raymarching)
- primvars support
- shading language model
- RenderMan client updates
- Pyg client updates
- documentation updates
- volume primitives
- sphere
- box
- cone
- cylinder
- OpenVDB volume densities
- new shape primitive
- OpenVDB level sets
version 2.4.4
- upgrades to OpenImageIO and OpenShadingLanguage
- fixes some really weird bugs
- shader fixes
- RenderMan client updated to version 4.0
- RIS calls are just stubs for now !
version 2.4.3
- API Command partially implemented
- new projection "equirectangular"
- rib client
- MakeTexture implemented
- MakeLatLongEnvironment implemented
- connections to/from array members or vector components implemented
- automipmapping can be disabled
- expanded and improved shader library
- upgrades to OpenEXR, OpenImageIO, OpenShadingLanguage
- support valence 2 vertices on subdivision surfaces
- fix "debug_nan" warnings
- fix issues with
- global illumination
- bump mapping
- camera parameters
- motion blur
- crop window display
- partial spheres sampling
version 2.4.2
- primvars fully functional with lots of code refactoring
- unsized arrays as shader parameters
- correctly propagate differentials for all types of rays (shadow, diffuse, reflection/refraction)
- calculatenormal shadeop works when a ray passes through a refractive material
- repair nu-patches when the uorder or vorder is > 4
- always use ustrings for parameters (not const char*)
- message passing between different shader groups (displacement -> surface, for instance)
- expanded and improved shader library
- expanded documentation
- fix issues with
- shading context get/release
- normals on bézier patches
- YASRT generator
- rib client
version 2.4.1
- improved primvars (but not yet fully functional)
- shaders layers are working (including connections to globals)
- textures are reloaded when they have changed from one frame to another
- support for old BMRT "light:shadows" is back
- fix issues with
- camera motion blur
- curves
- blobbies
- polygons
- rib client
- light shaders coordinate system
- light shaders "P" globalvar
- calculatenormal shadeop
- emit shadeop
- point type arguments to shaders
- increased and improved shader library
version 2.4.0
- XRT shading language is now based on Open Shading Language instead of RenderMan Shading Language
- fix spurious pixels on output images
version 2.3.2
- fix a crash when rendering with bilinear patch mesh primitives
version 2.3.1
- fix regressions in subdivision surfaces
- compute tighter bounding boxes for cubic curves
- OpenSubdiv updated to version 2.3.4
version 2.3.0
- new implementation of subdivision surfaces
- based on OpenSubdiv 2.3.2
- main features
- adaptive refinements
- hierarchical edits
- facevarying data
- tenfold rendering speed increase
- Gelato interface is now tag based (see documentation)
- primvars derivatives
- RI client
- support for HierarchicalSubdivisionMesh
- support for linear primvars in Curves
version 2.2.0
- blobby support with lots of plugins
- plane
- cube
- sphere
- segment with varying radius
- capsule
- constant
- repelling plane
- rib generator updated to handle Blobby command
- new color/vector/matrix/box classes
- efficient (25% memory usage decrease)
- less code bloat
- decrease the usage of smart pointers (resulting in dramatic speed increase when parsing some scenes)
- primitive variables support
- RIB binary output
- fixes to RIB parsing and ascii output
- blobby & python examples
- documentation updated
version 2.1.0
- new progress bar
- new correlated multi-jittered sampler
- new Python binding for RenderMan API
- completely reimplemented RI client with new capabilities
- ASCII output
- inline archives
- Hierarchical subdivision meshes are handled as simple subdivision meshes
- string handles
- brand new rib generator (file parsing is now 30% faster)
- switch to Python 2.7.5
- lots of bugs fixes
- CSG operations
- transformation stack
- and many more small details
- augmented Input call (now closer to the original Gelato spec)
version 2.0.1
- improved BVH accelerator (lifted from Embree 1.1 source code)
- fix a huge memory leak imported from Embree
version 2.0.0
- fix filterstep implementation
- fix fresnel implementation
- fix precision problems with trim curves
- fix support for break and continue in RSL
- build once acceleration structures
- better Python binding initialization
version 1.5.0
- Catmull-Clark subdivision surfaces
- RIB generator updated
- creases, corners, holes and boundaries features supported
- XRT frontend rewritten
- shadow bias
- new attributes
- renderer information and versioning
- debugging output
- "verbosity"
- "limits:bucketsize"
- augmented statistics (texturing)
- bug fixes for:
- Curves
- Points
- NuPatch
- shader evaluation
- transformations
- nff, yst, aff generators
- multiple frame rendering
- motion blur
- implicit surfaces intersection code is now multithreaded
- Whitted integrator removed for a less contrived implementation
- some shaders updated
- OpenImageIO upgraded to 1.0.7
- documentation updated
version 1.4.1
- use constant strings whenever possible: calling ustring ctor when rendering is expensive and make other threads idle
- revamp slc
- fix lighting loops, shader message passing
- remove reference counting from transformations and replace it with a transformation cache
- thread safe area lights
- restore gamma correction
- bypass reference counting for primitives and lights while rendering
version 1.4.0
- OIIO upgraded to 1.0.4 (with a few twists to make it run under XP)
- Embree-derived tasking system augmented
- read/write mutexes
- thread identifiers
- tasking system moved into its own DLL
- rendering is now multi-threaded
- "int limits:threads" attribute support
- re-entrant shaders
- thread-safe caching for global illumination
- thread-safe recursive raytracing
- documentation updated
- bezier patch intersection computation performed in "world" space
- texture blur supported when the integration domain is provided
version 1.3.1
- OIIO upgraded to 1.0 (with a few twists to make it run under XP)
- environment mapping is now working
- upgrade Embree tasking system (that fixes a problem where rendering would not start sometimes)
- obsolete code cleanups
- fixes to many slight remaining project problems when migrating to VC10
- Input call now accept Parameters like Output, primitives or Shader
- all generator interfaces updated
- ply and obj modified to read parameters
- documentation updated
version 1.3.0
- OIIO 0.10.4 integration
- texturing & image I/O deferred to OIIO
- old image plugins and texturing code removed
- iv rewritten
- OIIO ustrings, error handlers, plugin loading integrated
- parameter values reimplemented
- XRT maketx replaced by OIIO's
- review interfaces (ParamType, ErrorManager, RendererAPI)
- cut dependency between slc and core
- Parameter(), Attribute() and GetAttribute() overhaul
- much improved error checking
- all missing variants implemented
- full "user:" attributes support
- bug fix on value override
- primitives with control points are now intersected in "world" space for performance
- n-sided polygons in meshes with "linear" interpolation (without holes) are now triangulated using excellent John Ratcliff's Triangulator
- new hair generator
- improved hair shader
- bug fixes on curves
- fix *.vcxproj to remove building errors
- fix quantizers in rib generator
- shadows from area lights fixed
- documentation updated
version 1.2.0
- "_attributes" and "_attributesindex" parameters support was broken
- Google perf tools updated to version 1.8
- Wavefront OBJ generator added
- ASCII PPM support
- improved BVH accelerator (much faster traversal code borrowed from Embree project)
- several memory leaks when rendering animations fixed
- switch to Visual Studio 2010 Express
version 1.1.1
- better sampling for area lights and distributed raytracing
- message passing between shaders
- throw transmission and diffuse rays even when maximum ray depth is reached
- remove LookAt from the Python binding
- replace it with a Python script
- update pyg exporter for Structure Synth
- remove LookAt from the C++ API
- nff, aff, yst generators updated
- new low-discrepancy sampler
- last query cache for occlusion and irradiance
- fix the shader compiler when calling color spline with a float argument
- clamp mode as the default when texturing
- implementation for RiIdentity
- remove clipping on z-coordinates when writing pixel samples to image
- "user:" attributes support
- remove unnecessary ctor on vector-like classes
- compute normals in the ply generator when requested
- documentation updated
version 1.1.0
- indirect diffuse lighting
- irradiance caching
- occlusion caching
- libtcmalloc for memory allocator (20% speedup)
- documentation updated
version 1.0.3
- Python bindings for Shape call
- LookAt implementation fixed to work with multiple cameras
- some generators updated
- pyg exporter for Structure Synth updated
- new "implicit" shape
- documentation updated
version 1.0.2
- Python bindings for ObjectBegin, ObjectEnd, ObjectInstance API calls
- area lights are now defined using geometry sets
- new ply generator
- documentation updated
version 1.0.1
- Python binding for LookAt API call
- new pyg exporter for Structure Synth
- ambient occlusion shader
- documentation updated