Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.58.1] - 2022-08-15

Changed

  • Allow write variable to operate even if role types differs

[2.58.0] - 2022-08-12

Changed

  • Node path is now added to console-logged messages

  • Node path is no longer added to messages captured on nodes

[2.57.4] - 2022-08-11

Changed

  • Handles auto conversion in data model

[2.57.3] - 2022-08-08

Added

  • Warning when schema prims are loaded when the setting is disabled.

[2.57.2] - 2022-08-05

Fixed

  • action evaluator for cycles in connections

[2.57.1] - 2022-08-04

Fixed

  • Avoided multiple __metadata__bundle__ tokens in a path

[2.57.0] - 2022-08-03

Changed

  • OGN Bundle wrapper size and abi_primHandle are marked as deprecated.

Added

  • Two methods to OGN Bundle wrapper: attributeCount and childCount.

[2.56.0] - 2022-08-02

Added

  • Update OGN Bundle wrapper to use IBundle2

[2.55.0] - 2022-08-02

Added

  • /persistent/omnigraph/enablePathChangedCallback to deprecate INode::registerPathChangedCallback

  • /persistent/omnigraph/disableInfoNoticeHandlingInPlayback optimization setting

Changed

  • pathChangedCallback will now trigger once per OG update with accumulated changes instead of immediately

[2.54.0] - 2022-07-28

Added

  • Added IDirtyID interface

  • Added BundleAttrib class and BundleAttribSource enumeration

  • Added BundlePrim, BundlePrims, BundlePrimIterator and BundlePrimAttrIterator

  • Added ConstBundlePrim, ConstBundlePrims, ConstBundlePrimIterator and ConstBundlePrimAttrIterator

[2.53.1] - 2022-07-28

Fixed

  • Fixed handling of empty strings in operator< and operator> of ogn::base_string

[2.53.0] - 2022-07-22

Added

  • IBundle2 - remove_attributes_by_name and remove_child_bundles_by_name

[2.52.1] - 2022-07-27

Fixed

  • Fixed data model for storing attribute metadata in IBundle2

[2.52.0] - 2022-07-27

Changed

  • valueChanged callback handling

[2.51.3] - 2022-07-23

Fixed

  • Fixed dirty_push graphs being re-run during playback when time has not advanced

[2.51.2] - 2022-07-22

Fixed

  • Registration order of TfNotice handler for OG

[2.51.1] - 2022-07-21

Fixed

  • OM-56991 Ill-formed sdf paths

[2.51.0] - 2022-07-21

Changed

  • Undo revert and fix bug in evaluation of nodes with dynamic execution attribs

[2.50.0] - 2022-07-19

Fixed

  • IBundle2 reviewed ABI, reviewed copy and link for attributes and bundles

[2.49.0] - 2022-07-18

Changed

  • Reverted the changes in 2.48.0

[2.48.1] - 2022-07-18

Added

  • Better ReadPrimAttribute error reporting

[2.48.0] - 2022-07-15

Changed

  • Action graph fan-out of execution wires are now evaluated in parallel instead of sequence

[2.47.1] - 2022-07-12

Changed

  • Changed node create to write extended attributes to USD prior to node creation

[2.47.0] - 2022-07-08

Added

  • ‘deprecated’ .ogn keyword for attributes

  • IInternal / omni.graph.core._internal

  • IInternal::deprecateAttribute() / omni.graph.core._internal.deprecate_attribute()

  • IAttribute::isDeprecated() / omni.graph.core.Attribute.is_deprecated()

  • IAttribute::deprecationMessage() / omni.graph.core.Attribute.deprecation_message()

  • ‘internal’ attribute metadata keyword

[2.46.0] - 2022-07-08

Fixed

  • Fixed memory leak coming from NodeType objects

Changed

  • INodeType 1.6 -> 1.7

  • fileFormatVersion attribute on OmniGraph objects only writes to USD if it has changed

Added

  • INodeType::destroyNodeType to deallocate a node type object

[2.45.2] - 2022-07-07

Fixed

  • IConstBundle2 and IBundle2 broken logging system

[2.45.1] - 2022-07-06

Added

  • Ability to raise an error/warning for a node through (new) static methods of the database

[2.45.0] - 2022-06-30

Added

  • Metadata support for IBundle2 interface

