Releases: ImageEngine/cortex
Releases · ImageEngine/cortex
Release list
Cortex 10.7.0.0
Features
- PointInstancer : Added class to provide first-class encoding of point instancers.
- NanobindConverter : Added new class providing interoperability between Boost Python bindings and Nanobind bindings.
Improvements
- PrimitiveVariable : Added Python bindings for
IndexedViewclass. - USDScene :
- Added support for writing
IECoreScene::PointInstancerasUsdGeomPointInstancer. - Added support for reading and writing mesh lights.
- Added support for pinned curves.
- Added support for writing
- CurvesPrimitive :
- Added
Wrapenum, withPeriodic,NonPeriodicandPinned. This generalises the previousperiodicboolean property. - Added argument names to
variableSize()andnumSegments()Python bindings, so they can be passed as keywords.
- Added
- CurvesAlgo : Added
isPinned()andconvertPinnedToNonPeriodic()utilities. - Primitive : Added default type to
variableData()template method. - Canceller :
- Derived from RefCounted, to allow Cancellers to be shared between multiple clients.
- Enabled chaining of Cancellers, via
addChild()andremoveChild()methods and aScopedChildutility class.
- MessageHandler : Added
msg()overload that accepts afmt::format_stringand arguments. - InternedString : Added specialisation for
fmt::formatter<InternedString>. - TBB : Improved compatibility with oneTBB 2021.
- Ramp : Added Rampff, RampfColor3f, RampfColor4f and corresponding Ramp*Data classes, for representing user facing shader ramp parameters.
Fixes
- RunTimeTyped : Fixed unnecessary overhead of
runTimeCast()andisInstanceOf()for subclasses implemented in Python. The GIL is now never needed when the cast is to a C++ type. - PrimitiveVariable : Made IndexedView
begin()andend()const. - PointsAlgo :
- Fixed loss of blind data in
deletePoints(). - Fixed loss of primitive type in
deletePoints()(if processing a derived class of PointsPrimitive).
- Fixed loss of blind data in
- CurvesAlgo :
- Fixed handling of periodic curves in
deleteCurves(). - Fixed
resamplePrimitiveVariable()to handle Vertex<->Varying conversion for linear curves correctly.
- Fixed handling of periodic curves in
- VDBObject : Fixed Python bindings for OpenVDB 12.
Breaking Changes
- ClassParameter, ClassVectorParameter : Replaced statically allocated TypeIds with ids allocated dynamically by
IECore.registerRunTimeTyped(). If the id is needed from C++, it can be queried at runtime withRunTimeTyped::typeIdFromTypeName(). - RunTimeTyped : Removed
typIdargument fromregisterRunTimeTyped()Python function. TypeIds are now always allocated dynamically for Python classes. - USD :
- Removed support for
IECOREUSD_POINTINSTANCER_RELATIVE_PROTOTYPESenvironment variable. Prototype paths are now always specified as relative where possible. - Removed
./prefix from relative prototype paths. - UsdGeomPointInstancer
inactiveIdsare now merged into theinvisibleIdsprimitive variable on loading, instead of being loaded separately.
- Removed support for
- VDBObject : Removed support for OpenVDB 10.0 and earlier.
- CurvesPrimitive : Made protected members private.
- HenyeyGreenstein.h : Removed.
- SweepAndPrune.h : Removed.
- RadixSort.h : Removed.
- MessageHandler : Removed support for passing
boost::formatobjects tomsg(). Usefmt::format()instead. - FileSequence : Removed
fileNameTemplate()protected method. UsefileNameForFrame()instead. - Canceller : Changed base class.
- IECore : Removed
tbb_task_scheduler_init()Python Context Manager. Usetbb_global_control()instead. - ShaderNetworkAlgo :
- Removed deprecated
componentConnectionAdapterLabel(),convertOSLComponentConnections(),collapseSplineParameters(),expandSplineParameters()methods. - Switched support for Spline parameters to support for Ramp parameters.
- Removed deprecated
Build
- LibFormat : Added new dependency on
fmt9.1.0. - CI :
- Updated to GafferHQ/dependencies 11.0.0a8.
- Build artifacts and releases now include a "-platform##" suffix denoting their target VFX Reference Platform year. This replaces the "gcc" suffix previously used on Linux builds.
- USD : Added compatibility with USD 25.11 and 26.03.
- Boost : Removed unnecessary linking of
boost_chrono.
Cortex 10.7.0.0a14
Fixes
- USDScene :
Cortex 10.6.7.1
Fixes
- USDScene :
- Fixed bug writing shader assignments with
IECOREUSD_WRITE_CONFORMANT_RENDERMAN_ATTRIBUTES=1. - Fixed bug reading shader assignments with
IECOREUSD_WRITE_CONFORMANT_RENDERMAN_ATTRIBUTES=1. - Fixed bug reading legacy attributes with
IECOREUSD_WRITE_CONFORMANT_RENDERMAN_ATTRIBUTES=1.
- Fixed bug writing shader assignments with
Cortex 10.7.0.0a13
Improvements
- USDScene : Added
IECOREUSD_WRITE_CONFORMANT_RENDERMAN_ATTRIBUTESenvironment variable. If set to a value of1, this causes "ri:" prefixed attributes to be written as expected byusdRiPxr1.
Fixes
- PointInstancer : Fixed signature for
setPrototypes()function.
-
To be omitted from the notes for the final 10.7.0.0 release. ↩
Cortex 10.6.7.0
Improvements
- USDScene : Added
IECOREUSD_WRITE_CONFORMANT_RENDERMAN_ATTRIBUTESenvironment variable. If set to a value of1, this causes "ri:" prefixed attributes to be written as expected byusdRiPxr.
Cortex 10.5.18.0
Improvements
- ToNukeGeometryConverter :
- Add support for
Color3fData - Add support for
DoubleDataviafloatcasting - Silence
InternedStringVectorDataas unsupported
- Add support for
Cortex 10.7.0.0a12
Improvements
- USDScene : Added
IECOREUSD_WRITE_CONFORMANT_OSL_SHADERSenvironment variable. If set to a value of1, this causes OSL shaders to be written in the format expected by RenderMan. Set theRMAN_SHADERPATHenvironment variable appropriately to ensure RenderMan can find the shaders 1.
-
To be omitted from the notes for the final 10.7.0.0 release. ↩
Cortex 10.6.6.0
Improvements
- USDScene : Added
IECOREUSD_WRITE_CONFORMANT_OSL_SHADERSenvironment variable. If set to a value of1, this causes OSL shaders to be written in the format expected by RenderMan. Set theRMAN_SHADERPATHenvironment variable appropriately to ensure RenderMan can find the shaders.
Cortex 10.7.0.0a11
Features
- PointInstancer : Added class to provide first-class encoding of point instancers.
Improvements
- PrimitiveVariable : Added Python bindings for
IndexedViewclass. - USDScene :
- Added support for writing
IECoreScene::PointInstancerasUsdGeomPointInstancer. - Added support for reading and writing mesh lights.
- Added support for writing
Fixes
- RunTimeTyped : Fixed unnecessary overhead of
runTimeCast()andisInstanceOf()for subclasses implemented in Python. The GIL is now never needed when the cast is to a C++ type. - PrimitiveVariable : Made IndexedView
begin()andend()const. - PointsAlgo :
- Fixed loss of blind data in
deletePoints(). - Fixed loss of primitive type in
deletePoints()(if processing a derived class of PointsPrimitive).
- Fixed loss of blind data in
- IECoreGL::Shader : Restored compatibility with OpenGL 2.1 in order to preserve macOS support 1.
Breaking Changes
- ClassParameter, ClassVectorParameter : Replaced statically allocated TypeIds with ids allocated dynamically by
IECore.registerRunTimeTyped(). If the id is needed from C++, it can be queried at runtime withRunTimeTyped::typeIdFromTypeName(). - RunTimeTyped : Removed
typIdargument fromregisterRunTimeTyped()Python function. TypeIds are now always allocated dynamically for Python classes. - USD :
- Removed support for
IECOREUSD_POINTINSTANCER_RELATIVE_PROTOTYPESenvironment variable. Prototype paths are now always specified as relative where possible. - Removed
./prefix from relative prototype paths. - UsdGeomPointInstancer
inactiveIdsare now merged into theinvisibleIdsprimitive variable on loading, instead of being loaded separately.
- Removed support for
Build
- CI : Updated to GafferHQ/dependencies 11.0.0a8.
-
To be omitted from the notes for the final 10.7.0.0 release. ↩
Cortex 10.5.17.0
Improvements
- IECoreNuke::SceneCacheReader : Added support for writing
attributes - IECoreNuke::LiveScene : Added support for reading
attributes