Skip to content

Releases: ImageEngine/cortex

Version 8.0.0 alpha 23

01 Nov 21:47
Compare
Choose a tag to compare
Pre-release

IECore

  • Added new logos!

IECoreGL

  • Added IECoreGL::glslVersion() function and python binding
  • Added IECoreGL::FrameBuffer::frameBuffer() method
  • OpenGL 2.1 compatibility fixes

IECoreHoudini

  • Added bindings for SceneCacheNode which give access to the SceneInterface directly (or None if invalid)
  • HoudiniScene provides python access to registering custom attribute and tag readers
  • HoudiniScene now provides access to the world space transformation matrix of the held OBJ node
  • Fixing crashes in HoudiniScene when pointing to broken SOPs
  • Fixing crashes in SceneCacheWriter when given null attribute data
  • Replaced some (but not all) of the misc cow logos with the new Cortex mini-logo

Version 8.0.0 alpha 22

23 Oct 00:52
Compare
Choose a tag to compare
Pre-release

IECoreHoudini

  • ParameterisedHolder SOPs have a nameFilter parm (w/ disable toggle)
    • These are used to pre-filter each input geometry (or not if toggled off)
  • ProceduralHolder outputs a single CortexObject holding its procedural
  • OpHolder operates several times per cook, once for each named input shape
    • Shapes matching the filter are operated on, and returned as CortexObjects, maintaining their name
    • Shapes not matching are passed through unchanged, whether they were normal geo or CortexObjects
    • It can be forced to operate only once by disabling the nameFilter or by passing a single named shape
  • CortexConverter SOP now operates in both directions (converting between CortexObjects and native geo)
    • It also has a nameFilter, with similar pass-through behaviour as the OpHolder
  • Changed interface for HoudiniScene custom attribute callbacks
    • SceneCache OBJs pass attributes through to HoudiniScene (and therefor SceneCache ROP)
  • Added IECoreHoudini.makeMainGLContextCurrent() which is needed for sharing the GL Context with other applications (like Gaffer)
  • Fixed bug in HoudiniScene which was creating phony children when FlatGeometry names were similar, but not exact
  • Fixed bug in SceneCache SOP when loading Groups or CoordinateSystems without a transform
  • Preventing segmentation faults when reading a corrupt SceneCache file

IECoreGL

  • Fixed GLSL shaders to work with GLSL version 120 (OpenGL 2.1)

Version 8.0.0 alpha 21

21 Oct 17:44
Compare
Choose a tag to compare
Pre-release

IECoreMaya

  • Changing base class for DrawableHolder (from MPxLocatorNode to MPxSurfaceShape ) to solve a selection bug.
    Warning: This breaks binary compatibility with any DrawableHolder derived class.

Version 8.0.0 alpha 20

18 Oct 23:53
Compare
Choose a tag to compare
Pre-release

IECore

  • Fixed IECore::Lookup for OS X.
  • Fixed SceneCache build problem on OS X.
  • Fixed unit test in LinkedSceneTest.py ( testLinkBoundTransformMismatch )

IECoreGL

  • Fixed IECoreGL::PointsPrimitive crash on OS X.
  • Removed IECoreGL/Lights.h.
  • Removed IECoreGL/GLUT.h

IECoreHoudini

  • SceneCache OBJ Parameter Reorganization (will cause warnings in existing scenes. these can be ignored)
  • Added functions to HoudiniScene: node() and embedded()
  • Added click Selection of GR_CortexPrimitives

IECoreMaya

  • Added FnSceneShape createChild, extracted from expandOnce.
  • Changed interface for MayaScene custom attribute callbacks and added bindings for Python.

IECoreNuke

  • Fixed bug #4837: "Knobs not found" warning messages.
  • Fixed artefacts in LensDistort

Version 8.0.0 alpha 19

07 Oct 23:13
Compare
Choose a tag to compare
Pre-release

IECore

  • Removed incorrect assertions from StreamIndexedIO - they were causing crashes in debug builds.
  • ComputationCache is more robust in situations where a call to get() yields a different object than was passed to set().