[2.44.3] - 2022-06-30

Changed

  • USD write back is now performed just once per frame per Fabric cache

[2.44.2] - 2022-06-28

Fixed

  • Checked newly added nodes for file format version upgrade requirements

[2.44.1] - 2022-06-28

Changed

  • Ensured nodeContextHandle is initialized correctly

[2.44.0] - 2022-06-29

Changed

  • Deprecated IScheduleNode::getNode, INodeType::getScheduleNodeCount, INodeType::getScheduleNodes

[2.43.1] - 2022-06-29

Added

  • A compile switch to disable OGN database caching

[2.43.0] - 2022-06-28

Fixed

  • Array attributes not keeping a single copy of their data/size pointers as intended

  • Few places using P2AM directly instead of DataModel

  • Debugging features of DataModel

  • usdToCache overwritting connection informations

  • Bad performance of getLocalAttributeHandle

Added

  • OGN Database caching at the node level

  • Tracking of changes that might invalidate this caching

  • Gives a chance to DataModel to prepare buckets of nodes at load time, in order to prevent useless rebucket later

[2.42.0] - 2022-06-23

Added

  • clearContents method to IBundle2 interface

[2.41.0] - 2022-06-22

Added

  • Faster check for deprecated node types

Removed

  • Unused core node animation/OgnPointsWeight

  • Unused core node animation/OgnTextGenerator

  • Unused core node animation/OgnTimeSampleArray

  • Unused core node animation/OgnTimeSamplePoints

  • Unused core node animation/OgnXformDeformer

  • Unused core node animation/OgnXformSRT

  • Unused core node animation/OgnXformToFastCache

  • Unused core node core/OgnFetch

  • Unused core node core/OgnGather

  • Unused core node core/OgnScatter

  • Unused core node core/OgnSlang

  • Unused core node core/OgnTime

  • Unused core node core/OgnTimeSample

  • Unused core node core/OgnXtoY

  • Unused core node math/OgnVectorElementDecompose

  • Unused core node math/OgnVectorElementSet

[2.40.4] - 2022-06-22

Changed

  • Fix for output attribute being resolved by downstream connection

[2.40.3] - 2022-06-22

Added

  • Architectural decision records support

  • Added ADR for the decision around how to present the Python API surface

[2.40.2] - 2022-06-21

Changed

  • Optimized attribute look up

[2.40.1] - 2022-06-17

Changed

  • Added extra validity checks to bundle data access

Added

  • Finished off the documentation for versioning, both internal and external

[2.40.0] - 2022-06-17

Added

  • IGraph::getEvaluationName

Changed

  • When using schemaPrims, OmniGraph now responds to changes made to graph settings in USD.

[2.39.0] - 2022-06-16

Changed

  • ForceWriteBack mechanism (that was used to write back prim data to USD) is now soft deprecated behind a setting

Added

  • A per attribute tracking system that allows to write back to USD at single attribute definition

[2.38.3] - 2022-06-16

Fixed

  • cpp wrapepr getAttributesR template function, internally it wasn’t casting to NameToken*.

Changed

  • Outputs for IBundle2::create*, IBundle2::link* and IBundle2::copy* are optional.

[2.38.2] - 2022-06-15

Fixed

  • Handled the one missing colorama reference

[2.38.1] - 2022-06-14

Fixed

  • When removing the last attributes on a path, DataModel was failling to move it properly to the empty bucket

[2.38.0] - 2022-06-13

Added

  • CreateGraphAsNodeOptions structure

  • GraphEvaluationMode enum

  • IGraph::getEvaluationMode

  • IGraph::setEvaluationMode

  • IGraph::createGraphAsNode(GraphObject&, const CreateGraphAsNodeOption*)

Deprecated

  • IGraph::createGraphAsNode(GraphObject&, const char*, const char*, const char*, bool, bool, GraphBackingType, GraphPipelineStage)

[2.37.1] - 2022-06-13

Fixed

  • Crash fix when trying to convert an invalid “FlatCacheBundle” to a value

[2.37.0] - 2022-06-13

Added

  • Temporary support for flagging values already set for Python initialize

[2.36.0] - 2022-06-08

Added

  • Pre-render evaluation functions

[2.35.0] - 2022-06-07

Added

  • Support for the generator setting for Python optimization

