Releases: RenderKit/ospray
Releases · RenderKit/ospray
OSPRay v1.2.0
- Added support for volumes with voxelType
short
(16-bit signed
integers). Applications need to recompile, becauseOSPDataType
has
been re-enumerated - Removed SciVis renderer parameter
aoWeight
, the intensity (and now
color as well) of AO is controlled via "ambient
" lights. If
aoSamples
is zero (the default) then ambient lights cause ambient
illumination (without occlusion) - New SciVis renderer parameter
aoTransparencyEnabled
, controlling
whether object transparency is respected when computing ambient
occlusion (disabled by default, as it is considerable slower) - Implement normal mapping for SciVis renderer
- Support of emissive (and illuminating) geometries in the path tracer
via new material "Luminous
" - Lights can optionally made invisible by using the new parameter
isVisible
(only relevant for path tracer) - OSPRay Devices are now extendable through modules and the SDK.
- Devices can be created and set current, creating an alternative
method for initializing the API - New API functions for committing parameters on Devices
- Removed support for the first generation Intel® Xeon Phi™ coprocessor
(codename Knights Corner) - Other minor improvements, updates, and bugfixes:
- Updated Embree required version to v2.13.0 for added features
and performance - New API function
ospDeviceSetErrorMsgFunc()
to specify a
callback for handling message outputs from OSPRay - Add ability to remove user set parameter values with new
ospRemoveParam()
API function - The MPI device is now provided via a module, removing the need
for having separately compiled versions of OSPRay with and
without MPI - OSPRay build dependencies now only get installed if
OSPRAY_INSTALL_DEPENDENCIES
CMake variable is enabled
OSPRay v1.1.2
- Various bugfixes related to normalization, epsilons and debug
messages
OSPRay v1.1.1
- Fixed support of first generation Intel® Xeon Phi™ coprocessor
(codename Knights Corner) and the COI device - Fix normalization bug that caused rendering artifacts
OSPRay v1.1.0
- New "scivis" renderer features
- Single sided lighting (enabled by default)
- Many new volume rendering specific features
- Adaptive sampling to help improve the correctness of
rendering high frequency volume data
- Pre-integration of transfer function for higher fidelity
images
- Ambient occlusion
- Volumes can cast shadows
- Smooth shading in volumes
- Single shading point option for accelerated shading - Add preliminary support for adaptive accumulation in the MPI device
- Camera specific features
- Initial support for stereo rendering with the perspective camera
- Option
architectural
in perspective camera, rectifying
vertical edges to appear parallel - Rendering a subsection of the full view with
imageStart
/imageEnd
supported by all cameras - This will be our last release supporting the first generation Intel®
Xeon Phi™ coprocessor (codename Knights Corner) - Future major and minor releases will be upgraded to the latest
version of Embree, which no longer supports Knights Corner - Depending on user feedback, patch releases are still made to
fix bugs - Enhanced output statistics in
ospBenchmark
application - Many fixes to the OSPRay SDK
- Improved CMake detection of compile-time enabled features
- Now distribute OSPRay configuration and ISPC CMake macros
- Improved SDK support on Windows
- OSPRay library can now be compiled with
-Wall
and-Wextra
enabled - Tested with GCC v5.3.1 and Clang v3.8
- Sample applications and modules have not been fixed yet, thus
applications which build OSPRay as a CMake subproject should
disable them with-DOSPRAY_ENABLE_APPS=OFF
and
-DOSPRAY_ENABLE_MODULES=OFF
- Minor bug fixes, improvements, and cleanups
- Regard shading normal when bump mapping
- Fix internal CMake naming inconsistencies in macros
- Fix missing API calls in C++ wrapper classes
- Fix crashes on MIC
- Fix thread count initialization bug with TBB
- CMake optimizations for faster configuration times
- Enhanced support for scripting in both
ospGlutViewer
and
ospBenchmark
applications
OSPRay v1.0.0
- New OSPRay 'SDK'
- OSPRay internal headers are now installed, enabling applications
to extend OSPRay from a binary install - CMake macros for OSPRay and ISPC configuration now a part of
binary releases
- CMake clients use them by calling
include(${OSPRAY_USE_FILE})
in their CMake code after
callingfind_package(ospray)
- New OSPRay C++ wrapper classes
- These act as a thin layer on top of OSPRay object handles,
where multiple wrappers will share the same underlying
handle when assigned, copied, or moved
- New OSPRay objects are only created when a class instance is
explicity constructed
- C++ users are encouraged to use these over theospray.h
API - Complete rework of sample applications
- New shared code for parsing the
commandline
- Save/load of transfer functions now handled through a separate
library which does not depend on Qt - Added
ospCvtParaViewTfcn
utility, which enables
ospVolumeViewer
to load color maps from ParaView - GLUT based sample viewer updates
- Rename ofospModelViewer
toospGlutViewer
- GLUT viewer now supports volume rendering
- Command mode with preliminary scripting capabilities,
enabled by pressing ':
' key (not available when using
Intel C++ compiler (icc)) - Enhanced support of sample applications on Windows
- New minimum ISPC version is 1.9.0
- Support of Intel® AVX-512 for second generation Intel® Xeon Phi™
processor (codename Knights Landing) is now a part of the
OSPRAY_BUILD_ISA
CMake build configuration - Compiling AVX-512 requires icc to be enabled as a build option
- Enhanced error messages when
ospLoadModule()
fails - Added
OSP_FB_RGBA32F
support in theDistributedFrameBuffer
- Updated Glass shader in the PathTracer
- Many miscellaneous cleanups, bugfixes, and improvements
OSPRay v0.10.1
- Fixed support of first generation Intel® Xeon Phi™ coprocessor
(codename Knights Corner) - Restored missing implementation of
ospRemoveVolume()
OSPRay v0.10.0
- Added new tasking options:
Cilk
,Internal
, andDebug
- Provides more ways for OSPRay to interact with calling
application tasking systems
-Cilk
: Use Intel® Cilk™ Plus language extensions (ICC only)
-Internal
: Use hand written OSPRay tasking system
-Debug
: All tasks are run in serial (useful for debugging) - In most cases,
TBB
remains the fastest option - Added support for adaptive accumulation and stopping
ospRenderFrame
now returns an estimation of the variance in
the rendered image if the framebuffer was created with the
OSP_FB_VARIANCE
channel- If the renderer parameter
varianceThreshold
is set,
progressive refinement concentrates on regions of the image with
a variance higher than this threshold - Added support for volumes with voxelType
ushort
(16-bit unsigned
integers) OSPTexture2D
now supports sRGB formats -- actually most images are
stored in sRGB. As a consequence the API callospNewTexture2D()
needed to change to accept the newOSPTextureFormat
parameter.- Similarly, OSPRay's framebuffer types now also distinguishes between
linear and sRGB 8-bit formats. The new types areOSP_FB_NONE
,
OSP_FB_RGBA8
,OSP_FB_SRGBA
, andOSP_FB_RGBA32F
- Changed "scivis" renderer parameter defaults
- All shading (AO + shadows) must be explicitly enabled
- OSPRay can now use a newer, pre-installed Embree enabled by the new
OSPRAY_USE_EXTERNAL_EMBREE
CMake option - New
ospcommon
library used to separately provide math types and OS
abstractions for both OSPRay and sample apps - Removes extra dependencies on internal Embree math types and
utility functions ospray.h
header is now C99 compatible- Removed loaders module, functionality remains inside of
ospVolumeViewer
- Many miscellaneous cleanups, bugfixes, and improvements:
- Fixed data distributed volume rendering bugs when using less
blocks than workers - Fixes to CMake
find_package()
config - Fix bug in
GhostBlockBrickVolume
when usingdouble
s - Various robustness changes made in CMake to make it easier to
compile OSPRay
OSPRay v0.9.1
- Volume rendering now integrated into the "scivis" renderer
- Volumes are rendered in the same way the "dvr" volume renderer
renders them - Ambient occlusion works with implicit isosurfaces, with a known
visual quality/performance trade-off - Intel® Xeon Phi™ (codename Knights Corner) COI device and build
infrastructure restored (volume rendering is known to still be
broken) - New support for CPack built OSPRay binary redistributable packages
- Add support for HDRI lighting in path tracer
- Add
ospRemoveVolume()
API call - Add ability to render a subsection of the full view into the entire
framebuffer in the perspective camera - Many miscellaneous cleanups, bugfixes, and improvements:
- The depthbuffer is now correctly populated by in the "scivis"
renderer - Updated default renderer to be "ao1" in ospModelViewer
- Trianglemesh postIntersect shading is now 64-bit safe
- Texture2D has been reworked, with many improvements and bug fixes
- Fixed bug where MPI device would freeze while rendering frames
with TBB - Updates to CMake with better error messages when TBB is missing
OSPRay v0.9.0
The OSPRay v0.9.0 release adds significant new features as well as API
changes.
- Experimental support for data-distributed MPI-parallel volume
rendering - New SciVis-focused renderer ("raytracer" or "scivis") combining
functionality of "obj" and "ao" renderers - Ambient occlusion is quite flexible: dynamic number of samples,
maximum ray distance, and weight - Updated Embree version to v2.7.1 with native support for AVX512 for
triangle mesh surface rendering on the Intel Xeon Phi processor
(codename Knights Landing) - OSPRay now uses C++11 features, requiring up to date compiler and
standard library versions (GCC v4.8.0) - Optimization of volume sampling resulting in volume rendering
speedups of up to 1.5x - Updates to pathtracer
- Reworked material system
- Added texture transformations and colored transparency in OBJ
material - Support for alpha and depth components of framebuffer
- Added thinlens camera, i.e. support for depth of field
- Tasking system has been updated to use Intel® Threading Building
Blocks (TBB) - The
ospGet*()
API calls have been deprecated and will be removed
in a subsequent release