IECoreHoudini

  • GEO_CortexPrimitives are now correctly copied and transformed during ObjectMerges.
  • TagFilter now prevents unnecessary expansion of SceneCache nodes. In SubNetwork/AllDescendants mode, the tagFilter is used to prevent expansion into branches of the hierarchy that were not requested. For a heavy asset, filtering by a "Proxy" tag was expanding in 25 seconds and creating 22000 nodes. It is now expanding in 3 seconds and creating 3000 nodes.
  • SceneCache Xform and Geo nodes now have a tagFilter, and pass it through to matching children during expansion and push. Xfrom still uses it to limit expansion and control visibility. Geo just passes it on to the SOP, which uses it to limit objects loaded.
  • Promoted shapeFilter to all SceneCache nodes. SceneCache Xform and Geo just pass it through to the SOP, as with the attributeFilter.
  • Added support for reading and writing tags in SceneCaches.
  • Optimised SceneCache OBJ expansion time. On a heavy asset, this reduces expansion time from 442.3s (7.38m) to 17.12s.
  • Fixed time offset issues caused by Houdini time 0 being at frame 1, whereas it is at frame 0 in Maya, and in SceneInterfaces.

IECoreMaya

  • Added a flag to the FnSceneShape create so we can directly create a new sceneShape and transform under a given parent. Used when expanding.

IECoreNuke

  • Fixed a bug in LensDistort that was causing the cache to hold incorrect image data.

IECoreGL

  • Added ShaderLoader::clear() method, which allows the reloading of GLSL shaders on the fly.
  • Added "gl:primitive:selectable" attribute to Renderer.

IECoreRI

  • Fixed automatic instancing bug caused by having multiple procedurals in the same RIB file.
  • Added workaround for 3delight 11.0 in IECoreRI::Renderer::worldEnd - this allows rerendering to work again.

Version 8.0.0 alpha 18

26 Sep 18:08
Compare
Choose a tag to compare
Pre-release

IECore

  • Fixed sample time ordering bug in SceneCache.
  • Fixed transform matrix order in Group.globalTransformMatrix().
  • Added a new setTopologyUnchecked method to MeshPrimitive, plus lazy computation of min/maxVerticesPerFace.

IECoreGL

  • Fixed bugs in interpretation of "color" attribute in IECoreGL.

IECoreMaya

  • Fixed a segfault which occured when selecting multiple components of a sceneShape in Maya.
  • Fixed maya procedural selection highlighting.

IECoreHoudini

  • Optimised SceneCache caching time significantly.
  • Simplified FromHoudiniGeometryConverter factory functions.
  • Added name parameter to ToHoudiniGeometryConverter.
  • FromHoudiniGeometryConverters no longer add the name blindData.
  • Added nameFilter to FromHoudiniGeometryConverter python factory function.
  • HoudiniGeometryConverters now use Objects rather than VisibleRenderables.
  • Added FromHoudiniCortexObjectConverter for converting single GU_CortexPrimitives.
  • Added ToHoudiniCortexObjectConverter for creating GU_CortexPrimitives.
  • Fixed ToHoudiniGeometryConverter bug where it didn't call incrementMetaCacheCount().
  • Added FromHoudiniCompoundObjectConverter. This converts multiple GU_CortexPrimitives, maintaining the naming by storing each one in a CompoundObject.
  • Added ToHoudiniCompoundObjectConverter.
  • Added non-const access to the object in a Geo_CortexPrimitive.
  • Removed unecessary Object copy in SceneCache SOP.
  • Removed HoudiniScene::readObject hack for CortexObject prims.
  • Updated cob/pdv IO to allow conversion of general Objects and not just VisibleRenderables.
  • Fixed ToHoudiniGeometryConverter factory function search order.
  • Fixed bug when caching hidden OBJs.
  • Added interruptibility to SceneCache ROP.
  • Added DetailSplitter class for efficiently extracting select bits of geometry from a GU_Detail.
  • Reenabled the loading of multiple ieCoreHoudini plugins.

IECoreRI

  • Added "ri:textureCoordinates" attribute to IECoreRI::Renderer. This maps to a call to RiTextureCoordinates.
  • Fixed specification of multiple displays via IECoreRI::Renderer::display().
  • Added automatic instancing capabilities to IECoreRI::Renderer.

IECoreNuke

  • Added support for expressions in LensDistort.