[2.34.3] - 2022-06-03

Fixed

  • Copy on Write for Child bundles

[2.34.2] - 2022-06-02

Changed

  • Allow arguments arrayDepthsBuf and tuplesBuf for resolvePartiallyCoupledAttributes() to be null pointers

[2.34.1] - 2022-06-01

Fixed

  • Input execution attribute are now reset to Disabled state when node enters latent state

  • Bug making bundle connection to legacy prim

[2.34.0] - 2022-05-30

Changed

  • Connections between nodes are now not stored in fabric anymore

  • We now rely only on connections expressed in the Object Oriented Layer in OmniGraph core

  • DataModel now don’t have to do extra logic to interpret FC connections as toppological connection or upstream reference

Added

  • Ability to access and set default value on an attribute

  • Interfaced this new feature with python

  • Using this new feature in python OGN generator

Fixed

  • Bug preventing to clear an attribute array in python

Removed

  • Some useless dependencies/visibility to PathToAttributeMap

[2.33.11] - 2022-05-27

Changed

  • Deprecated the GraphContext::updateToUsd() code path with useSchemaPrims off

Fixed

  • Fixed the FlatCache dump in GraphContext, broken when FlatCache was upgraded

  • Fixed the graph population phase in PluginInterface to walk all graphs, not just the first one

[2.33.10] - 2022-05-26

Fixed

  • Fixed memory leak with variables

  • Fixed errors caused by removing variables from Fabric

[2.33.9] - 2022-05-24

Fixed

  • Attributes on bundle not properly materialized, attempt 2

[2.33.8] - 2022-05-18

Fixed

  • Attributes on bundle not properly materialized

[2.33.7] - 2022-05-17

Fixed

  • Fixed reparenting graph to previous parent which otherwise corrupted fabric state and left nodes without properties

[2.33.6] - 2022-05-17

Fixed

  • Duplicate bundle connections on rename

[2.33.5] - 2022-05-16

Fixed

  • Connection-compatibility check for execution attributes

[2.33.4] - 2022-05-16

Changed

  • Makes dynamic bundle works in python

[2.33.3] - 2022-05-16

Changed

  • Fix type not properly registered in FC when adding new attributes

[2.33.2] - 2022-05-13

Changed

  • Makes bundle works on node not backed by USD

[2.33.1] - 2022-05-12

Changed

  • Array attribute are now using ABI, giving a chance to the framework to perform CoW and DS

[2.33.0] - 2022-05-11

Changed

  • Refactoring of data model: centralized all FlatCache accesses in one place

  • MBiB now uses connections instead of bucket tagging

Added

  • Lazy pointer retrieval (for read and write) in OGN layer

  • Array attribute and bundles are now passed by reference from node to node

  • Copy on Write: Array attributes/Bundle content are copied when mutated

  • ABI entry for batch attribute copy from one bundle/prim to another

Fixed

  • Fixed som API for data retrieval in OGN layer that where missbehaving when used

Removed

  • Data stealing prototype

[2.32.2] - 2022-05-11

Fixed

  • Fixed read time node with pull evaluator when time changes outside of playback (e.g. timeline tool)

[2.32.1] - 2022-05-06

Fixed

  • Fixed instances loaded from references requiring a stage reload to evaluate correctly

[2.32.0] - 2022-05-05

Changed

  • Refactored settings to handle interdependencies

Fixed

  • Changed std::is_pod to std::is_trivial for C++20 compatibility

Added

  • Added architectural diagram of the OmniGraph extension interdependencies

  • Internal diagram of the schema prim code path dependencies

  • Adding callbacks in settings to handle interdependencies

[2.31.3] - 2022-05-04

Fixed

  • Fixed a bit too agressive type unresolution on input attributes

[2.31.2] - 2022-05-03

Fixed

  • Default variable values not always getting set to instances with no overrides

[2.31.1] - 2022-05-02

Fixed

  • bug resolving values in certain extended attribute connections

[2.31.0] - 2022-04-29

Changed

  • Passed graph prim for more targeted FlatCache initialization

  • Bumped file format to 1.4

  • Made file format calls more tolerant of useSchemaPrims settings

[2.30.3] - 2022-04-25

Changed

  • Only flush USD to flatcache when we are parsing the first root graph, otherwise previous changes to flatcache may be overwritten

