Releases: ImageEngine/cortex
Releases · ImageEngine/cortex
Version 9.7.0
IECore
- Fixed potential crash in MeshPrimitiveEvaluator::barycentricPosition() (#475).
- Fixed ConfigLoader to ignore duplicate paths. Note that this may change configuration
behaviour for malformed paths with duplicates (#474).
IECoreArnold
- Added support for both deformation and transform blur (#473).
- Refactored all Cortex->Arnold conversion functionality into new Algo.h headers,
removing the old FromCoreConverter based classes. This does represent a compatibilit
break, but IECoreArnold is in contrib, where no compatibility guarantees exist. - Fixed warnings relating to the data type of Arnold's visibility parameter, which
has been changed to AtByte from AtInt.
Version 9.6.1
IECore
- MessageHandler handles python exceptions before they get to c++
IECoreMaya
- Sorting childNames during ieSceneShape expansion
IECoreAppleseed
- Added nested volume priority attribute
Version 9.6.0
IECore
- Added support for procedurals without bounds
- Fixed time remapping for old style link attributes in LinkedScenes
IECoreHoudini
- Fixed crash when converting integer and float list attributes in Houdini
IECoreAppleseed
- Fixed attribute stack bug
IECoreRI
- Added support for procedurals without bounds
IECoreGL
- Added support for procedurals without bounds
IECoreArnold
- Added support for procedurals without bounds
IECoreMaya
- Optimized IECoreMaya SceneShape expansion
Version 9.5.0
IECoreNuke
- Adding support for PointsPrimitives in Nuke scene reader
Version 9.4.0
IECore
- Added unit tests for IECore.M33f/M44f indexing
IECoreHoudini
- Houdini can now round trip M33f and M44f primvars, including detail attributes/constant primvars.
Version 9.3.0
IECore
- Added const parameterData method to IECore::Light
- Added alternate AreaLight shader control parameter named "__areaLight"
IECoreHoudini
- String tables for converted string primitive variables are now sorted alphabetically
- Houdini geo converters now support M44f primvars
Version 9.2.0
IECoreGL
- Added ShaderStateComponent::hash() method.
- Fixed wireframe rendering with user vertex shaders.
- Fixed IDRender selection with user vertex shaders.
- Fixed selection with custom vertex shaders on OSX.
IECoreAppleseed
- Added default render params needed by interactive final rendering.
- Fix display when used with the ImageDisplayDriver driver type.
IECoreHoudini
- Removed deep RAT support for Houdini 15 (it is still there for older Houdini versions)
Build
- Houdini 15 compatibility
- Fixed build issue for running 3delight inside Maya at IE
Version 9.1.0
IECoreAppleseed
- Support renderer type prefixes in Renderer::light().
IECoreArnold
- Support renderer type prefixes in Renderer::light().
IECoreRI
- Support renderer type prefixes in Renderer::light().
IECoreMaya
- Fixed crash when zooming in on coordinate systems in scene shapes
Build
- 3delight display drivers and procedurals now installed to compiler specific locations at IE
Version 9.0.0
Full change list for 9.0.0
IECore
- Renamed GeometricData::Interpretation::Numeric to GeometricData::Interpretation::None, so that it makes sense as a deafult for non-numeric types.
- GeometricData::Interpretation::Numeric still exists for compatibility.
- Added DataAlgo.h with setDataInterpretation() and getDataInterpretation().
- Fixed shutdown crashes with ScopedGILLock (as seen in Gaffer 0.14.0.0)
- Added a new magic number for JPG compatibility
- Storing the bounding box in .cob headers if the object is a VisibleRenderable.
- TransformOp now takes a copy of the data before altering it.
- GCC 4.8 compatibility.
- Boost 1.55.0 compatibility.
- TBB 4.3 compatibility.
- Fixed thread safety bug in BlindDataHolder::blindData()
- Fixed PointsPrimitive::bound() to account the width or aspect ratio of the points.
- Made MurmurHash::append() an inline function
- Added IECore::ClippingPlane object
- Set
__file__
when loading configs - Emitting a debug message for each config file loaded
- Added implicit conversion from python datetime to DateTimeData.
- Linked scenes no longer return duplicate tags
- Removed SimpleSubsurface
- Removed Marschner code
- Removed HitMissTransform
- Removed TypeInfoCmp
- Removed UniformRandomPointDistributionOp
- Removed MappedRandomPointDistributionOp
- Removed AttributeCache
- Removed InterpolatedCache
- Removed spherical harmonics code
- Removed FileExampiners
- Improved MurmurHash performance
- Fixed GILReleasePtr crash.
- Adding the export macros for proper exporting of symbols.
- Optimised Object::memoryUsage()
- Fixed GIL bug in python Object creation
- Added implementation of tbb_hasher for boost::intrusive_ptr
- TIFFImageReader now checks if the tif is tagged as coming from tdlmake, and if so, sets the sourceColorSpace from the image description set by tdlmake.
- Reduced overhead of calling memoryUsage() on SimpleTypedData.
- Added pixelAspectRatio to list of standard camera parameters.
- Added InternedString( const char *, size_t length ) constructor.
- Multithreaded PointSmoothSkinningOp
- Added ExternalProcedural object type
- Added HasBaseType type trait
- Added boost::hash compatibility for MurmurHash
- LinkedScene::hash now takes extra children at links into account
- Bug fix in StreamIndexedIO that was causing sporadic crashes when loading SceneCaches during procedural expansion.
- Fixed some minor bounding box bugs in IECore.SceneCache
- Child bounds can now dilate bounds explicitly specified using IECore.SceneCache.writeBound()
- IECore.LinkedScene now supports extra children at link locations
- Fixed TransformOp double transform bug
- Added SceneInterface::hash() method.
- Improved ConfigLoader.
- Now executes files within the same directory in alphabetical order.
- Added subdirectory argument.
- Env var accepted in place of search path.
- Made RefCounted bindings release the GIL during C++ destruction.
- Changed RefCounted base class binding to use GILReleasePtr too.
- Replaced IECore::IntrusivePtr with boost::intrusive_ptr.
- Removed staticPointerCast, constPointerCast and dynamicPointerCast.
- Fixed crash in MeshMergeOp.
- Fixed mutex acquisition in LRUCache::updateListPosition().
- PointSmoothSkinningOp handles faceVarying normals and added refIndices parameter
- Changed DespatchedTypedData DataPtr & argument to Data *
- Fixed LRUCache hangs.
- Simplified RefCounted bindings.
- Fixed LRUCache crashes where clear() was called concurrently with get().
- Added IECorePython::CastToIntrusivePtr.
- Added from-python conversion of RunTimeTypedClass to IECore::TypeId
- Removed implicit surface functionality
- Removed BGEO and BIN readers/writers.
- Removed IFFHairReader.
- Fixed EXRImageReader canRead to accept scanline images.
- Improved speed of InternedString( int64_t ).
- Tidied up LRUCache
IECoreMaya
- FromMayaCameraConverter now accounts for pixelAspectRatio.
- Maya 2016 compile fixes for gcc 4.8
- Fixed FromMayaCameraConverter to account for non-zero film offsets.
- ToMayaCameraConverter now supports setting the film offset using blindData on the Camera.
- Maya 2016 compatibility.
- SceneShapeUI::select now returns false when polygons aren't being displayed in the viewport.
- Added a mutex inside IECoreMaya::LiveScene::hasAttribute()
- Only allow selection using the bounding box if the box is visible
- Latest registered custom attribute reader now takes precedence in IECoreMaya.LiveScene
- On transform nodes, plugs with names prefixed by "ieAttr_" are now translated into "user:" attributes by the IECoreMaya.LiveScene
- String attributes called "ieTags" on transform nodes now interpreted as a space separated list of tags
- Fixed ieSceneShape component selection bug.
- Fixed crash when expanding ieSceneShapes containing coordinate systems.
- Fixed coordinate system->maya locator converter crash for coordinate system with no transform
- Fixed crash in SceneShape::hasSceneShapeObject for invalid scene
- Stopped IECoreMaya::LiveScene::readObject() returning null pointers.
- Stopped IECoreMaya::LiveScene::readAttribute() returning null pointers.
- Renamed IECoreMaya::MayaScene to IECoreMaya::LiveScene
- MayaScene bindings now catch boost python exceptions
- Fixed MayaScene for reading scene:visible and custom attributes at the root
IECoreHoudini
- Fixed issue exporting string attributes when Houdini reports an extra null string in the detail.
- Added support for converting quaternions to and from Houdini.
- Houdini 14 compatibility.
- SceneCacheNodes have a new "Full Path Name" parm which creates an attrib for the full path for each shape (default is off).
- Latest registered custom attribute reader now takes precedence in IECoreHoudini.LiveScene
- ToHoudiniGeometryConverter marks Pref and rest as non-transforming
- Preventing SceneCache Source from transforming rest/Pref
- Renamed IECoreHoudini::HoudiniScene to IECoreHoudini::LiveScene
IECoreAlembic
- Fixed bug where face sets were treated as children.
- Adding the export macros for proper exporting of symbols.
- Added support for the Ogawa backend into IECoreAlembic.
IECoreGL
- Fixed radius of spheres rendered by IECoreGL::PointsPrimitive.
- Wireframe shading uses Cs instead of vertexCs
- Added mip mapping to ColorTexture.
- Added ToGLSphereConverter.
- Adding the export macros for proper exporting of symbols.
- Added support for setting array uniforms in shader parameters
- Added State::ScopedBinding overload, allowing a binding to be ignored
- Changed IECoreGL::HitRecord::name field from InternedString to GLuint
- Added IECoreGL::Selector::loadName() overload to auto-generates names
- Removed TextureUnits.h
- Added python bindings for CurvesPrimitive
- Added python bindings for smoothing state components
- Added ToGLStateConverter for converting attributes to State objects
- Fixed crash in ShaderStateComponent::addParametersToShaderSetup()
- Switched glsl diffuse and specular functions to match 3delight's properly normalized BRDFS
- Removed deprecated IECoreGL::Selector::loadIDShader() method.
- Added IECoreGL::Selector::postProjectionMatrix() method.
IECoreRI
- Primitive variable types in RI now set from the prim var interpretation. Type hints now ignored.
- Changed SXExecutor parameter interpretation.
- SLOReader sets geometric interpretation on parameters.
- ParameterList makes use of geometric interpretation when available.
- Several IECoreRI::shader() optimizations
- Added clipping plane support to IECoreRI::Renderer
- Added IECoreRI support for DoubleData, V3dData and Color3dData attributes
- Adding the export macros for proper exporting of symbols.
- Automatic instancing now defaults to on
- Fixed precision issue with computing the projection matrix for dsm depth remapping, which was causing deep holdout problems.
- Fixed bug when editing cameras when dealing with multiple cameras.
- Added pixel aspect ratio support to IECoreRI::Renderer.
- Fixed argument passing for RiProcDynamicLoad.
- Added support for DynamicLoad and DelayedReadArchive procedurals
- Added support for RiFrame blocks in IECoreRI::Renderer.
- Added support for camera edits to IECoreRI::Renderer.
- Added support for motion blurred cameras to IECoreRI::Renderer.
- Added support for multiple cameras to IECoreRI::Renderer.
- Removed "transform" parameter from IECoreRI::Renderer::camera().
- Removed support for hider parameters in IECoreRI::Renderer::camera(). �
- IECoreRI now built for all python versions
- added M44dData attribute support to IECoreRI::Renderer
IECoreArnold
- Adding the export macros for proper exporting of symbols.
- Added pixel aspect ratio support to IECoreArnold::Renderer.
- Added support for delayed load DSO and .ass procedurals
IECoreAppleseed
- Added support for shading overrides.
- Added mesh tangents and motion normals.
- Mesh tangents (primitive variable uTangent) are now exported to appleseed meshes.
- Time varying tangents and normals for primitives with deformation blur are now exported if appleseed supports them (since version 1.2.0).
- Fixed a warning message in ToAppleseedMeshConverter.
- Added support for interactive non-editable final rendering.
- Fixed appleseed error while binding inputs of object instances.
- Various options changes:
- Set decorrelate_pixels automatically depending on render passes.
- If the rendering_threads option is zero, use all CPU cores for rendering.
- If the as:cfg:pt:max_ray_intensity is zero, disable max intensity clamping.
- Disable max number of bounces for max_path_length options set to zero.
- Check the type of the Data passed to setOption before accessing it.
- Camera, transformation, deformation motion blur support.
- Lights can now be turned on and off.
- Interactive rendering support.
- Added support for the photon target attribute.
- Added support for orthographic cameras.
- Added an appleseed log handler that uses MessageHandler to log messages.
- Refactored IECore primitive to appleseed ent...
Version 9.0.0-b9
IECore
- Fixed shutdown crashes with ScopedGILLock (as seen in Gaffer 0.14.0.0)