IECoreAlembic

  • Fixed IECoreAlembic to use GeometricTypedData appropriately (#28).

Version 8.0.0 alpha 17

09 Sep 19:20
Compare
Choose a tag to compare
Pre-release

IECoreRI

  • Added support for ri:areaLight parameter to IECoreRI

IECoreHoudini

  • Fixed bug when loading CoordinateSystems in Houdini

Version 8.0.0 alpha 16

04 Sep 18:59
Compare
Choose a tag to compare
Pre-release

IECoreMaya

  • Fixed bug in SceneShape compute which prevented drawing on file open/import

IECoreHoudini

  • Added ForceObjects parameter to SceneCache ROP (to force what is expanded and what is a link)
  • Added a ParticleSystem when converting PointsPrimitives to Houdini
  • Fixed point doubling bug with SceneCache SOP loading a PointsPrimitive
  • Fixed bug when writing multiple frames of re-rooted scenes
  • Fixed HoudiniScene bugs for flattened geometry (SOPs with gaps in the geo hierarchy can now be cached)
  • SceneCache tagFilter supports SceneInterfaces with no tags

Version 8.0.0 alpha 15

26 Aug 21:59
Compare
Choose a tag to compare
Pre-release

IECore

  • Added Parameter::setPresets and getPresets.
  • Improved precision of CameraController operations
  • Default ParticleReader uses floats (#69)
  • Fixed MurmurHash bug where empty strings had no effect on a hash

IECoreGL

  • Added Shader::csParameter() for constant time access to "Cs"
  • Fixed bug with superimposed instances
  • Fixed potential bug in Selector::loadIDShader()
  • Fixed state leak for immediate renders
  • Fixed PointsPrimitive selection and coloring
  • Implemented per-vertex Cs for PointsPrimitive.

IECoreMaya

  • Fixed erroneous compute on SceneShape outputObjects
  • Fixed tests for Maya 2014

IECoreHoudini

  • Added a Cache Manager for the Cortex ObjectPool (#40)
  • SceneCache ROP allows caching of un-named top level geo (uses the OBJ node name)
  • Fixed time dependency issues with SceneCache SOP and OBJs
  • OBJ SceneCache nodes expose their transform via expressions (see Output tab)
  • Expanding and SOP cooking are now interrupt-able using the escape key
  • Improvements for expanding SceneCaches in Houdini
    • Expanded nodes are now connected to the subnet indirect inputs
    • Expanded nodes are placed using Houdini's layout automation
    • File parms channel reference their parent
    • Path parms channel reference their parent (when appropriate)
    • New Push Parms button updates the filters and geometry type throughout the expanded hierarchy (no need to collapse). Note that this does not take hierarchy changes into account, just parameter values.
  • FromHoudiniGroupConverter ignores internal groups
  • Fixed compatibility issues with Houdini 12.1 (introduced in a14)
  • Declared TypeId range

IECoreNuke

  • Added support for TCL expressions on SceneCacheReader
  • Fixed a few bugs with SceneCacheReader

IECoreArnold

  • Fixed TypeId range so it doesn't conflict with IECoreHoudini

IECoreMantra

  • Houdini 12.5 compatibility

Version 8.0.0 alpha 14

15 Aug 18:47
Compare
Choose a tag to compare
Pre-release
  • IECore :
    • Modified BasicPreset so it works with parameters derived from CompoundParameter
    • Added ObjectPool and ComputationCache classes for providing a unified cache mechanism for cortex objects (used in SceneCache and CachedReader).
    • Removed ModelCache class (SceneInterface and SceneCache replaces that entirely).
  • IECoreMaya :
    • Using the newly added GL lambert shader in the maya GL preview.
    • Added geometry snapping to the SceneShape
    • Optimization on the SceneShape by copying previously rendered GL groups at link locations.
  • IECoreHoudini :
    • Added support for Cortex loaded geometry in the SceneCache reader.
  • IECoreGL :
    • IECoreGL::ToGLTextureConverter option to add missing channels.
    • Removed IECoreGL dependency on GLUT
    • Replaced OpenGL 3 function calls with their 2.1 extensions
    • Added a standard lambert shader to IECoreGL::Shader
    • Fixes in Selector object and making it revert state when destroyed.
  • IECoreRI :
    • Deprecated 3delight hack