[2.30.2] - 2022-04-28

Fixed

  • Removed the obsolete parts of the unit tests

[2.30.1] - 2022-04-26

Fixed

  • Fix situation with bad type resolution

[2.30.0] - 2022-04-22

Added

  • OmniGraphDatabase.getGraphTarget

  • IGraphContext 3.1->3.2

    • IGraphContext.getGraphTarget

[2.30.0] - 2022-04-25

Removed

  • Removed the unimplemented IDataReference class

  • Removed the obsolete TestComputeGraph.cpp unit test

Changed

  • Stopped building the obsolete nodes

  • Moved the generated substitutions.rst file to the build area

[2.29.4] - 2022-04-21

Changed

  • “ui:”-prefixed attributes present on Node prims are no longer read as OG attributes

[2.29.3] - 2022-04-19

Fixed

  • Rare crash that occurred when using string-based node attributes

[2.29.2] - 2022-04-14

Fixed

  • updateSimStepUsd disableUsdUpdates is respected

[2.29.1] - 2022-04-08

Fixed

  • Auto conversion bug for native tuple

[2.29.0] - 2022-04-08

Changed

  • Passed graph prim for more targeted FlatCache initialization

  • Bumped file format to 1.4

  • Made file format calls more tolerant of useSchemaPrims settings

[2.28.0] - 2022-04-08

Changed

  • input attribute types are no longer inferred from output attribute types.

  • type resolution and unresolution will no longer propagate upstream.

[2.27.0] - 2022-04-08

Added

  • Added IGraphContext::getAbsoluteSimTime() function

  • Added ComputeGraph::updateV2() function which updates the absoluteSimTime

[2.26.3] - 2022-04-07

Fixed

  • Graph::writeTokenSetting() was failing to update the token if it already existed but was empty.

Changed

  • Graph::writeTokenSetting() no longer updates the token or issue a warning if the new value is the same as the existing one.

[2.26.2] - 2022-04-05

Fixed

  • Fixes issues where ForceWriteBack token on newly created Nodes would not be respected unless the Prim of the Node was selected

[2.26.1] - 2022-03-31

Fixed

  • Fixed issue when using OG in MGPU: forces use of Device 0 in StaticScheduler

[2.26.0] - 2022-03-31

Added

  • PrimHandle and ConstPrimHandle renamed to BundleHandle and ConstBundleHandle. PrimHandle and ConstPrimHandle remain as aliases to BundleHandle and ConstBundleHandle.

  • IConstBundle2 - ONI const bundle interface, successor of carbonite IBundle.

  • IBundle2 - ONI bundle interface, successor of carbonite IBundle.

  • IBundleFactory - ONI factory to create instances of IConstBundle2 and IBundle2 interface.

  • Initial implementation of IConstBundle2, IBundle2 and IBundleFactory.

  • ComputeGraph 2.6 -> 2.7.

  • ComputeGraph::getBundleFactoryInterface method added to instantiate bundle factory.

  • IPath new methods: appendPath and getPathElementCount.

[2.25.2] - 2022-03-25

Fixed

  • Fixed issue where type resolution on node with coupled attribute would not work

  • Fixed auto type conversion not working on coupled attributes

[2.25.1] - 2022-03-25

Fixed

  • dynamic scheduler will now evaluate execution subgraphs

[2.25.0] - 2022-03-23

Added

  • IGraph 3.6 -> 3.7

    • getEventStream - accessor to retrieve a graphs event stream

  • IGraphEvent enum type

  • IGraphEvent.eCreateVariable, raised when a variable is created through the ABI

  • IGraphEvent.eRemoveVariable, raised when a variable is removed through the ABI

[2.24.0] - 2022-03-16

Added

  • Setting /persistent/omnigraph/enableLegacyPrimConnections. When enabled, this will restore legacy behavior for OG Prim nodes:

    • Entire stage is searched for connections between Nodes and Prims, any connected Prims will be brought into FC, and corresponding OG Prim nodes created with all attributes.

    • Terminal nodes will be automatically synced to FC every frame

    • This setting is not exposed in the UI. It is a temporary setting until legacy code can be migrated to no longer use Prim connections.

[2.23.8] - 2022-03-15

