Skip to content

Releases: ImageEngine/cortex

Cortex 10.5.1.0

09 Aug 08:43
Compare
Choose a tag to compare

Improvements

  • USDScene : Added limited support for reading and writing Volume prims via IECoreVDB::VDBObject.

Fixes

  • USDScene : Fixed writing of lights so they are represented as appropriate UsdLux*Light prims in USD.
  • FrameRange : Prevented creation of FrameRanges with negative steps
  • IECore.dataTypeFromElement : Fixed support for list to Vector conversions
  • LinkedScene : Fixed bug where linkLocations attribute was baked incorrectly if the link target location wasn't the ROOT
    • This in turn caused LinkedScene::setNames() and LinkedScene::readSet() to error
  • IECoreNuke::FromNukePointsConverter : Use Color3f instead of Color4f to be compatible with Gaffer
  • IECoreNuke::SceneCacheReader : Fixed crash with SceneCacheReader when widget updates while Caribou updates

Cortex 10.4.10.2

21 Jul 16:30
0c0e768
Compare
Choose a tag to compare

Fixes

  • LinkedScene : Fixed bug where linkLocations attribute was baked incorrectly if the link target location wasn't the ROOT
    • This in turn caused LinkedScene::setNames() and LinkedScene::readSet() to error
  • IECoreNuke::FromNukePointsConverter : Use Color3f instead of Color4f to be compatible with Gaffer
  • IECoreNuke::SceneCacheReader : Fixed crash with SceneCacheReader when widget updates while Caribou updates

Cortex 10.4.10.1

17 Jul 16:27
43d779d
Compare
Choose a tag to compare

Fixes

  • FrameRange : Prevented creation of FrameRanges with negative steps
  • IECore.dataTypeFromElement : Fixed support for list to Vector conversions

Cortex 10.5.0.0

10 Jul 10:44
Compare
Choose a tag to compare

Features

  • MeshAlgo :
    • Added new algorithms for computing mesh normals : calculateUniformNormals(), calculateVertexNormals() and calculateFaceVaryingNormals().
    • Added correspondingFaceVertices() method.

Improvements

  • MeshAlgo distributePoints() :
    • Added support for density primitive variable values above 1.
    • Added sampling of arbitrary primitive variables via the new primitiveVariables parameter.
    • Improved accuracy.
    • Improved performance.
  • MeshAlgo triangulate() : Improved performance.
  • MeshAlgo connectedVertices() : Improved performance.

Fixes

  • MeshAlgo distributePoints() :
    • Fixed duplicate points at triangle edges.
    • Fixed handling of points exactly at the density threshold.
  • TriangleAlgo :
    • triangleClosestBarycentric() : Fixed numerical precision bug.
    • triangleContainsPoint() : Fixed handling of zero-area triangles.
  • PolygonVertexIterator : Fixed to use std::iterator_traits so that raw pointers are supported.

Breaking Changes

  • IECoreAppleseed : Removed. With Appleseed's removal from Gaffer 1.3.0.0 Cortex no longer provides IECoreAppleseed.
  • Python : Removed support for Python 2.
  • Primitive : Changed variableIndexedView() return type from boost::optional to std::optional.
  • MeshAlgo distributePoints() :
    • Changed function signature.
    • Bug fixes mean subtle changes to the resulting points.

Cortex 10.4.10.0

22 Jun 19:12
225c6fa
Compare
Choose a tag to compare

Improvements

  • IECoreNuke::LiveScene :
    • Adding caching to speed up querying Nuke's GeometryList for large hierarchy
    • Support for ParticleSprite
    • setOp method to avoid re creating LiveScene from scratch

Fixes

  • IECoreMaya.SceneShape : Fixed reading of time samples for expanded link locations
    • Traverse the time plug connections to check for a maya global time connection
  • CheckedGILRelease : Safe to call if thread doesn't hold the GIL
  • IECoreNuke::SceneCacheReader : release GIL during _validate to avoid crash with Caribou
  • IECoreNuke::LiveScene :
    • Fix crash when there is not input GeoOp.
    • Fix uninitialized bounds
    • Fix bug with duplicated parents
    • Fix bug when querying children combined between multiple parents

Cortex 10.4.9.1

12 Jun 10:12
Compare
Choose a tag to compare

Fixes

  • USDScene : Fixed hash clashes when the same USD file containing instanceable prims was opened a second time. Because USD doesn't assign prototypes deterministically, hashes would be shuffled between prototypes, yielding inconsistencies between the hashes for the two scenes. Hashes are now completely unique from scene-to-scene, so no locations can have clashing hashes.

Cortex 10.4.9.0

24 May 08:40
Compare
Choose a tag to compare

Improvements

  • USDScene :
    • Improved performance of setNames( includeDescendantSets = True ) substantially for compositions with instanced prims.
    • Improved performance of readSet( includeDescendantSets = True ) substantially for compositions with instanced prims.
    • Improved performance when reading materials from instanced prims.
    • Added loading of UsdGeomCube prims (as MeshPrimitives).
  • SceneInterface : Added _copy argument to Python bindings for readAttribute(), readTransform() and readObject(). Pass _copy = False to receive the original constant result directly instead of a mutable copy. Use with care (typically only for debugging and testing)!
  • TypedData : Added move constructors.

Fixes

  • USDScene :
    • Fixed loading of __cameras, __lights and usd:pointInstancers sets from within instanced prims.
    • Fixed cancellation when reading UsdGeomSphere prims.

Cortex 10.4.8.0

12 May 08:19
Compare
Choose a tag to compare

Improvements

  • USDScene : Exceptions thrown by child() are now more descriptive.

Fixes

  • USDScene : Fixed hasChild() bug which considered prims to be children when child() and childNames() did not.

Cortex 10.4.7.1

10 May 09:14
Compare
Choose a tag to compare

Fixes

  • USDScene :
    • The UsdShadeMaterialBindingAPI schema is now applied to all prims with material bindings, making the written files compatible with USD_SHADE_MATERIAL_BINDING_API_CHECK=strict mode.
    • Fixed loading of USDGeomXformable's ResetXformStack operator.

Cortex 10.4.7.0

29 Mar 08:33
Compare
Choose a tag to compare

Improvements

  • IECoreGL::PointsPrimitive : Added renderUsesGLPoints() method (#1347).
  • IECoreGL::CurvesPrimitive : Added renderUsesGLLines() method (#1347).
  • StringAlgo : Added concat() and toInt() methods (#1343).
  • IECoreScene::ShaderNetworkAlgo (#1343) :
    • Added convertToOSLConventions(), expandSplines() and collapseSplines().
    • Deprecated convertOSLComponentConnections(), expandSplineParameters() and collapseSplineParameters().
  • USDScene : Added support for roundtripping connections to SplineData parameters.

Fixes

  • IECoreUSD::PrimitiveAlgo (#1346) :
    • Fixed reading of primitives containing primvars:normals. These are now correctly loaded as a primitive variable called N, taking precedence over the UsdGeomPointBased normals attribute.
    • Fixed writing of indexed normals so that the indexing is retained on load. Note that this means that normals are now always written as primvars:normals and never via the UsdGeomPointBased normals attribute.