Fixed

  • Fixed issue where ComputeGraphs in sublayers may not correctly load

[2.23.7] - 2022-03-14

Fixed

  • Auto type conversion was not correctly computed on load

[2.23.6] - 2022-03-14

Fixed

  • Bug in default string attribute initialization

[2.23.5] - 2022-03-09

Added

  • Added a check to make sure that literalOnly attributes cannot be connected to other attributes

[2.23.4] - 2022-03-08

Fixed

  • Cleanup of graph deletion

[2.23.3] - 2022-03-08

Changed

  • Modified the node type registration/deregistration process to avoid static destructor ordering problems and allow multiple initialize/release calls

[2.23.2] - 2022-03-07

Fixed

  • Removed unnecessary migration of bundle connection members to a copied bundle

[2.23.1] - 2022-03-05

Fixed

  • RenderVar prim data will be automatically loaded into FC when they are part of an OG network

[2.23.0] - 2022-03-04

Changed

  • Removed the updateTerminalNodesOnly setting, the default of updateToUSD is now False. OG will now only sync Prims FC->USD with the ForceWriteBack token when updateToUSD is False. When the setting is True, it will sync all Prims.

  • Added settingsVersion setting

[2.22.3] - 2022-03-04

Changed

  • OG will no longer automatically load non-OG Prim data into FC during stage attach.

[2.22.2] - 2022-03-02

Fixed

  • Added support for omni.graph.nodes.ReadTime to lazy (dirty_push) evaluator

[2.22.1] - 2022-02-18

Changed

  • Bug fix in path attribute monitoring: properly retarget subpath when reparenting happens higher in the hierarchy

[2.22.0] - 2022-02-18

Added

  • Added tests for schema-based prims

  • Added test case base class factory method

Fixed

  • Fixed handling of the schema-based prims

  • Removed use of deprecated OmniGraphHelper from some scripts

[2.21.4] - 2022-02-18

Changed

  • Bug fix accessing a deleted entry in a map

[2.21.3] - 2022-02-17

Changed

  • Added proper support for path role (that keep track of the target)

[2.21.2] - 2022-02-16

Changed

  • Changed Fabric Cache creation to new create2 to allow RingBuffers to have CUDA enabled

[2.21.1] - 2022-02-15

Fixed

  • Categories on several nodes

[2.21.0] - 2022-02-15

Added

  • Added support for update_usd flag to the data_view and SetAttr command

Fixed

  • Ignored the Expression node for the warning on nodes without namespaces

  • Avoided a crash when the fileFormatVersion attribute could not be found

[2.20.0] - 2022-02-13

Changed

  • Prim nodes will no longer have OG attributes automatically added

  • Prim node authored USD attributes added to FC

  • Removed support for special attribute OGN_NonUSDConnections

[2.19.0] - 2022-02-11

Added

  • Added OmniGraphDatabase.getVariable

[2.18.0] - 2022-02-10

Added

  • Added setting for using schema prims for graphs and nodes.

  • Added use of the omniGraphSchema library for graph and node prims (protected by the setting).

[2.17.0] - 2022-02-08

Changed

  • Added support for auto conversion between attributes.

[2.16.1] - 2022-02-07

Changed

  • Moved carb logging out of Database.h and into Node::logComputeMessage.

[2.16.0] - 2022-02-05

Added

  • IGraph 3.5 -> 3.6

    • Added IGraph::createVariable

    • Added IGraph::removeVariable

    • Added IGraph::findVariable

  • IVariable

    • Added IVariable::getDisplayName and IVariable::setDisplayName

    • Added IVariable::getCategory and IVariable::setCategory

    • Added IVariable::getTooltip and IVariable::setTooltip

    • Added IVariable::getScope and IVariable::setScope

    • Added IVariable::isValid

[2.15.1] - 2022-02-04

Fixed

  • Edge cases in action graph evaluator for fan-in and fan-out of execution attributes

[2.15.0] - 2022-02-02

Added

  • IGatherPrototype 1.1 -> 2.0

    • Changed the signature of gatherPaths

    • Added getGatheredRepeatedPaths

[2.14.0] - 2022-02-01

Added

  • ComputeGraph 1.0 -> 1.1

    • Added IOmniGraphTest::setTestFailure

    • Added IOmniGraphTest::testFailureCount

  • Python bindings at the module level

    • Added set_test_failure

    • Added test_failure_count

  • Added deregistration macro for earlier deregistration of node types (done in a backwards compatible way)

[2.13.0] - 2022-01-31

Changed

  • IVariable.getPath renamed to IVariable.getSourcePath

[2.12.0] - 2022-01-28

Fixed

  • Error status change callbacks weren’t firing during normal evaluations.

  • Bumping the minor version # since features which use the callbacks will not work without this change.

[2.11.0] - 2022-01-26

Added

  • INode 4.1 -> 4.2

    • Added INode::logComputeMessage

    • Added INode::getComputeMessageCount

    • Added INode::getComputeMessage

    • Added INode::clearOldComputeMessages

  • IGraph 3.4 -> 3.5

    • Added IGraph::registerErrorStatusChangeCallback

    • Added IGraph::deregisterErrorStatusChangeCallback

    • Added IGraph::nodeErrorStatusChanged

    • Added IGraph::getVariableCount

    • Added IGraph::getVariables

  • Created the IVariable type

Changed

  • OmniGraphDatabase::logWarning and logError now log compute messages whenever they are different from the node’s previous evaluation. Previously they would only log a given error once per session and node type.

[2.10.1] - 2022-01-19

Changed

  • Fixed a bug in attribute resolution propagation logic

[2.10.0] - 2022-01-18

Changed

  • Extended attributes will now be returned to an unresolved state upon disconnection if the topology of the graph does not prevent it.

[2.9.0] - 2022-01-17

Added

  • INode 4.0 -> 4.1

    • Added INode::getComputeCount

    • Added INode::incrementComputeCount

[2.8.0] - 2022-01-13

Added

  • IGraphRegistry 1.1 -> 1.2

    • Added IGraphRegistry::getRegisteredType

[2.7.0] - 2022-01-06

Modified

  • GraphContextObj.context has been replaced with GraphContextObj.contextHandle. The old member was a pointer to an internal OG class. The new member is a POD handle which can be used with OG ABI functions.

[2.6.1] - 2021-12-30

Modified

  • INode::resolvePartiallyCoupledAttributes checks more type resolution error conditions.

[2.6.0] - 2021-12-21

Added

  • IAttributeData 1.3 -> 1.4

    • Added IAttributeData::getDataRGpuAt

    • Added IAttributeData::getDataWGpuAt

    • Added IAttributeData::getDataReferenceRGpuAt

    • Added IAttributeData::getDataReferenceWGpuAt

[2.5.1] - 2021-12-16

Changed

  • Action Graph evaluator now uses og.ExecutionAttributeState.LATENT_FINISH to indicate when a latent node is finished.

[2.5.0] - 2021-12-10

Added

  • Created the INodeCategories interface

  • ComputeGraph 2.4 -> 2.5

    • Added ComputeGraph::getNodeCategories

[2.5.1] - 2021-12-08

Fixed

  • Fix RuntimeAttribute getXX templates to avoid an MSVC compiler bug

[2.4.0] - 2021-12-07

Added

  • IGraph 3.3 -> 3.4

    • Added IGraph::isGlobalGraphPrim

  • Modified RuntimeAttribute to include PtrToPtrKind template, with default for backward compatibility

[2.3.0] - 2021-12-06

Added

  • Added INodeEvent::eAttributeTypeResolve

[2.2.1] - 2021-12-02

Fixed

  • Fix bug where renaming a graph doesn’t rename the wrapper node, resulting in new graphs overwriting old graphs

[2.2.0] - 2021-11-26

Added

  • Python Bindings 2.1.0 -> 2.2.0

    • Added Python api Graph.get_parent_graph

  • Ignore connections to ComputeGraph prims for the new OmniGraph UI.

[2.1.0] - 2021-11-26

Added

  • IAttributeType 1.2 -> 1.3

    • Added IAttributeType::isLegalOgnType

[2.0.3] - 2021-11-25

Added

  • INodeType 1.5 -> 1.6

    • Added INodeType::getName

[2.0.2] - 2021-11-24

Fixed

  • Fix for handling of referenced OmniGraph Graphs

[2.0.1] - 2021-11-18

Exposing attribute optional flag.

Added

  • IAttribute 1.8 -> 1.9

    • Added IAttribute::getIsOptionalForCompute

    • Added IAttribute::setIsOptionalForCompute

[2.0.0] - 2021-11-12

Major change to deprecate functionality that has been on the chopping block for a while now.

Removed

  • Removed PlugFlags

  • Removed kPlugFlagNone

  • Removed kPlugFlagFollowUpstream

  • INode 3.1 -> 4.0

    • Retired getPlug

    • Retired stashPlug

    • Retired getStashedPlugCount

    • Retired getStashedPlug

  • IGraphContext 2.1 -> 3.0

    • Retired getAttribute

    • Retired getAttributeWithAttr

    • Retired getAttributeGPU

    • Retired getElementCount

[1.4.1] - 2021-11-10

  • Fixed bugs where renaming the global graph breaks connections and where bundles don’t work in global graphs

[1.4.0] - 2021-11-10

Added

  • New Interface ISchedulingHints

    • Added ISchedulingHints::getComputeRule

    • Added ISchedulingHints::setComputeRule

[1.3.1] - 2021-11-08

Changed

  • ISchedulingHints 1.0 -> ONI

    • Kept same functionality, implemented as ONI interface instead of Carbonite interface

[1.3.0] - 2021-11-04

Added

  • INode 3.1 -> 3.2

    • Added INode::requestCompute

[1.3.0] - 2021-10-27

Added

  • IGraph 3.2 -> 3.3

    • Added IGraph::evaluate

[1.2.0] - 2021-10-18

Changed

  • Prim nodes now not created unless attribute-connected to OG node

Added

  • IGraph 3.1 -> 3.2

    • Added IGraph::getFlatCacheUserId

  • IAttribute 1.8 -> 1.9

    • Added IAttribute::ensurePortTypeInName

    • Added IAttribute::getPortTypeFromName

    • Added IAttribute::removePortTypeFromName

[1.1.0] - 2021-10-13

Added

  • IAttribute 1.7 -> 1.8

    • Added IAttribute::isValid

  • INode 3.0 -> 3.1

    • Added INode::isValid

  • IGraph 3.0 -> 3.1

    • Added IGraph::isValid

  • IGraphContext 2.0 -> 2.1

    • Added IGraphContext::isValid

[1.0.6] - 2021-10-08

Added

  • FileFormatVersion 1.1 -> 1.2

    • Added support for scoped graphs in the editor

[1.0.5] - 2021-10-07

Added

  • IBundle 1.3 -> 1.4

    • Added IBundle::addAttributes

    • Added IBundle::removeAttributes

[1.0.4] - 2021-09-30

Added

  • Created ISchedulingHints 1.0

    • Added ISchedulingHints::getThreadsafety

    • Added ISchedulingHints::setThreadsafety

    • Added ISchedulingHints::getDataAccess

    • Added ISchedulingHints::setDataAccess

  • INodeType 1.4 -> 1.5

    • Added INodeType::getSchedulingHints

    • Added INodeType::setSchedulingHints

[1.0.3] - 2021-09-29

Added

  • ComputeGraph 2.3 -> 2.4

    • Added ComputeGraph::getGraphCountInPipelineStage

    • Added ComputeGraph::getGraphsInPipelineStage

    • Added GraphBackingType::kGraphBackingType_None

[1.0.3] - 2021-09-23

Added

  • IGraph 2.1 -> 3.0

    • Changed the signature of IGraph::createGraphAsNode

    • Added IGraph::getGraphBackingType

    • Added IGraph::getPipelineStage

[1.0.3] - 2021-09-21

Added

  • IGatherPrototype 1.0 -> 1.1

    • Added getGatherArray

    • Added getGatherArrayGPU

    • Added getGatherPathArray

    • Added getGatherArrayAttributeSizes

    • Added getGatherArrayAttributeSizesGPU

    • Added getElementCount

[1.0.3] - 2021-09-16

Added

  • IAttribute 1.6 –> 1.7

    • Added IAttribute::isDynamic()

    • Added IAttribute::getUnionTypes()

[1.0.3] - 2021-09-15

Added

  • IAttributeData 1.2 –> 1.3

    • Added IAttributeData::cpuValid()

    • Added IAttributeData::gpuValid()

[1.0.3] - 2021-08-30

Added

  • IGraph 2.0 –> 2.1

    • Added IGraph::reloadFromStage()

[1.0.2] - 2021-08-18

Added

  • INode 2.0 -> 2.1

    • Added INode::getEventStream

[1.0.2] - 2021-08-09

IGatherPrototype 1.0

  • Added IGatherPrototype::gatherPaths

  • Added IGatherPrototype::getGatheredPaths

  • Added IGatherPrototype::getGatheredBuckets

  • Added IGatherPrototype::getGatheredType

[1.0.2] - 2021-07-26

Changed

  • INode 1.6 –> 2.0

    • Changed the signature of INode::createAttribute

[1.0.2] - 2021-07-16

Added

  • INodeType 1.3 -> 1.4

    • Added INodeType::removeSubNodeType()

[1.0.2] - 2021-07-14

Changed

  • IGraph 1.3 -> 2.0

    • Changed the signature of IGraph::createSubgraph

[1.0.2] - 2021-07-12

Added

  • IGraph 1.2 -> 1.3

    • Added IGraph::createGraphAsNode

[1.0.2] - 2021-07-04

Added

  • INode 1.5 -> 1.6

    • Added INode::getWrappedGraph()

Changed

  • ComputeGraph 2.2 -> 2.3

    • Changed the semantics of getGraphCount, getGraphs, getGraphContextCount, getGraphContexts

[1.0.2] - 2021-07-01

Added

  • INode 1.4 -> 1.5

    • Added INode::registerPathChangedCallback()

    • Added INode::deregisterPathChangedCallback()

[1.0.2] - 2021-06-21

Added

  • IAttribute 1.5 -> 1.6

    • Added IAttribute::getPortType()

[1.0.2] - 2021-06-11

Added

  • IBundle 1.2 -> 1.3

    • Added IBundle::removeAttribute

  • IGraphContext 1.3 -> 1.4

    • Added IGraphContext::getTimeSinceStart()

[1.0.2] - 2021-06-10

Added

  • INodeType 1.2 -> 1.3

    • Added INodeType::getSubNodeTypeCount

    • Added INodeType::getAllSubNodeTypes

  • IDataStealinPrototype 1.0

    • Added IDataStealingPrototype::actualReference

    • Added IDataStealingPrototype::moveReference

    • Added IDataStealingPrototype::enabled

    • Added IDataStealingPrototype::setEnabled

[1.0.2] - 2021-06-01

Changed

  • INode 1.3 -> 1.4

    • Modified INode::registerConnectedCallback

    • Modified INode::registerDisconnectedCallback

    • Modified INode::deregisterConnectedCallback

    • Modified INode::deregisterDisconnectedCallback

[1.0.2] - 2021-05-31

Added

  • IGraph 1.1 -> 1.2

    • Added IGraph::registerPreLoadFileFormatUpgradeCallback

    • Added IGraph::registerPostLoadFileFormatUpgradeCallback

    • Added IGraph::deregisterPreLoadFileFormatUpgradeCallback

    • Added IGraph::deregisterPostLoadFileFormatUpgradeCallback

[1.0.2] - 2021-05-05

Added

  • IGraph 1.0 -> 1.1

    • Added IGraph::inspect()

  • IAttributeData 1.1 -> 1.2

    • Added IAttributeData::getDataReferenceR()

    • Added IAttributeData::getDataReferenceRGpu()

    • Added IAttributeData::getDataReferenceW()

    • Added IAttributeData::getDataReferenceWGpu()

  • IAttributeType 1.0 -> 1.1

    • Added IAttributeType::inspect()

    • Added IAttributeType::baseDataSize()

    • Added IGraphRegistry::inspect()

    • Added IGraphRegistry::registerNodeTypeAlias()

    • Added INodeType::inspect()

  • INode 1.2 -> 1.3

    • Added INode::resolveCoupledAttributes()

    • Added INode::resolvePartiallyCoupledAttributes()

  • INode 1.1 -> 1.2

    • Added INode::getNodeTypeObj()

  • IGraphContext 1.1 -> 1.2

    • Added IGraphContext::inspect()

[1.0.1] - 2021-04-07

Added

  • Created the interface IAttributeType for working with the Type struct

[1.0.0] - 2021-03-01

Initial Version

  • Started changelog with initial released version of the OmniGraph core