Kit 105 Upgrade Migration Guide

Welcome!

Kit Extensions Upgrade

Python 3.10 Upgrade

Schema Development

Ar 2.0 (Asset Resolution Re-architecture)

API Breaking Changes

Base

Usd

Imaging

Other Breaking Changes

Non-Breaking Changes

Dumping Ground

Welcome!

It’s no easy feat to roll out 2+ years of contributions to Python, Visual Studio, and the USD Ecosystem in Omniverse– thank you for taking the time to use this guide to navigate the myriad incompatibilities introduced in this massive upgrade.

For the latest Omniverse Forum posts related to Kit 105 migration, please go [here]

Kit Extensions Upgrade

This section on upgrading Kit extensions contains information about breaking changes necessary to get building.

A fair amount of the toolset that we build on has been upgraded. This includes a new version of Visual Studio (2019), Boost 1.76, Python 3.10 and USD 22.11. These changes do impact Kit Extension developers and this next section will walk through some of the changes needed to upgrade an Extension to support all these changes.

The following steps assume that your Kit Extension is based on the Kit Extensions Template. The steps here should help the upgrade process but might be different depending on how the repository is set up to build.

Visual Studio 2019

The first step is to make sure your Extension is compatible with Visual Studio 2019.

  • Update your host-deps.packman.xml

    • Change your premake dependency to a more recent version. Currently, this is “5.0.0-beta1+nv1-${platform}”

    • Make your msvc dependency compatible with Visual Studio 2019. Currently, this is “2019-16.11.17-2”

    • Also use an updated version of winsdk which is “10.0.19608.0”

  • Next, you’ll need to update your version of repo_kit_tools in repo-deps.packman.xml. This updated version is needed so that premake will use the Visual Studio 2019 generator during the build process. Currently, this is “0.9.9”.

These updated dependencies should get the Extension repository pulling in the necessary dependencies for a Windows build using Visual Studio 2019

NOTE: An issue was encountered where the Extension(s) would still issue Windows build errors if built from a normal Windows Command Prompt. Switching to a Visual Studio 2019 Command Prompt fixed the issue. The exact build error was:

TRACKER : error TRK0005: Failed to locate: “CL.exe”. The system cannot find the file specified. [C:\omniverse\kit-ext-tpl-cpp-int\_compiler\vs2019\omni.example.cpp.commands.tests\omni.example.cpp.commands.tests.vcxproj]

TRACKER : error TRK0005: Failed to locate: “CL.exe”. The system cannot find the file specified. [C:\omniverse\kit-ext-tpl-cpp-int\_compiler\vs2019\omni.example.cpp.commands.plugin\omni.example.cpp.commands.plugin.vcxproj]

Issues with USD

The main issue that we are aware of when building a USD plugin, such as a SdfFileFormat plugin, against Visual Studio 2019 is an optimization that the compiler makes with release builds. Visual Studio 2019 enables the “/Zc:inline” option by default, we need to make sure that this option is disabled otherwise USD will not be able to construct your USD plugin in a release build.

  • In premake.lua make sure that you add the ”/Zc:inline-” buildoption for release builds to disable that behavior

  • If you are curious about why this needs to be done you can read more about the issue [here]

Kit SDK

Next, we’ll need to point our Extension at a kit-sdk dependency that includes all the changes necessary for Usd 22.11 and Python 3.10. As of this writing, we were just able to get a publish of kit-sdk that is compatible with USD 22.11 and Python 3.10 but until everything is merged into master we’ll need to use a package based on MR 21860. A quick search in packman could be used to find the most recent version:

We will also need to correctly import these new upstream dependencies from our kit-sdk dependency:

  • In target-deps.packman.xml (or kit-sdk-deps.packman.xml) make sure that you are importing both the python and nv_usd dependencies from kit-sdk

    • Make sure that your import path is pulling from all-deps.packman.xml in kit

    • [Include python]

    • [Include nv_usd_py310_$config]

      • This only needs to be added or changed if you extension depends on nv_usd. So if you see a dependency like nv_usd_py37_$config make sure that it is updated to nv_usd_py310_$config

  • At a minimum, your target-deps.packman.xml should be updated to look something like:

<project toolsVersion="5.6">

<import path="../_build/${platform}/${config}/kit/dev/all-deps.packman.xml">

<filter include="python" />

<filter include="nv_usd_py310_${config}" />

</import>

<dependency name="nv_usd_py310_${config}"
linkPath="../_build/target-deps/nv_usd/${config}" />

</project>
  • If you are pulling your nv_usd or python dependencies directly from packman, it might be a good time to update your dependencies and import directly from Kit’s all-deps.packman.xml. For example, if you are declaring your python and nv_usd dependencies like:

<project toolsVersion="5.6">

<dependency name="nv-usd_${config}" linkPath="../_build/deps/usd_${config}" >

<package name="nv-usd" version="20.08.nv.1.2.2404.6bf74556-win64_py37_${config}-main" platforms="windows-x86_64" />

<package name="nv-usd" version="20.08.nv.1.2.2404.6bf74556-linux64_py37-centos_${config}-main" platforms="linux-x86_64" />

<package name="nv-usd" version="20.08.nv.1.2.2404.6bf74556-linux-aarch64_py37_${config}-main" platforms="linux-aarch64" />

</dependency>

<dependency name="python" linkPath="../_build/deps/python" >

<package name="python" version="3.7.12+nv1-${platform}" platforms="windows-x86_64 linux-x86_64 linux-aarch64" />

</dependency>

</project>
  • Both python and nv_usd dependencies should be updated to use importing like:

<project toolsVersion="5.6">

<import path="../_build/${platform}/${config}/kit/dev/all-deps.packman.xml">

<filter include="python" />

<filter include="nv_usd_py310_${config}" />

</import>

<dependency name="nv_usd_py310_${config}" linkPath="../_build/target-deps/nv_usd/${config}" />

</project>

Update premake lua

We should have all of the necessary dependencies for MSVC 2019, Python 3.10, Boost 1.76 and USD 22.11 correctly set up. The next part of the process is updating the premake.lua scripts for each extension. Unfortunately, each one of these premake.lua scripts can be different depending on what’s required to build the extension. For example, if your extension is purely Python no changes to premake.lua should be necessary. But if your extension depends on USD and links against Boost for Python bindings it’s very likely that premake.lua will need to be updated

Odds and Ends

  • The location of the omni.usd binary has changed. To properly link against omni.usd you will need to change the library path to find it:

    • libdirs {“%{kit_sdk}/extscore/omni.usd.core/bin”} -> libdirs {“%{kit_sdk}/exts/omni.usd.core/bin”}

Common Errors

  • Unable to find Python headers / library for building Python bindings

    • The following error usually means that an include directory within a premake5.lua build script might be misconfigured and not set to the correct directory

../../../_build/target-deps/nv_usd/debug/include/boost/python/detail/wrap_python.hpp:57:11:
fatal error: pyconfig.h: No such file or directory
  • Within your premake5.lua scripts a couple examples of incorrect paths:

includedirs { target_deps.."/python/include/python3.10**m**" }

includedirs { target_deps.."/python/include/python3.7m" }

includedirs { target_deps.."/python/include/python3.7" }
  • These include directories should be set to the following now that kit-sdk is using Python 3.10

includedirs { target_deps.."/python/include/python3.10" }

Usd 22.11 and Python 3.10 Updates

From here, the Extension repository should at least be able to find all the necessary dependencies, build and link against them. The next part will be to make any necessary changes for Python 3.10, such as calling super().__init__(), and USD 22.11. These changes can vary wildly between repositories and developers should refer to all the documentation in this guide on how to properly migrate their repository.

Publishing Extensions

Publishing of extensions is usually handled via CI / CD . This typically happens after all tests pass on the main branch of the extension’s repository. The location of where extensions are published to are handled by configuration in their repo.toml or using the default settings set within kit-sdk. Kit 105.0 has not changed this behavior but a couple of features have been added to help with the new version of USD. Specifically, these features are USD package targets and USD extension registries.

Package Targets

Package targets are metadata embedded with the extension that help determine compatibility with the Kit runtime. Some simple examples of package targets are an extension’s platform (Windows, Linux, aarch, etc), configuration (release, debug), python version (3.6, 3.7, 3.10) and so on. To help with the transition to a new USD version we have added a USD package target that can be optionally written to metadata. The USD package target helps the Kit runtime load the correct version of the extension with the version of USD being used. For example, Kit 104.2 will need to load extensions that are built using USD 20.08 whereas Kit 105.0 will need extensions compatible with USD 22.11. The USD package target provides this information to the Kit runtime to load the right version of the extension. More information on package targets for extensions can be found in the [documentation]

Writing Package Targets

Not all extensions directly depend on USD, as such they do not need to write out the USD package target. But there are a couple of scenarios where an extension should write out the USD package target:

  1. Native extensions that build and link against USD libraries. For example:

    a. Extensions that add USD plugins like SdfFileFormat, ArResolver, > ArPackageResolver, UsdSchemaAPI, UsdTypedSchema, etc

    b. Extensions that use USD APIs to operate on USD data

  2. Python extensions that use new USD APIs and are not backward compatible with older versions of USD.

For these types of extensions, writing out the USD package target helps ensure that the correct version of the extension will be loaded. To write out the USD package target it as simple as adding the following configuration to your extension.toml:

[package]

## ... additional package configuration settings

writeTarget.usd = true

Once your extension has been configured to write out its USD package target the publishing process will take care of the rest. It will get all the information needed for the USD version and embed that metadata into the published extension. The Kit runtime will then load the correct version of the extension according to the USD version being used. You can find more information about writing package targets in the [documentation]

Extension Registries

Another feature added to the Extension publishing process are USD version specific Extension Registries. These Extension Registries provide a greater level of isolation than USD package targets as the Extensions are uploaded to a completely separate location. This allows for Extensions to be published even when kit-sdk is still in the process of being upgraded to the new version of USD. The benefit here is that a downstream Extension repository can be upgraded and published without affecting main-line Extension Registries used by Applications. After an Extension is published it can then be tested via ETM or resolved by any dependent Extensions that also need to be upgraded.

Enabling USD Extension Registries

Enabling USD version specific Extension Registries is handled through configuration. The usd.version_compatibility.enable configuration setting is what enables this behavior and is intended to be set in one of two places:

  1. Within repo_tools.toml for kit-sdk itself

  2. In an Extension repository’s repo.toml

Enabling usd.version_compatibility in kit-sdk is intended to “opt-in” all Extensions that upgrade to this build of kit-sdk. For example, with the un-merged https://gitlab-master.nvidia.com/omniverse/kit/-/merge_requests/21860 we have this configuration setting enabled since all the changes affect API, ABI and Behavioral incompatibilities. This allows for us to upgrade and publish downstream Extensions freely without risking Applications pulling in these incompatible Extensions. We can use ETM on our MR to see how the upgrade is progressing with downstream Extensions.

The other way to enable this is by enabling the same usd.version_compatibility.enable setting in an Extension repository’s repo.toml. This is for Extensions to selectively “opt-in” to use USD version specific Extension Registries. The intention for setting it at this level is when Extensions want to or need to use a custom build of USD for things such as testing ABI compatibility.

An example of an Extension repository enabling this behavior in it’s repo.toml configuration file is:

[repo_publish_exts]

## ... additional publish_exts configuration settings

## Enable USD version compatiblity so the extension is published to the

## corresponding USD compatible extension registry

usd.version_compatibility.enable = true

Publishing to USD Extension Registries

The question of “can I publish my upgraded USD Extension or should I wait until everything is merged into kit-sdk/master?” has come up in the past couple of days. The answer is that, yes, we can publish upgraded Extensions without affecting Applications using those Extensions since we have usd.version_compatibility.enable turned on for [https://gitlab-master.nvidia.com/omniverse/kit/-/merge_requests/21860]. With the current configuration, the Extensions will be published to the following Extension Registry:

omniverse://kit-extensions.ov.nvidia.com/exts/kit/usd/nv-usd/22.11/merge_pxr_22-11-py310/

Updated Extension Repositories

The two main Extension repositories that support the new toolset are:

  1. kit-usd

  2. usd-sbsar-plugin

As an Extension is being upgraded it might be good to reference these repositories if you hit any issues not described in this section. I don’t expect these repositories to be exhaustive in all the issues we may encounter but it’s a good starting point. As more developers upgrade their Extensions we will probably uncover more issues that we are currently unaware of. Feel free to add to this guide with any issues that have been encountered and you believe will help out other developers.

Python 3.10 Upgrade

Breaking Change: must call super __init__ function

  • All derived classes that override __init__ must call the super __init__ function. This does not limit only to omni.ext.IExt, but any class, the following example will also fail:

class A:

    def __init__(self):

        self.x = 0

class B(A):

    def __init__(self):

        self.y = 0

b = B()
print(b.x, b.y)
  • Omitting this is now an error in 3.10. The simplest way is to call super().__init__() with arguments if there are any.

Breaking Change: DLL load behavior

  • DLL load behavior changed on Windows in Python 3.8+.

  • The PATH environment variable is no longer used for directories to load DLLs from. Anything outside of the script dir/python exe dir must be added in code now. There’s a new function in the os module called add_dll_directory that takes a string path arg.

Breaking Change: Boost upgrade to version 1_76

  • Boost has an auto linker for Windows that is enabled by default. The lib names for Windows vary based on compiler, config, and mt or not. The auto linker handles determining the correct version based on the active build tooling. Boost 1_76 is aware of the VS 2019 build tools, unlike version 1_68 that was being used previously. USD is still being built with 2017, so at the Kit build phase, boost detects 2019 and searches for those libraries, but they don’t exist because USD built with 2017. As a workaround until all of the other USD dependents are built with VS 2019, boost needs to be linked manually. There’s a premake helper function in Kit called link_boost_for_windows that takes a list of the short names and links the full ones.

Schema Development

Introduction

Between 20.08 and 22.08, schema extensions have undergone a number of changes that include new features (such as codeless and auto-applied schemas) and breaking changes (such as API schemas no longer supporting inheritance). This section discusses both, along with examples of changes that need to be made for schema extensions to be compliant with USD 22.11.

What’s Changed? (Relevant Release Notes)

22.11

  • Added "GetAll" method for multi-apply schemas in codegenTemplates.

22.08

  • Added the apiSchemaOverride feature to usdGenSchema that allows a schema definition to explicitly define sparse overrides to properties it expects to be included from a built-in API schema. See: https://graphics.pixar.com/usd/release/api/_usd__page__generating_schemas.html#Usd_APISchemaPropertyOverride

22.05

  • Changes for usdGenSchema:

    • Disabled inheritance for multiple apply API schemas, now that built-in API schemas are supported for multiple apply schemas.

    • Fixed issue where schema tokens with invalid C++ identifiers would be generated. These tokens will now be converted into a valid identifier. Tokens beginning with a numeral are now prefixed with ‘_’.

    • Added ability to generate C++ identifiers using property names and values exactly as authored in schema.usda instead of camel-casing them by specifying useLiteralIdentifier in the GLOBAL schema metadata. This is helpful in scenarios where schema.usda is generated using utilities like usdgenschemafromsdr instead of being hand authored.

    • Fixed Python 3 compatibility by explicitly included the None keyword in reserved list.

22.03

  • Changes for applied API schemas:

    • Multiple-apply API schemas can now include other multiple-apply API schemas as built-ins.

    • "prepend apiSchemas" must be used in schema.usda to set built-in API schemas on another schema.

    • Applied API schemas authored on a prim can no longer change the type of a property defined by that prim’s type or built-in API schemas.

21.11

  • Updated connectedAPIBehavior so that APISchemas can now provide connectableAPIBehavior by explicitly registering a new behavior associated with the APISchemaType or by providing plug metadata to configure the connectability behavior. Note that the latter can be used for codeless schemas.

  • Single apply API schemas can now include built-in API schemas and can auto apply to other single apply API schemas. API schemas are now only allowed to inherit directly from UsdAPISchemaBase.

  • Applied API schemas can no longer inherit from other other applied API schemas, which allows UsdPrim::HasAPI() to be a much faster query. Non-applied schemas may still inherit from other non-applied schemas.

21.08

  • Added support for “codeless” USD schemas that do not have any C++ or Python code. Changes to these schemas’ definitions do not require any code to be recompiled; instead, the generatedSchema.usda just needs to be regenerated via usdGenSchema and reinstalled.

  • Added ability to specify allowed prim types for API schemas in the customData dictionary for the schema in schema.usda.

  • Added UsdPrim::CanApplyAPI and CanApply to all API schema classes to check if an API schema can be applied to a prim based on the restrictions above.

  • API schemas can now provide connectability behavior, which can override behavior based on prim type.

21.05

  • Updated usdGenSchema to not error when generating a dynamic schema and libraryPath is not specified.

  • Fixed usdGenSchema to honor apiName metadata for auto generated tokens.h. This results in correct doxygen documentation for the correct API names.

  • usdGenSchema now adds a type alias for abstract typed schemas, which means abstract typed schemas now have an official USD type name which is registered with the UsdSchemaRegistry.

  • Auto apply API schemas in USD can now specify abstract typed schemas to auto apply to, indicating that the API should be applied to all schemas that derive from the abstract schema type.

21.02

  • Added support for auto-apply API schemas. This allows single-apply API schemas to be automatically applied to prims using one of a list of associated concrete schema types instead of requiring the user to manually apply the API schema.

  • Renamed UsdSchemaType to UsdSchemaKind to disambiguate between the schema type (e.g. UsdGeomSphere) and kind (e.g. non-applied, single-apply, etc).

  • Deprecated functions using the "schema type" terminology in favor of "schema kind".

Breaking Change: Applied API Schemas, Inheritance, and Built-Ins

As of v21.11, USD no longer supports inheritance chains for API schemas (although still fully supported for IsA schemas). The primary reason for this breaking change was the need to make UsdPrim::HasAPI<SchemaType>() more efficient by not continuously checking derivation chains. To that end, support for inheritance was removed from API schemas. Instead, API schemas have the ability to define built-ins, which are semantically similar to defining inheritance chains, but more performant from a USD run-time perspective. Unfortunately, this has a significant impact to our own custom schema definitions (particularly physics) and requires that these schemas be migrated to conform to the new requirements.

Inheriting </APISchemaBase> and Applying Built-Ins To Represent Dependencies

All API schema types (both single and multiple-apply) are now required to inherit </APISchemaBase>. This means that any derivation chains that exist in applied API schemas must be converted such that the inherits attribute of the schema type is </APISchemaBase>:

class "MyAppliedAPI" (

inherits = </APISchemaBase>

) {

}

To simulate inheritance and define a dependency chain, USD has introduced the concept of built-ins. This is the inverse of the auto-applied API schema feature - when an applied API schema is applied to a prim instance, all applied API schemas declared as built-ins are applied as well. Built-ins work recursively such that if SchemaType1API declared built-ins of SchemaType2API and SchemaType3API, and SchemaType2API declared built-ins of SchemaType4API, then applying SchemaType1API to a prim instance will also apply SchemaType2API, SchemaType3API, and SchemaType4API.

All built-ins specified must be either single-apply API or named instances of multiple-apply API schemas (IsA schemas cannot be built-ins).

Declaring an applied API schema type as a built-in involves placing it’s schema type name in the prepend apiSchemas attribute of the schema type that uses it as a built-in:

class "ExampleSchema1API" (

    inherits = </APISchemaBase>

    customData = {

        token apiSchemaType = "singleApply"

    }

    prepend apiSchemas = ["ExampleSchema2API"]

) {

}

This definition states that when ExampleSchema1API is applied to a prim instance, ExampleSchema2API will also be applied as a schema built-in to ExampleSchemaAPI. This mimics inheritance in the sense that applying ExampleSchema1API will always also apply ExampleSchema2API, so all attributes from both will be present on the prim (as you would expect in the normal inheritance chain).

Note: A schema can have a stronger opinion on a property that may come from one of its built-ins if it declares the property itself. This is useful to override the default value of the property. Be careful not to do this unintentionally and do things like e.g. change the type of the property!

Multiple-apply schemas have an additional set of consequences since they must always be applied to a prim instance using the same instance name. This results in the following:

  • If a multiple-apply API schema is listed as a built-in without an instance name, it is always applied to the prim instance using the same instance name as the schema type declaring the built-in.

  • If a multiple-apply API schema is listed as a built-in with an instance name, it will be applied with a suffixed instance name that combines the built-in instance name and the instance name of the schema type declaring the built-in.

For example, consider the following definition:

class "MultipleApplySchema1API" (

    inherits = </APISchemaBase>

    customData = {

        token apiSchemaType = "multipleApply"

    }

    prepend apiSchemas = ["MultipleApplySchema2API"]

) {

}

Applying MultipleApplySchema1API to a prim instance with the instance name foo will also result in MultipleApplySchema2API being applied to the prim instance with the instance name foo. Now consider a slight modification to this definition:

class "MultipleApplySchema1API" (

    inherits = </APISchemaBase>

    customData = {

        token apiSchemaType = "multipleApply"

    }

    prepend apiSchemas = ["MultipleApplySchema2API:bar"]
)
{

}

In this case, applying MultipleApplySchema1API to a prim instance with the instance name foo will result in MultipleApplySchemaAPI2 being applied with the suffixed instance name foo:bar.

Note that built-ins apply to IsA schema types as well (that is, you can define a list of built-in API schema types that are applied to a prim instance of the IsA type). In this case, inherited types will inherit the built-ins from their base types.

What do I need to change?

Based on this breaking change, there are two things that must be done in existing schemas:

  • All applied API schemas must be changed to inherit from </APISchemaBase>

  • The existing inheritance hierarchy must be converted to a set of built-ins (see examples below)

As an example, consider three applied API schemas Schema1API, Schema2API, and Schema3API, each currently inheriting from the one before as so:

class "Schema1API" (

    inherits = </APISchemaBase>

    customData = {

        token apiSchemaType = "singleApply"

    }

) {

}

class "Schema2API" (

    inherits = </Schema1API>

        customData = {

    token apiSchemaType = "singleApply"

    }

) {

}

class "Schema3API" (

    inherits = </Schema2API>

    customData = {

        token apiSchemaType = "singleApply"

    }

) {

}

To convert these, each would be modified to inherit APISchemaBase and to prepend the schema type they inherit as follows:

class "Schema1API" (

    inherits = </APISchemaBase>

    customData = {

        token apiSchemaType = "singleApply"

    }

) {

}

class "Schema2API" (

    inherits = </APISchemaBase>

    customData = {

        token apiSchemaType = "singleApply"

    }

    prepend apiSchemas = ["Schema1API"]

) {

}

class "Schema3API" (

    inherits = </APISchemaBase>

    customData = {

        token apiSchemaType = "singleApply"

    }

    prepend apiSchemas = ["Schema2API"]

) {

}

Since built-ins are recursive, we get the properties that we would expect from all three applied schemas when applying Schema3API to a prim, just as we would in the inheritance scenario.

Accessing API Schema Attributes

Unfortunately, using the API schemas becomes a bit more burdensome than it is with inheritance. Prior to this change, a developer could modify any of the inherited attributes via the most-derived type:

Schema3API schema3API = Schema3API::Apply(prim);

int x = schema3API.GetSchema3Attr1().Get<int>();

double y = schema3API.GetSchema2Attr1().Get<double>();

This same approach does not work with built-ins, and so it is necessary at the current time to acquire the different API schemas in the built-ins set to set the attributes on each appropriately:

Schema3API schema3API = Schema3API::Apply(prim);

int x = schema3API.GetSchema3Attr1().Get<int>();

Schema2API schema2API = Schema2API(prim);

double y = schema2API.GetSchema2Attr1().Get<double>();

This requires (extensively) refactoring existing code, especially for schemas like physics that have API schemas that are heavily inheritance based. The expectation is that this will be addressed by USD to make this more developer friendly.

Breaking Change: Schema Kind

From v21.02 onward, what used to be schema type is now referred to as schema kind. This change was made to disambiguate the schema type name (e.g. Schema1API) and what kind of schema it is (e.g. single-apply, multiple-apply, etc.). While the impact is small, it does require:

  • Regeneration of the schema classes such that the GetSchemaKind method is generated over the GetSchemaType method (which will return a UsdSchemaKind not a UsdSchemaType

  • Code changes in any code that uses those methods of the schema (or associated methods of the UsdSchemaRegistry to reflect on schema types).

In practice, since the values of UsdSchemaKind are the same as the old UsdSchemaType enumeration, this means replacing any code that calls GetSchemaType with calls to GetSchemaKind and using UsdSchemaKind as the return value, on both schema types themselves and any code involving the UsdSchemaRegistry.

Also, if your plugInfo.json is missing the schemaKind field, it may silently fail to load.

For details on API breakage, see:

[Other Breaking Changes: Schemas: pugInfo.json: plugInfo.json now requires schemaKind field]

Breaking Change: Retrieving Schema Type Names

From v21.02 onward, the GetSchemaPrimSpec method on UsdPrimDefinition has been removed. This method was used to get the “schema prim spec”, from which the schema type name of an e.g., C++ type could be retrieved. While there is no direct replacement on UsdPrimDefinition, similar functionality can be found in the UsdSchemaRegistry singleton object via the method GetSchemaTypeName:

/// Return the type name in the USD schema for prims or API schemas of
the

/// given registered \\p SchemaType.

template <class SchemaType>

static TfToken GetSchemaTypeName() {

    return GetSchemaTypeName(SchemaType::_GetStaticTfType());

}

New Feature: Auto-Applied API Schemas

An auto-applied API schema refers to a single-apply API schema that will be automatically attached to a set of prim instances of one or more defined schema types. This is a new feature that requires no migration of existing schema content and has two advantages:

  • An existing schema set can be extended with additional attributes without having to modify the original schema. That is, if a schema Schema1 supplied a set of attributes, and a developer decides that there is an additional set of attributes that are directly relevant to prims that have Schema1 applied, then they can create a new schema Schema2API containing those new attributes and declare that it should be auto-applied to all prim instances of type Schema1 (in the case of typed schemas) or for which Schema1 is applied (in the case of API schemas), without modifying Schema1 itself. In the case of IsA schemas, the auto-apply rule would trigger on the specified schema being applied to a prim instance as well as any inherited type of that schema being applied.

  • All prim instances that satisfy the auto apply to criteria automatically get the new schema applied without developers having to explicitly call Apply on each prim they want the schema to apply to.

The mechanism for defining this in a schema definition is via the apiSchemaAutoApplyTo attribute of the API schema type’s customData dictionary. This is an array of token strings defining the names of the schemas applied to a prim instance that trigger the auto-apply rule. Note this is an or set, not an and set (only one of the listed schemas need be applied to a prim instance for the auto-apply rule to trigger). For example, if a developer wanted to auto-apply a new schema type Schema1API to all prim instances of type UsdGeomMesh, their definition would look as follows:

class "Schema1API" {

inherits = </APISchemaBase>

customData = {

    token[] apiSchemaAutoApplyTo = ["UsdGeomMesh"]

    }

}

Note that this functionality only applies to single-apply API schemas (as multiple-apply API schemas require an instance name to be specified on application).

The above technique is applied at schema generation time, which is sufficient for a broad number of use cases. USD also has an additional mechanism for supplying this information which applies later in the pipeline (i.e. after schema generation has occurred and is distributed). This is referred to as plugin defined auto-applied API schemas. This allows developers to specify additional auto-apply rules that may only affect a subset of schema consumers. While an uncommon use case, USD allows this type of auto-apply schema to be specified directly in the plugInfo.json file via the AutoApplyApiSchemas key contained in the Plugins.Info key. Representing the example above in the plugInfo.json file would look as follows:

{

    "Plugins": [

        "Info": {

            "AutoApplyAPISchemas": {

                "Schema1API" : {

                    "apiSchemaAutoApplyTo": [

                        "UsdGeomMesh"

                    ]

                }

            }

        }

    ]

}

New Feature: Abstract Typed Schemas and the Schema Registry

Prior to v21.05, USD did not record abstract typed schemas as official USD type names in the schema registry. This effectively meant that developers could not refer to these abstract typed schemas in scenarios such as auto-apply of API schemas. This minor change makes abstract typed schemas first class citizens in the schema registry, and their type names can be used in auto-apply scenarios to capture a large number of prims who’s schemas are derived from the abstract schema. That is, consider the scenario below:

Figure 1: Abstract Typed Schemas with Auto-Apply

In this case, AppliedSchema1API will be auto-applied to all prims of type ConcreteSchema1, ConcreteSchema2, or ConcreteSchema3. Prior to this change, AppliedSchema1API would only have been allowed to specify one (or more) of the concrete schema types to auto-apply to.

New Feature: Codeless Schemas

v21.08 introduced the concept of codeless schemas. These schemas have no generated code - only the type definition. This makes them easy to distribute, use, and iterate; providing a data contract without binary distribution issues (although codeless schemas are still discovered through the standard USD plug-in system). You may already be taking advantage of this feature - it was cherry picked into NVIDIA’s v20.08 USD source and made available to usdgenschema. Codeless schemas can be declared by adding the skipCodeGeneration attribute to the GLOBAL schema metadata. Note that this will cause all schemas defined in the schema.usda file to be codeless, so if you want both codeful and codeless schemas be sure to separate out their definitions into different schema.usda files.

As an example, let’s define a codeless schema for the following simple scenario:

Figure 2: Codeless Schema Example

over "GLOBAL" (

    customData = {

        bool skipCodeGeneration = true

    }

) {

}

class "Schema1API" (

    inherits = </APISchemaBase>

    customData = {

        token apiSchemaType = "singleApply"

    }

)

{

int schema1:property1 = 5 (

)

int schema1:property2 = 2 (

)

}

The downside to codeless schemas is that you don’t get the nice wrappers for accessing properties on a prim associated with that schema that are available through the code generation. All property access must go through the generic API’s available on UsdPrim.

TfType schemaType =
UsdSchemaRegistry::GetAPITypeFromSchemaTypeName("Schema1API");

bool hasApi = prim.HasAPI(schemaType);

if (hasApi)

{

    int schema1APIProperty1Value = 0;

    int schema1APIProperty2Value = 0;

    prim.GetAttribute("schema1:property1").Get<int>(&schema1APIProperty1Value);

    prim.GetAttribute("schema1:property2").Get<int>(&schema1APIProperty2Value);

    assert(schema1APIProperty2Value == 2);

    prim.GetAttribute("schema1:property2").Set<int>(schema1APIProperty1Value);

    prim.GetAttribute("schema1:property2").Get<int>(&schemaAPIProperty2Value);

    assert(schema1APIProperty2Value == 5);

}

New Feature: Additional GLOBAL Schema Metadata to Define Use of Literal Identifier Names

In v22.05, USD added the ability for schema authors to specify that property names should be generated verbatim as written rather than the normal behavior of camel-casing them. This is a minor change, but helpful in scenarios where the schema.usda file is auto-generated by a tool rather than hand authored (e.g. usdgenschemafromsdr). To invoke this behavior, a new metadata key was added to the GLOBAL schema metadata:

over "GLOBAL" (

    customData = {

        string libraryName = "exampleLibrary"

        string libraryPath = "."

        bool useLiteralIdentifier = true

    }

)

}

Adding this metadata informs usdgenschema to attempt to use the written property names verbatim. Note that normal rules still apply for identifiers, and usdgenschema will make the property name a valid identifier (via TfMakeValidIdentifier) if it is invalid, even in cases where useLiteralIdentifier is set in the GLOBAL metadata.

New Feature: Defining Sparse Overrides From Built-Ins

In v22.08, USD introduced the ability for an API schema to perform a sparse override of a built-in’s property. In this scenario, an API schema may have an opinion on the default value of a property from one of its built-ins, without defining or owning the property itself. This is functionally similar to an over for the property, where the API schema defines a stronger opinion of the default value. Consider the following:

Figure 3: Sparse Overrides on Built-Ins

This new functionality can be taken advantage of by adding the apiSchemaOverride to the customData dictionary of the property.

class "Schema1API" (

) {

    uniform int schema1:property = 5 (

)

}

class "Schema2API" (

    prepend apiSchemas = ["Schema1API"]

) {

    uniform int schema1:property = 2 (

    customData = {

        bool apiSchemaOverride = true

    }

)

}

In this scenario, Schema2API has declared Schema1API a built-in and provided a sparse override of the schema1:property default value. Note that when doing this, the property must be declared with the exact same type and variability (e.g., uniform int in the above example), otherwise the override is ignored. Also note that this functionality is only available to API schemas and does not apply to overriding properties via IsA schema inheritance.

Ar 2 (Asset Resolution Re-architecture)

Introduction

The public interface to Ar (Asset Resolution) has changed significantly, hence the version change from 1.0 to 2.0. While it is a significant change, the functionality is mostly the same but provides better hooks for cloud-based asset backends such as Nucleus. The parts of Ar that changed mostly relate to removed and renamed methods. In most circumstances, methods were removed since they really only applied to Pixar’s way of resolving assets. Other methods were renamed to more accurately convey their intent.

Breaking Change: IsSearchPath() Removed

Search paths are no longer a part of the public interface of Ar 2.0. This was done for good reason as not all asset management systems support search paths. Internally, an implementation of Ar 2.0 can support search paths but there is no publicly available method such as ArGetResolver().IsSearchPath(). Originally, this method was made a part of the public Ar interface so Sdf could perform the “look here first” approach when resolving an SdfAssetPath that fit the criteria of a search path. If you are using ArGetResolver().IsSearchPath() it might be a good time to assess why you are using it before migrating your code as there is not an out-of-the-box solution. If ArGetResolver().IsSearchPath() is used in a lot of places we could add a utility function to mimic it’s behavior.

In order to migrate your code to check if an asset path is a search path it will need to pass the following checks:

  1. It is not a URL prefixed with a scheme such as omniverse:// or https://

  2. It is not an absolute file path i.e starting with / or \

  3. It is not a file relative path:

    a. Does not start with ./ or ../

    b. Does not start with .\ or ..\

A C++ implementation would be:

// Add the C++ Implementation similar to what we are using in OmniUsdResolver_Ar1.cpp

For details on API breakage, see:

API Breaking Changes: Ar.Resolver: IsSearchPath() Removed

Breaking Change: IsRelativePath() Removed

As a part of the process to decouple assets from the filesystem, ArGetResolver().IsRelativePath() was also removed. While sometimes useful, it also made for a confusing API when paired with ArGetResolver().AnchorRelativePath(). It would make the caller think that you need to check if the asset path was relative before calling ArGetResolver().AnchorRelativePath() which was not always the case. If you find that you’re calling ArGetResolver().IsRelativePath() on asset paths before ArGetResolver().AnchorRelativePath() a better way to migrate your code would be to use a utility from Sdf:

auto stage = UsdStage::Open(“omniverse://some/asset.usd”);

const std::string assetPath = “./geom.usd”;

// SdfComputeAssetPathRelativeToLayer works for both Ar 1.0 and Ar 2.0

// It will also handle all the edge cases dealing with things like anonymous layers,

// package relative paths, etc.

const std::string assetId = SdfComputeAssetPathRelativeToLayer(stage->GetRootLayer(), assetPath);

If you find that you do need to check if some string is relative, TfIsRelativePath() could be used. But it’s important to understand that TfIsRelativePath() will only work with filesystem paths. For example, TfIsRelativePath(“omniverse://some/asset.usd”) would return true. So only use TfIsRelativePath() if you’re sure it’s a filesystem path and not a URL.

For details on API breakage, see:

API Breaking Changes: Ar.Resolver: IsRelativePath() Removed

Breaking Change: AnchorRelativePath() Renamed

ArGetResolver().AnchorRelativePath() was correctly renamed to ArGetResolver().CreateIdentifier(). The reason for this method being renamed is to clarify its intent which is to create an identifier for an incoming asset path. The incoming asset path may or may not be relative, but ArGetResolver().AnchorRelativePath() was always called to make sure the returned result was a valid identifier that could be consistently resolved.

const std::string anchor = "omniverse://some/asset.usd";

const std::string assetPath = "./geom.usd";

##if !defined(AR_VERSION) || AR_VERSION < 2

// Ar 1.0

const std::string identifierAr1 =
ArGetResolver().AnchorRelativePath(anchor, assetPath);

##else

// Ar 2.0 - The ArResolvedPath is required for the anchor to indicate to
the ArResolver plugin

// implementing _CreateIdentifier that the anchor has already been
resolved

const ArResolvedPath resolvedAnchor(anchor);

// Ar 2.0 - Note how the anchor and asset path order are switched

const std::string identifierAr2 =
ArGetResolver().CreateIdentifier(assetPath, resolvedAnchor);

##endif

For details on API breakage, see:

API Breaking Changes: Ar.Resolver: AnchorRelativePath() to CreateIdentifier()

Breaking Change: ComputeNormalizedPath() Removed

ArGetResolver().ComputeNormalizedPath() has been removed since in most cases it was a redundant call. Most ArResolver plugins would return the normalized form of an incoming asset path in ArGetResolver().AnchorRelativePath(). However, ArGetResolver().AnchorRelativePath() was vague as to the expected result. ArGetResolver().CreateIdentifier() clarifies that its returned result should be in its final normalized form.

For details on API breakage, see:

API Breaking Changes: Ar.Resolver: ComputeNormalizedPath() Removed

Breaking Change: ComputeRepositoryPath() Removed

ArGetResolver().ComputeRepositoryPath() has been removed. A repository path, or repoPath, was a very Pixar specific way of identifying their assets within Perforce. For the majority of their assets they could compute the resolved path or local path to a repository path (identifier) in Perforce. In some ArResolver plugins a resolved path can not be computed to its repository path (identifier). For this reason, an ArResolver plugin would just return the incoming path as-is and adds to a confusing ArResolver interface.

In order to migrate your code the call to ArGetResolver().ComputeRepositoryPath() should just be removed. The OmniUsdResolver would just return the incoming path, nothing was actually computed since client-library does not support converting a resolved cached path to the URL it was resolved from.

For details on API breakage, see:

API Breaking Changes: Ar.Resolver: ComputeRepositoryPath() Removed

Breaking Change: ComputeLocalPath() Removed

ComputeLocalPath() has been removed and replaced with more accurately named methods. In Ar 1.0, ComputeLocalPath() was called in SdfLayer::CreateNew to redirect a new layer to some local path on disk so it could still resolve. Ar 2.0 clarifies the interface by adding CreateIdentifierForNewAsset / ResolveForNewAsset methods

const std::string assetPath = "omniverse://some/new/asset.usd";

// Not completely necessary but makes sure the assetPath is absolute + normalized

const std::string identifier = ArGetResolver().CreateIdentifierForNewAsset(assetPath);

const ArResolvedPath resolvedPath = ArGetResolver().ResolveForNewAsset(identifier);

For details on API breakage, see:

API Breaking Changes: Ar.Resolver: ComputeLocalPath() Removed

Breaking Change: Resolve() Signature Changed

Resolve() has changed the return type from std::string to ArResolvedPath. The ArResolvedPath type is just a shim around std::string to clarify the interface when an ArResolver plugin can expect to receive a resolved path. One of the confusing aspects of Ar 1.0 for an ArResolver plugin implementation was when you were receiving an unresolved asset path or a fully resolved path. This led to numerous subtle bugs when the plugin would assume a resolved path but would actually be receiving an asset path since everything was just typed from std::string.

The code required to support this change can be done in a few different ways and should be handled according to preference or coding style:

const std::string assetPath = "omniverse://some/asset.usd";

// In Ar 1.0

const std::string resolvedPath = ArGetResolver().Resolve(assetPath);

// In Ar 2.0

const ArResolvedPath resolvedPath = ArGetResolver().Resolve(assetPath);

// or to support Ar 1.0 + Ar 2.0

auto resolvedPath = ArGetResolver().Resolve(assetPath);

Another very important aspect of Resolve() is that USD no longer assumes that the returned result will point to a normal file path on disk! It is expected that Resolve() can return things such as URIs where any file system calls, i.e ArchOpenFile() and ArchGetFileLength(), will not work correctly and more than likely fail. If you are currently using any file system operations on a resolved asset path your code should be updated to use the ArAsset / ArWritableAsset abstractions so you can properly read / write data. See the sections on OpenAsset() / OpenAssetForWrite() for examples on reading / writing.

For details on API breakage, see:

API Breaking Changes: Ar.Resolver: Resolve() Signature Changed

Breaking Change: ResolveWithAssetInfo() Removed

ResolveWithAssetInfo() has been removed and separated into two methods; Resolve() and GetAssetInfo(). GetAssetInfo() accepts an asset path and an ArResolvedPath as input to accurately find all the information related to the asset. The ArResolvedPath can help with asset management systems that might need the identifier, along with the resolved result of that identifier to accurately return the ArAssetInfo with all the correct information.

// In Ar 1.0

// Note that assetPath would typically be the identifier returned from AnchorRelativePath()

const std::string assetPath = "omniverse://some/asset.usd";

ArAssetInfo assetInfo;

const std::string resolvedPath = ArGetResolver().ResolveWithAssetInfo(assetPath, &assetInfo);

// In Ar 2.0

const std::string assetPath = "omniverse://some/asset.usd";

const ArResolvedPath resolvedPath = ArGetResolver().Resolve(assetPath);

ArAssetInfo assetInfo = ArGetResolver().GetAssetInfo(assetPath,
resolvedPath);

For details on API breakage, see:

API Breaking Changes: Ar.Resolver: ResolveWithAssetInfo() Removed

Breaking Change: GetModificationTimestamp() Signature Changed

GetModificationTimestamp() is another method that changes the return type to clarify what was expected to be returned for ArResolver plugin implementations. The return type for GetModificationTimestamp() changed from a VtValue to an ArTimestamp. The ArTimestamp is a more suitable type for external APIs to correctly sort and compare an asset’s modification timestamp due to its guaranteed comparison overload operators. These operators are important for a library such as Sdf to correctly reload layers, since the asset representing the SdfLayer needs to be sorted and compared based on the time the asset was last modified.

// In Ar 1.0

// Note that assetPath would typically be the identifier returned from AnchorRelativePath()

const std::string assetPath = "omniverse://some/asset.usd";

const std::string resolvedPath = ArGetResolver().Resolve(assetPath);

VtValue timestamp = ArGetResolver().GetModificationTimestamp(assetPath,
resolvedPath);

// In Ar 2.0

const std::string assetPath = "omniverse://some/asset.usd";

const ArResolvedPath resolvedPath = ArGetResolver().Resolve(assetPath);

ArTimestamp ts = ArGetResolver().GetModificationTimestamp(assetPath,
resolvedPath);

For details on API breakage, see:

API Breaking Changes: Ar.Resolver: GetModificationTimestamp() Signature Changed

Breaking Change: OpenAsset() and ArAsset Signature Changes

The change will mostly affect ArResolver plugin implementations, but is still a breaking change. OpenAsset() has changed its signature to ensure const-correctness. In Ar 1.0 this seemed like a bug, or oversight, where an ArResolver plugin would modify its own state when opening an asset for reading. This has been corrected in Ar 2.0 to guarantee that OpenAsset() is indeed const and will not modify its own state. The only required change here is for ArResolver plugin implementations to update their function signatures to mark it as const-qualified. This change also allows a const-qualified function to call ArGetResolver().OpenAsset() along with the virtual methods exposed by ArAsset such as GetSize(), GetBuffer(), Read(), etc.

Additionally, the type of resolvedPath has changed from a std::string to an ArResolvedPath.

Using OpenAsset() for reading assets has been supported since Ar 1.0. But now that ArGetResolver().Resolve() no longer assumes a file path on disk being returned, it’s very important to use OpenAsset() when data needs to be read from an asset path. Typical usage can look like the following:

// In Ar 2.0

const std::string assetPath = "omniverse://some/asset.usd";

const ArResolvedPath resolvedPath = ArGetResolver().Resolve(assetPath);

auto asset = ArGetResolver().OpenAsset(resolvedPath);

if (asset) {

    // get the buffer to read data into

    std::shared_ptr<const char> buffer = asset->GetBuffer();

    if (!buffer) {

    TF_RUNTIME_ERROR("Failed to GetBuffer()");

    return;

    }

    size_t bytesRead = asset->Read(buffer.get(), asset->GetSize(), 0);

    if (bytesRead == 0) {

        TF_RUNTIME_ERROR("Failed to read asset");

        return;

    }

// buffer should now contain bytesRead chars read from resolvedPath

}

For details on API breakage, see:

API Breaking Changes: Ar.Resolver: OpenAsset() / ArAsset Signature Changes

New Feature: OpenAssetForWrite() and ArWritableAsset

One of the big features of Ar 2.0 is the ability to write data directly to the underlying asset management system in an abstracted, and extendable, way. ArGetResolver().OpenAssetForWrite() is a hook in an ArResolver plugin implementation to assist and control how something is written to the asset management system. This new feature allows for things like streaming writes without the need to directly link against custom libraries like client-library. This greatly simplifies the process of getting new assets into asset management systems such as Nucleus, and is natively supported across all of USD through facilities like SdfFileFormat plugins. A very naive implementation could look something like the following:

// In Ar 2.0

const std::string assetPath = "omniverse://some/asset.usd";

// if writing to an existing asset

const ArResolvedPath resolvedPath = ArGetResolver().Resolve(assetPath);

// or if writing to a new asset

const ArResolvedPath resolvedPath = ArGetResolver().ResolveForNewAsset(assetPath);

// create a buffer that contains the data we want to write

const size_t bufferSize = 4096;

std::unique_ptr<char[]> buffer(new char[bufferSize]);

// put some data into the buffer

const std::string data = "some asset data";

memcpy(buffer.get(), data.c_str(), data.length());

// open the asset for writing

auto writableAsset = ArGetResolver().OpenAssetForWrite(resolvedPath, ArResolver::WriteMode::Replace);

if (writableAsset) {

    const size_t bytesWritten = writabelAsset->Write(buffer.get(),
    data.length(), 0);

    if (bytesWritten == 0) {

        TF_RUNTIME_ERROR(\"Failed to write asset\");

        return;

    }

    // close out the asset to indicate that all data has been written

    asset->Close();

}

New Feature: ArAsset Detached Assets

TODO: This is new as of 22.11 and I () don’t have much experience with it. It sounds like this creates an in-memory copy of the ArAsset so any changes to the original asset doesn’t have any impact on the detached asset. I think this might solve a problem we had at Disney where users performed reads and writes on top of one another due to NFS and not having a robust version control / asset management system like Perforce / Nucleus. This led to all sorts of crashes but creating in-memory copies of assets seems really expensive[Joshua Miller US]

API Breaking Changes

Base

Arch

Arch Filesystem

ArchFile removed

TODO

Tf

pxr Tf Python Module

Reference Commits:

Centralize Python module initialization logic

Python Find Regex:

from +. +import +(.*)[\r\n+]from +pxr +import +Tf[\r\n]+Tf.PrepareModule \( \1 , *locals\(\) *\)[\r\n]+del Tf(?:((?:[\r\n]+.))[\r\n]*try:[\r\n]+([ \t]+)import +__DOC(?:.|\r|\n)*[\r\n]except +Exception:(?:[r\n]+\3.)+)?

Python Replace Regex:

from pxr import Tf\nTf.PreparePythonModule()\ndel Tf

Python Example Before:

from . import _usdMdl
from pxr import Tf
Tf.PrepareModule(_usdMdl, locals())
del Tf
try:
   import __DOC
   __DOC.Execute(locals())
   del __DOC
except Exception:
   try:
       import __tmpDoc
       __tmpDoc.Execute(locals())
       del __tmpDocfailed
   except:
       pass

Python Example After (22.11+ only):

from pxr import Tf
Tf.PreparePythonModule()
del Tf

Python Example After (branched):

from pxr import Tf
if hasattr(Tf, “PreparePythonModule”):
    Tf.PreparePythonModule()
    del Tf
else:
    from . import _usdMdl
    Tf.PrepareModule(_usdMdl, locals())
    del Tf
    try:
        import __DOC
        __DOC.Execute(locals())
        del __DOC
    except Exception:
        try:
            import __tmpDoc
            __tmpDoc.Execute(locals())
            del __tmpDocfailed
        except:
            pass

Python Error Strings:

ImportError: DLL load  while importing {MODULE}: The specified module could not be found.
WARNING The above is a very general error, and could also be triggered by other issues unrelated to this PrepareModule to PreparePythonModule change

PrepareModule to PreparePythonModule

Usd

Ar

Ar Resolver

IsSearchPath() Removed

For a detailed explanation, see: Breaking Change: IsSearchPath() Removed

Reference Commits:

* [ar 2.0] Add identifier API to ArResolver
* [ar 2.0] Remove filesystem path operations during layer lookup
* [ar 2.0] Deprecate ArResolver functions slated for removal
* [ar 2.0] Remove deprecated relative/search path API from ArResolver
* [ar 2.0] Remove Ar 1.0 implementation
* [ar 2.0] Remove Ar 1.0 support from sdf
* [ar 2.0] Remove Ar 1.0 support from pcp
* [ar 2.0] Remove Ar 1.0 support from usdUtils

C++ Find Regex:

(?<=\W)IsSearchPath(?=\W)
NOTE: IsSearchPath was never wrapped in python, so no python changes are necessary

C++ Error Strings (Linux):

* ‘class pxrInternal_v0_22__pxrReserved__::ArResolver’ has no member named ‘IsSearchPath’

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::ArResolver” has no member “IsSearchPath”
* C2039        ‘IsSearchPath’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::ArResolver’

IsRelativePath() Removed

For a detailed explanation, see: Breaking Change: IsRelativePath() Removed

Reference Commits:

* [ar 2.0] Add identifier API to ArResolver
* [ar 2.0] Remove deprecated relative/search path API from ArResolver
* [ar 2.0] Remove Ar 1.0 implementation
* [ar 2.0] Remove Ar 1.0 support from sdf
* [ar 2.0] Remove Ar 1.0 support from usdUtils

C++/Python Find Regex:

(?<=\W)IsRelativePath(?=\W)

C++ Example Before:

SdfLayerHandle layer = stage->GetRootLayer();
    std::string assetId(“my/path.foo”);
    ArResolver& resolver = ArGetResolver();
    if (resolver.IsRelativePath(assetId)) {
        std::string anchorPath = layer->GetIdentifier();
        assetId = resolver.AnchorRelativePath(anchorPath, assetId);
    }
    std::string resolvedPath = resolver.Resolve(assetId);

C++ Example After (all versions):

SdfLayerHandle layer = stage->GetRootLayer();
    std::string assetId(“my/path.foo”);
    assetId = SdfComputeAssetPathRelativeToLayer(layer, assetId);
    std::string resolvedPath = ArGetResolver().Resolve(assetId);

Python Example Before:

from pxr import Ar, Usd
stage = Usd.Stage.CreateInMemory()
layer = stage.GetRootLayer()
assetId = “my/path.foo”
resolver = Ar.GetResolver()
if resolver.IsRelativePath(assetId):
    anchorPath = layer.identifier
    assetId = resolver.AnchorRelativePath(anchorPath, assetId)
resolvedPath = resolver.Resolve(assetId)

Python Example After (all versions):

from pxr import Ar, Usd
stage = Usd.Stage.CreateInMemory()
layer = stage.GetRootLayer()
assetId = “my/path.foo”
resolver = Ar.GetResolver()
if resolver.IsRelativePath(assetId):
    anchorPath = layer.identifier
    assetId = resolver.AnchorRelativePath(anchorPath, assetId)
resolvedPath = resolver.Resolve(assetId)

C++ Error Strings (Linux):

* ‘class pxrInternal_v0_22__pxrReserved__::ArResolver’ has no member named ‘IsRelativePath’

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::ArResolver” has no member “IsRelativePath”
* C2039        ‘IsRelativePath’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::ArResolver’

Python Error Strings:

* AttributeError: ‘Resolver’ object has no attribute ‘IsRelativePath’

AnchorRelativePath() to CreateIdentifier()

For a detailed explanation, see: Breaking Change: AnchorRelativePath() Renamed

Reference Commits:

* [ar 2.0] Add identifier API to ArResolver
* [ar 2.0] Remove deprecated relative/search path API from ArResolver
* [ar 2.0] Remove Ar 1.0 implementation
* [ar 2.0] Remove Ar 1.0 support from sdf

C++/Python Find Regex:

(?<=\W)AnchorRelativePath(?=\W)

C++ Example Before:

const std::string anchor = “omniverse://some/asset.usd”;
const std::string assetPath = “./geom.usd”;
// Ar 1.0
const std::string identifier = ArGetResolver().AnchorRelativePath(anchor, assetPath);

C++ Example After (AR2 only):

const std::string anchor = “omniverse://some/asset.usd”;
const std::string assetPath = “./geom.usd”;
// Ar 2.0 - The ArResolvedPath is required for the anchor to indicate to the ArResolver
// plugin implementing _CreateIdentifier that the anchor has already been resolved
const ArResolvedPath resolvedAnchor(anchor);
// Ar 2.0 - Note how the anchor and asset path order are switched
const std::string identifier = ArGetResolver().CreateIdentifier(assetPath, resolvedAnchor);

C++ Example After (branched):

const std::string anchor = “omniverse://some/asset.usd”;
const std::string assetPath = “./geom.usd”;
#if defined(AR_VERSION) && AR_VERSION > 1
// Ar 2.0 - The ArResolvedPath is required for the anchor to indicate to the ArResolver
// plugin implementing _CreateIdentifier that the anchor has already been resolved
const ArResolvedPath resolvedAnchor(anchor);
// Ar 2.0 - Note how the anchor and asset path order are switched
const std::string identifier = ArGetResolver().CreateIdentifier(assetPath, resolvedAnchor);
#else
// Ar 1.0
const std::string identifier = ArGetResolver().AnchorRelativePath(anchor, assetPath);
#endif

Python Example Before:

from pxr import Ar
anchor = “omniverse://some/asset.usd”
assetPath = “./geom.usd”
# Ar 1.0
identifier = Ar.GetResolver().AnchorRelativePath(anchor, assetPath)

Python Example After (AR2 only):

from pxr import Ar
anchor = “omniverse://some/asset.usd”
assetPath = “./geom.usd”
# Ar 2.0 - The Ar.ResolvedPath is required for the anchor to indicate to the ArResolver
# plugin implementing _CreateIdentifier that the anchor has already been resolved
resolvedAnchor = Ar.ResolvedPath(anchor)
# Ar 2.0 - Note how the anchor and asset path order are switched
identifier = Ar.GetResolver().CreateIdentifier(assetPath, resolvedAnchor)

Python Example After (branched):

from pxr import Ar
anchor = “omniverse://some/asset.usd”
assetPath = “./geom.usd”
resolver = Ar.GetResolver()
if hasattr(resolver, “CreateIdentifier”):
    # Ar 2.0 - The Ar.ResolvedPath is required for the anchor to indicate to the ArResolver
    # plugin implementing _CreateIdentifier that the anchor has already been resolved
    resolvedAnchor = Ar.ResolvedPath(anchor)
    # Ar 2.0 - Note how the anchor and asset path order are switched
    identifier = resolver.CreateIdentifier(assetPath, resolvedAnchor)
else:
    # Ar 1.0
    identifier = resolver.AnchorRelativePath(anchor, assetPath)

C++ Error Strings (Linux):

* ‘class pxrInternal_v0_22__pxrReserved__::ArResolver’ has no member named ‘AnchorRelativePath’

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::ArResolver” has no member “AnchorRelativePath”
* C2039        ‘AnchorRelativePath’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::ArResolver’

Python Error Strings:

* AttributeError: ‘Resolver’ object has no attribute ‘AnchorRelativePath’

ComputeNormalizedPath() Removed

For a detailed explanation, see: Breaking Change: ComputeNormalizedPath() Removed

Reference Commits:

* [ar 2.0] Remove ArResolver::ComputeNormalizedPath
* [ar 2.0] Remove Ar 1.0 implementation
* [ar 2.0] Remove Ar 1.0 support from sdf
* [ar 2.0] Remove Ar 1.0 support from usdUtils

C++ Find Regex:

(?<=\W)ComputeNormalizedPath(?=\W)
NOTE: ComputeNormalizedPath was never wrapped in python, so no python changes are necessary

C++ Example Before:

const std::string assetPath = “./geom.usd”;
    const std::string anchor = “omniverse://some/asset.usd”;
    ArResolver& resolver = ArGetResolver();
    // Ar 1.0 - in theory, AnchorRelativePath might not return final normalized form
    const std::string normalized_id = resolver.ComputeNormalizedPath(
        resolver.AnchorRelativePath(anchor, assetPath));

C++ Example After (AR2 only):

const std::string assetPath = “./geom.usd”;
    const ArResolvedPath anchor(“omniverse://some/asset.usd”);
    ArResolver& resolver = ArGetResolver();
    // Ar 2.0 - CreateIdentifier should always return final normalized form
    const std::string normalized_id = resolver.CreateIdentifier(assetPath, anchor);

C++ Example After (branched):

const std::string assetPath = “./geom.usd”;
    ArResolver& resolver = ArGetResolver();
#if defined(AR_VERSION) && AR_VERSION > 1
    // Ar 2.0 - CreateIdentifier should always return final normalized form
    const ArResolvedPath anchor(“omniverse://some/asset.usd”);
    const std::string normalized_id = resolver.CreateIdentifier(assetPath, anchor);
#else
    // Ar 1.0 - in theory, AnchorRelativePath might not return final normalized form
    const std::string anchor = “omniverse://some/asset.usd”;
    const std::string normalized_id = resolver.ComputeNormalizedPath(
        resolver.AnchorRelativePath(anchor, assetPath));
#endif

C++ Error Strings (Linux):

* ‘class pxrInternal_v0_22__pxrReserved__::ArResolver’ has no member named ‘ComputeNormalizedPath’

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::ArResolver” has no member “ComputeNormalizedPath”
* C2039        ‘ComputeNormalizedPath’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::ArResolver’

ComputeRepositoryPath() Removed

For a detailed explanation, see: Breaking Change: ComputeRepositoryPath() Removed

Reference Commits:

* [ar 2.0] Remove ArResolver::ComputeNormalizedPath
* [ar 2.0] Remove Ar 1.0 implementation
* [ar 2.0] Remove Ar 1.0 support from sdf
* [ar 2.0] Remove Ar 1.0 support from usdUtils

C++ Find Regex:

(?<=\W)ComputeNormalizedPath(?=\W)
NOTE: ComputeNormalizedPath was never wrapped in python, so no python changes are necessary

C++ Example Before:

const std::string assetPath = “./geom.usd”;
    const std::string anchor = “omniverse://some/asset.usd”;
    ArResolver& resolver = ArGetResolver();
    // Ar 1.0 - in theory, AnchorRelativePath might not return final normalized form
    const std::string normalized_id = resolver.ComputeNormalizedPath(
        resolver.AnchorRelativePath(anchor, assetPath));

C++ Example After (AR2 only):

const std::string assetPath = “./geom.usd”;
    const ArResolvedPath anchor(“omniverse://some/asset.usd”);
    ArResolver& resolver = ArGetResolver();
    // Ar 2.0 - CreateIdentifier should always return final normalized form
    const std::string normalized_id = resolver.CreateIdentifier(assetPath, anchor);

C++ Example After (branched):

const std::string assetPath = “./geom.usd”;
    ArResolver& resolver = ArGetResolver();
#if defined(AR_VERSION) && AR_VERSION > 1
    // Ar 2.0 - CreateIdentifier should always return final normalized form
    const ArResolvedPath anchor(“omniverse://some/asset.usd”);
    const std::string normalized_id = resolver.CreateIdentifier(assetPath, anchor);
#else
    // Ar 1.0 - in theory, AnchorRelativePath might not return final normalized form
    const std::string anchor = “omniverse://some/asset.usd”;
    const std::string normalized_id = resolver.ComputeNormalizedPath(
        resolver.AnchorRelativePath(anchor, assetPath));
#endif

C++ Error Strings (Linux):

* ‘class pxrInternal_v0_22__pxrReserved__::ArResolver’ has no member named ‘ComputeNormalizedPath’

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::ArResolver” has no member “ComputeNormalizedPath”
* C2039        ‘ComputeNormalizedPath’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::ArResolver’

ComputeLocalPath() Removed

For a detailed explanation, see: Breaking Change: ComputeLocalPath() Removed

Reference Commits:

* [ar 2.0] Introduce ArResolver::ResolveForNewAsset
* [ar 2.0] Remove Ar 1.0 implementation
* [ar 2.0] Remove Ar 1.0 support from sdf

C++ Find Regex:

(?<=\W)ComputeLocalPath(?=\W)
NOTE: ComputeRepositoryPath was never wrapped in python, so no python changes are necessary

C++ Example Before:

const std::string assetPath = “omniverse://some/new/asset.usd”;
    const std::string resolvedPath = ArGetResolver().ComputeLocalPath(assetPath);

C++ Example After (AR2 only):

const std::string assetPath = “omniverse://some/new/asset.usd”;
    ArResolver& resolver = ArGetResolver();
    // Not completely necessary but makes sure the assetPath is absolute + normalized
    const std::string identifier = resolver.CreateIdentifierForNewAsset(assetPath);
    const ArResolvedPath resolvedPath = resolver.ResolveForNewAsset(identifier);

C++ Example After (branched):

const std::string assetPath = “omniverse://some/new/asset.usd”;
#if defined(AR_VERSION) && AR_VERSION > 1
    ArResolver& resolver = ArGetResolver();
    // Not completely necessary but makes sure the assetPath is absolute + normalized
    const std::string identifier = resolver.CreateIdentifierForNewAsset(assetPath);
    const ArResolvedPath resolvedPath = resolver.ResolveForNewAsset(identifier);
#else
    const std::string resolvedPath = ArGetResolver().ComputeLocalPath(assetPath);
#endif

C++ Error Strings (Linux):

* ‘class pxrInternal_v0_22__pxrReserved__::ArResolver’ has no member named ‘ComputeLocalPath’

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::ArResolver” has no member “ComputeLocalPath”
* C2039        ‘ComputeLocalPath’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::ArResolver’

Resolve() Signature Changed

For a detailed explanation, see: Breaking Change: Resolve() Signature Changed

Also see: GetResolvedPath return type changed

Reference Commits:

* [ar 2.0] Update Resolve API on ArResolver
* [ar 2.0] Add identifier API to ArResolver
* [ar 2.0] Remove Ar 1.0 implementation
* [ar 2.0] Remove Ar 1.0 support from sdf
* [ar 2.0] Remove Ar 1.0 support from pcp

C++/Python Find Regex:

(?<=\W)Resolve\(

C++ Example Before:

const std::string assetPath = “omniverse://some/new/asset.usd”;
ArResolver& resolver = ArGetResolver();
const std::string resolvedPath = resolver.Resolve(assetPath);
auto myAsset = resolver.OpenAsset(resolvedPath);

C++ Example After (AR2 only):

const std::string assetPath = “omniverse://some/new/asset.usd”;
ArResolver& resolver = ArGetResolver();
const ArResolvedPath resolvedPath = resolver.Resolve(assetPath);
auto myAsset = resolver.OpenAsset(resolvedPath);

C++ Example After (all versions):

const std::string assetPath = “omniverse://some/new/asset.usd”;
ArResolver& resolver = ArGetResolver();
auto resolvedPath = resolver.Resolve(assetPath);
auto myAsset = resolver.OpenAsset(resolvedPath);

Python Example Before:

NOTE: in most contexts, you will feed the resolves of Resolve() to a function that now expects an Ar.ResolvedPath object, such as ArResolver.CreateIdentifier, so NO CHANGES are needed
However, if you formerly attempted to use the resolved path as a string, changes will be required:
from pxr import Ar
assetPath = “omniverse://some/new/asset.usd”
resolvedPath = Ar.GetResolver().Resolve(assetPath)
resolvedPath.split(“/”)

Python Example After (all versions):

from pxr import Ar
assetPath = “omniverse://some/new/asset.usd”
resolvedPath = str(Ar.GetResolver().Resolve(assetPath))
resolvedPath.split(“/”)

C++ Error Strings (Linux):

* cannot convert ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} to ‘const pxrInternal_v0_22__pxrReserved__::ArResolvedPath&’

C++ Error Strings (Windows):

* E0312        no suitable user-defined conversion from “const std::string” to “const pxrInternal_v0_22__pxrReserved__::ArResolvedPath” exists
* C2664        ‘std::shared_ptr<pxrInternal_v0_22__pxrReserved__::ArAsset> pxrInternal_v0_22__pxrReserved__::ArResolver::OpenAsset(const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &) const’: cannot convert argument 1 from ‘const std::string’ to ‘const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &’
* C2664        ‘pxrInternal_v0_22__pxrReserved__::ArTimestamp pxrInternal_v0_22__pxrReserved__::ArResolver::GetModificationTimestamp(const std::string &,const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &) const’: cannot convert argument 2 from ‘const std::string’ to ‘const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &’
* C2664        ‘std::shared_ptr<pxrInternal_v0_22__pxrReserved__::ArFilesystemAsset> pxrInternal_v0_22__pxrReserved__::ArFilesystemAsset::Open(const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &)’: cannot convert argument 1 from ‘const std::string’ to ‘const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &’
* C2664        ‘pxrInternal_v0_22__pxrReserved__::ArTimestamp pxrInternal_v0_22__pxrReserved__::ArFilesystemAsset::GetModificationTimestamp(const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &)’: cannot convert argument 1 from ‘const std::string’ to ‘const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &’
* C2664        ‘std::shared_ptr<pxrInternal_v0_22__pxrReserved__::ArFilesystemWritableAsset> pxrInternal_v0_22__pxrReserved__::ArFilesystemWritableAsset::Create(const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &,pxrInternal_v0_22__pxrReserved__::ArResolver::WriteMode)’: cannot convert argument 1 from ‘const std::string’ to ‘const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &’
* C2664        ‘std::string pxrInternal_v0_22__pxrReserved__::ArResolver::CreateIdentifier(const std::string &,const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &) const’: cannot convert argument 2 from ‘const std::string’ to ‘const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &’
* C2664        ‘std::string pxrInternal_v0_22__pxrReserved__::ArResolver::CreateIdentifierForNewAsset(const std::string &,const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &) const’: cannot convert argument 2 from ‘const std::string’ to ‘const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &’
* C2664        ‘pxrInternal_v0_22__pxrReserved__::ArAssetInfo pxrInternal_v0_22__pxrReserved__::ArResolver::GetAssetInfo(const std::string &,const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &) const’: cannot convert argument 2 from ‘const std::string’ to ‘const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &’
* C2664        ‘std::shared_ptr<pxrInternal_v0_22__pxrReserved__::ArWritableAsset> pxrInternal_v0_22__pxrReserved__::ArResolver::OpenAssetForWrite(const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &,pxrInternal_v0_22__pxrReserved__::ArResolver::WriteMode) const’: cannot convert argument 1 from ‘const std::string’ to ‘const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::ArResolver::CanWriteAssetToPath(const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &,std::string *) const’: cannot convert argument 1 from ‘const std::string’ to ‘const pxrInternal_v0_22__pxrReserved__::ArResolvedPath &’

Python Error Strings:

* AttributeError: ‘ResolvedPath’ object has no attribute ‘capitalize’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘casefold’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘center’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘count’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘encode’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘endswith’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘expandtabs’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘find’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘format’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘format_map’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘index’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘isalnum’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘isalpha’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘isascii’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘isdecimal’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘isdigit’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘isidentifier’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘islower’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘isnumeric’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘isprintable’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘isspace’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘istitle’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘isupper’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘join’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘ljust’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘lower’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘lstrip’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘maketrans’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘partition’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘replace’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘rfind’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘rindex’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘rjust’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘rpartition’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘rsplit’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘rstrip’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘split’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘splitlines’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘startswith’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘strip’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘swapcase’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘title’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘translate’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘upper’
* AttributeError: ‘ResolvedPath’ object has no attribute ‘zfill’

ResolveWithAssetInfo() Removed

For a detailed explanation, see: Breaking Change: ResolveWithAssetInfo() Removed

Reference Commits:

* [ar 2.0] Update Resolve API on ArResolver
* [ar 2.0] (Re)introduce API for computing asset info
* [ar 2.0] Remove Ar 1.0 implementation
* [ar 2.0] Remove Ar 1.0 support from sdf

C++/Python Find Regex:

(?<=\W)ResolveWithAssetInfo(?=\W)
NOTE: ResolveWithAssetInfo was never wrapped in python, so no python changes are necessary

C++ Example Before:

const std::string assetPath = “omniverse://some/asset.usd”;
    ArResolver& resolver = ArGetResolver();
    // In Ar 1.0
    ArAssetInfo assetInfo;
    const std::string resolvedPath = ArGetResolver().ResolveWithAssetInfo(assetPath, &assetInfo);

C++ Example After (AR2 only):

const std::string assetPath = “omniverse://some/asset.usd”;
    ArResolver& resolver = ArGetResolver();
    // In Ar 2.0
    const ArResolvedPath resolvedPath = ArGetResolver().Resolve(assetPath);
    ArAssetInfo assetInfo = ArGetResolver().GetAssetInfo(assetPath, resolvedPath);

C++ Example After (branched):

const std::string assetPath = “omniverse://some/asset.usd”;
    ArResolver& resolver = ArGetResolver();
#if defined(AR_VERSION) && AR_VERSION > 1
    // In Ar 2.0
    const ArResolvedPath resolvedPath = ArGetResolver().Resolve(assetPath);
    ArAssetInfo assetInfo = ArGetResolver().GetAssetInfo(assetPath, resolvedPath);
#else
    // In Ar 1.0
    ArAssetInfo assetInfo;
    const std::string resolvedPath = ArGetResolver().ResolveWithAssetInfo(assetPath, &assetInfo);
#endif

C++ Error Strings (Linux):

* ‘class pxrInternal_v0_22__pxrReserved__::ArResolver’ has no member named ‘ResolveWithAssetInfo’

C++ Error Strings (Windows):

* C2039        ‘ResolveWithAssetInfo’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::ArResolver’
* E0135        class “pxrInternal_v0_22__pxrReserved__::ArResolver” has no member “ResolveWithAssetInfo”

GetModificationTimestamp() Signature Changed

For a detailed explanation, see: Breaking Change: GetModificationTimestamp() Signature Changed

Reference Commits:

* [ar 2.0] Require Unix time for asset modification times
* [ar 2.0] Add ArFilesystemAsset::GetModificationTimestamp
* [ar 2.0] Make ArResolver::GetModificationTimestamp optional
* [ar 2.0] Remove Ar 1.0 implementation
* [ar 2.0] Remove Ar 1.0 support from sdf

C++ Find Regex:

(?<=\W)GetModificationTimestamp(?=\W)
NOTE: GetModificationTimestamp was never wrapped in python, so no python changes are necessary

C++ Example Before:

const std::string assetPath = “omniverse://some/asset.usd”;
ArResolver& resolver = ArGetResolver();
auto resolvedPath = resolver.Resolve(assetPath);
// In Ar 1.0
VtValue timestamp = resolver.GetModificationTimestamp(assetPath, resolvedPath);

C++ Example After (AR2 only):

const std::string assetPath = “omniverse://some/asset.usd”;
ArResolver& resolver = ArGetResolver();
auto resolvedPath = resolver.Resolve(assetPath);
// In Ar 2.0
ArTimestamp timestamp = resolver.GetModificationTimestamp(assetPath, resolvedPath);

C++ Example After (all versions):

const std::string assetPath = “omniverse://some/asset.usd”;
ArResolver& resolver = ArGetResolver();
auto resolvedPath = resolver.Resolve(assetPath);
// Ar 1.0 or 2.0
auto timestamp = resolver.GetModificationTimestamp(assetPath, resolvedPath);

C++ Error Strings (Linux):

* conversion from ‘pxrInternal_v0_22__pxrReserved__::ArTimestamp’ to non-scalar type ‘pxrInternal_v0_22__pxrReserved__::VtValue’ requested

C++ Error Strings (Windows):

* C2440        ‘initializing’: cannot convert from ‘pxrInternal_v0_22__pxrReserved__::ArTimestamp’ to ‘pxrInternal_v0_22__pxrReserved__::VtValue’
* E0312        no suitable user-defined conversion from “pxrInternal_v0_22__pxrReserved__::ArTimestamp” to “pxrInternal_v0_22__pxrReserved__::VtValue” exists

OpenAsset() and ArAsset Signature Changes

For a detailed explanation, see: Breaking Change: OpenAsset() / ArAsset Signature Changes

Reference Commits:

* [ar 2.0] Conform ArResolver::OpenAsset for Ar 2.0
* [ar 2.0] General cleanup

C++ Find Regex:

(?<=\W)OpenAsset(?=\W)
NOTE: const signature change not relevant to python

C++ Example Before:

class MyResolver
    : public ArResolver
{

    AR_API
    virtual std::shared_ptr<ArAsset> OpenAsset(
        const std::string& resolvedPath) override;

C++ Example After (AR2 only):

class MyResolver
    : public ArResolver
{

    AR_API
    std::shared_ptr<ArAsset> _OpenAsset(
        const ArResolvedPath& resolvedPath) const override;

C++ Error Strings (Linux):

* cannot declare variable ‘resolver’ to be of abstract type ‘RESOLVER_SUBCLASS’
* invalid cast to abstract class type ‘RESOLVER_SUBCLASS’
* ‘virtual std::shared_ptr<pxrInternal_v0_22__pxrReserved__::ArAsset> RESOLVER_SUBCLASS::OpenAsset(const pxrInternal_v0_22__pxrReserved__::ArResolvedPath&) const’ marked ‘override’, but does not override
* ‘virtual std::shared_ptr<pxrInternal_v0_22__pxrReserved__::ArAsset> RESOLVER_SUBCLASS::OpenAsset(const string&)’ marked ‘override’, but does not override
* ‘virtual std::shared_ptr<pxrInternal_v0_22__pxrReserved__::ArAsset> RESOLVER_SUBCLASS::_OpenAsset(const pxrInternal_v0_22__pxrReserved__::ArResolvedPath&)’ marked ‘override’, but does not override
* ‘virtual std::shared_ptr<pxrInternal_v0_22__pxrReserved__::ArAsset> RESOLVER_SUBCLASS::_OpenAsset(const string&) const’ marked ‘override’, but does not override
* ‘std::shared_ptr<pxrInternal_v0_22__pxrReserved__::ArAsset> RESOLVER_SUBCLASS::OpenAsset(const pxrInternal_v0_22__pxrReserved__::ArResolvedPath&) const’ marked ‘override’, but does not override
* ‘std::shared_ptr<pxrInternal_v0_22__pxrReserved__::ArAsset> RESOLVER_SUBCLASS::OpenAsset(const string&)’ marked ‘override’, but does not override
* ‘std::shared_ptr<pxrInternal_v0_22__pxrReserved__::ArAsset> RESOLVER_SUBCLASS::_OpenAsset(const pxrInternal_v0_22__pxrReserved__::ArResolvedPath&)’ marked ‘override’, but does not override
* ‘std::shared_ptr<pxrInternal_v0_22__pxrReserved__::ArAsset> RESOLVER_SUBCLASS::_OpenAsset(const string&) const’ marked ‘override’, but does not override

C++ Error Strings (Windows):

* E0322        object of abstract class type “RESOLVER_SUBCLASS” is not allowed:
* E0389        a cast to abstract class “RESOLVER_SUBCLASS” is not allowed:
* E1455        member function declared with ‘override’ does not override a base class member
* C2259        ‘RESOLVER_SUBCLASS’: cannot instantiate abstract class
* C3668        ‘RESOLVER_SUBCLASS::_OpenAsset’: method with override specifier ‘override’ did not override any base class methods
* C3668        ‘RESOLVER_SUBCLASS::OpenAsset’: method with override specifier ‘override’ did not override any base class methods

Sdf

Sdf.ChangeBlock

Sdf.ChangeBlock(fastUpdates) to Sdf.ChangeBlock()

OMNIVERSE ONLY

‘fastUpdates’ is an early OV-only prototype and has long been deprecated, and has been removed from the API in nv-usd 22.05, to avoid conflicting with the “enabled” parameter added by Pixar in USD v22.03

Reference Commits:

* sdf: Rework SdfChangeBlock so that we can avoid tls lookup & atomic ops when closing change blocks that are not the innermost
* OM-48922 First pass at forward-compatible changes for upgrade to nv-usd 22.05b

Python Find Regex:

(?<=\W)Sdf.ChangeBlock\([^\)]+\)

Python Replace Regex:

Sdf.ChangeBlock()

C++ Example Before:

SdfChangeBlock changeBlock(true /* fastUpdates /);
// OR
SdfChangeBlock changeBlock(false /
fastUpdates */);

C++ Example After (all versions):

SdfChangeBlock changeBlock;

Python Example Before:

from pxr import Sdf
fastUpdates = True
with Sdf.ChangeBlock(fastUpdates):
    doStuff()

Python Example After (all versions):

from pxr import Sdf
with Sdf.ChangeBlock():
    doStuff()

C++ Error Strings (Linux):

no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::SdfChangeBlock::SdfChangeBlock(bool)’

C++ Error Strings (Windows):

* E0289        no instance of constructor “pxrInternal_v0_22__pxrReserved__::SdfChangeBlock::SdfChangeBlock” matches the argument list
* C2664        ‘pxrInternal_v0_22__pxrReserved__::SdfChangeBlock::SdfChangeBlock(const pxrInternal_v0_22__pxrReserved__::SdfChangeBlock &)’: cannot convert argument 1 from ‘bool’ to ‘const pxrInternal_v0_22__pxrReserved__::SdfChangeBlock &’
* warning C4930: ‘pxrInternal_v0_22__pxrReserved__::SdfChangeBlock changeBlock(void)’: prototyped function not called (was a variable definition intended?)

Python Error Strings:

WARNING
In general, if you do:
Sdf.ChangeBlock(fastUpdates)
…then NO errors will be raised, as it will interpret this as
Sdf.ChangeBlock(enabled=fastUpdates)
…which will not error, but not behave as expected!
It will error if you do, ie:
Sdf.ChangeBlock(fastUpdates=True)
Traceback (most recent call last):
  File “<stdin>”, line 1, in <module>
Boost.Python.ArgumentError: Python argument types in
    ChangeBlock.__init__(ChangeBlock)
did not match C++ signature:
    __init__(struct _object * __ptr64, bool enabled=True)

Sdf Layer

GetResolvedPath return type changed

Also see: Resolve() Signature Changed

TODO

Usd

Usd.CollectionAPI

Reference Commits:

* UsdCollectionAPI is no longer generated using ‘isPrivateApply = true’
* Converting all uses of UsdCollectionAPI::ApplyCollection to use UsdCollectionAPI::Apply instead
* Remove Deprecated UsdCollectionAPI::ApplyCollection API
* Integrate with pxr usd v21.11 (c7306cb4) · Commits · omniverse / usd-rels / kit · GitLab (nvidia.com)

Python Find Regex:

(?<=\W)Usd.CollectionAPI.ApplyCollection(?=\W)

Python Replace Regex:

Usd.CollectionAPI.Apply

Python Example Before:

from pxr import Usd
stage = Usd.Stage.CreateInMemory()
prim = stage.DefinePrim(“/myPrim”, “Transform”)
coll = Usd.CollectionAPI.ApplyCollection(prim, “MyCollection”)

Python Example After (20.11+ only):

from pxr import Usd
stage = Usd.Stage.CreateInMemory()
prim = stage.DefinePrim(“/myPrim”, “Transform”)
coll = Usd.CollectionAPI.Apply(prim, “MyCollection”)

Python Example After (branched):

from pxr import Usd
stage = Usd.Stage.CreateInMemory()
prim = stage.DefinePrim(“/myPrim”, “Transform”)
if hasattr(Usd.CollectionAPI, “Apply”):  # >= 20.11
   coll = Usd.CollectionAPI.Apply(prim, “MyCollection”)
else:
   coll = Usd.CollectionAPI.ApplyCollection(prim, “MyCollection”)

C++ Error Strings (Linux):

‘ApplyCollection’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdCollectionAPI’

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdCollectionAPI” has no member “ApplyCollection”
* C2039        ‘ApplyCollection’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdCollectionAPI’
* C3861        ‘ApplyCollection’: identifier not found

Python Error Strings:

AttributeError: type object ‘CollectionAPI’ has no attribute ‘ApplyCollection’. Did you mean: ‘BlockCollection’?

ApplyCollection to Apply

Usd Prim

“Master” to “Prototype”

IsMasterPath to IsPrototypePath

IsPathInMaster to IsPathInPrototype

IsMaster to IsPrototype

IsInMaster to IsInPrototype

GetMaster to GetPrototype

GetPrimInMaster to GetPrimInPrototype

Reference Commits:

* Deprecate “master” API in favor of new “prototype” API on UsdPrim
* Remove deprecated USD instancing “master” API

Python/C++ Find Regex:

(?<=\W)(?:(IsPathIn|Is|IsIn|Get|GetPrimIn)Master|(Is)Master(Path))(?=\W)

Python/C++ Replace Regex:

$1$2Prototype$3

C++ Example Before:

if (UsdPrim::IsMasterPath(SdfPath(“/myPath”))) { TF_WARN(”…”);}
if (UsdPrim::IsPathInMaster(SdfPath(“/myPath”))) { TF_WARN(”…”);}
if (prim.IsMaster()) { TF_WARN(”…”);}
if (prim.IsInMaster()) { TF_WARN(”…”);}
if (prim.GetMaster()) { TF_WARN(”…”);}
if (prim.GetPrimInMaster()) { TF_WARN(”…”);}

C++ Example After (22.11+ only):

if (UsdPrim::IsPrototypePath(SdfPath(“/myPath”))) { TF_WARN(”…”);}
if (UsdPrim::IsPathInPrototype(SdfPath(“/myPath”))) { TF_WARN(”…”);}
if (prim.IsPrototype()) { TF_WARN(”…”);}
if (prim.IsInPrototype()) { TF_WARN(”…”);}
if (prim.GetPrototype()) { TF_WARN(”…”);}
if (prim.GetPrimInPrototype()) { TF_WARN(”…”);}

C++ Example After (branched):

#if PXR_VERSION >= 2011
if (UsdPrim::IsPrototypePath(SdfPath(“/myPath”))) { TF_WARN(”…”);}
if (UsdPrim::IsPathInPrototype(SdfPath(“/myPath”))) { TF_WARN(”…”);}
if (prim.IsPrototype()) { TF_WARN(”…”);}
if (prim.IsInPrototype()) { TF_WARN(”…”);}
if (prim.GetPrototype()) { TF_WARN(”…”);}
if (prim.GetPrimInPrototype()) { TF_WARN(”…”);}
#else
if (UsdPrim::IsMasterPath(SdfPath(“/myPath”))) { TF_WARN(”…”);}
if (UsdPrim::IsPathInMaster(SdfPath(“/myPath”))) { TF_WARN(”…”);}
if (prim.IsMaster()) { TF_WARN(”…”);}
if (prim.IsInMaster()) { TF_WARN(”…”);}
if (prim.GetMaster()) { TF_WARN(”…”);}
if (prim.GetPrimInMaster()) { TF_WARN(”…”);}
#endif

Python Example Before:

from pxr import Usd
stage = Usd.Stage.CreateInMemory()
prim = stage.DefinePrim(“/myPrim”, “Transform”)
if Usd.Prim.IsMasterPath(“/myPrim”):
    print(“is master path”)
if Usd.Prim.IsPathInMaster(“/myPrim”):
    print(“path is in master”)
if prim.IsMaster():
    print(“is master”)
if prim.IsInMaster():
    print(“is in master”)
master = prim.GetMaster()
primInMaster = prim.GetPrimInMaster()

Python Example After (20.11+ only):

from pxr import Usd
stage = Usd.Stage.CreateInMemory()
prim = stage.DefinePrim(“/myPrim”, “Transform”)
if Usd.Prim.IsPrototypePath(“/myPrim”):
    print(“is prototype path”)
if Usd.Prim.IsPathInPrototype(“/myPrim”):
    print(“path is in prototype”)if prim.IsPrototype():
    print(“is prototype”)
if prim.IsInPrototype():
    print(“is in prototype”)
prototype = prim.GetPrototype()
primInPrototype = prim.GetPrimInPrototype()

Python Example After (branched):

from pxr import Usd
stage = Usd.Stage.CreateInMemory()
prim = stage.DefinePrim(“/myPrim”, “Transform”)
if hasattr(Usd.Prim, “IsPrototypePath”):  # >= 20.11
    if Usd.Prim.IsPrototypePath(“/myPrim”):
        print(“is prototype path”)
    if Usd.Prim.IsPathInPrototype(“/myPrim”):
        print(“path is in prototype”)if prim.IsPrototype():
        print(“is prototype”)
    if prim.IsInPrototype():
        print(“is in prototype”)
    prototype = prim.GetPrototype()
    primInPrototype = prim.GetPrimInPrototype()
else:
    if Usd.Prim.IsPrototypePath(“/myPrim”):
    print(“is prototype path”)
if Usd.Prim.IsPathInPrototype(“/myPrim”):
    print(“path is in prototype”)if prim.IsPrototype():
    print(“is prototype”)
if prim.IsInPrototype():
    print(“is in prototype”)
    prototype = prim.GetPrototype()
    primInPrototype = prim.GetPrimInPrototype()

C++ Error Strings (Linux):

* ‘IsMasterPath’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdPrim’
* ‘IsPathInMaster’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdPrim’
* ‘const class pxrInternal_v0_22__pxrReserved__::UsdPrim’ has no member named ‘IsMaster’; did you mean ‘IsModel’\?
* ‘const class pxrInternal_v0_22__pxrReserved__::UsdPrim’ has no member named ‘IsInMaster’; did you mean ‘IsInstance’\?
* ‘const class pxrInternal_v0_22__pxrReserved__::UsdPrim’ has no member named ‘GetMaster’; did you mean ‘GetName’\?
* ‘const class pxrInternal_v0_22__pxrReserved__::UsdPrim’ has no member named ‘GetPrimInMaster’; did you mean ‘GetPrimIndex’\?

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdPrim” has no member “IsMasterPath”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdPrim” has no member “IsPathInMaster”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdPrim” has no member “IsMaster”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdPrim” has no member “IsInMaster”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdPrim” has no member “GetMaster”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdPrim” has no member “GetPrimInMaster”
* C2039        ‘IsMasterPath’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdPrim’
* C3861        ‘IsMasterPath’: identifier not found
* C2039        ‘IsPathInMaster’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdPrim’
* C3861        ‘IsPathInMaster’: identifier not found
* C2039        ‘IsMaster’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdPrim’
* C2039        ‘IsInMaster’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdPrim’
* C2039        ‘GetMaster’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdPrim’
* C2039        ‘GetPrimInMaster’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdPrim’

Python Error Strings:

* AttributeError: type object ‘Prim’ has no attribute ‘IsMasterPath’
* AttributeError: type object ‘Prim’ has no attribute ‘IsPathInMaster’
* AttributeError: ‘Prim’ object has no attribute ‘IsMaster’
* AttributeError: ‘Prim’ object has no attribute ‘IsInMaster’
* AttributeError: ‘Prim’ object has no attribute ‘GetMaster’
* AttributeError: ‘Prim’ object has no attribute ‘GetPrimInMaster’

GetAppliedSchemas: Now filters out non-existent schemas

To get the list of apiSchema tokens that are authored on the prim (whether they exists or not), use GetPrimTypeInfo().GetAppliedAPISchemas()

Reference Commits:

* Refactoring some of the functionality in UsdPrimDefinition for how we build prim definitions…  There’s also one minor functional change in that API schema names that can’t be mapped to a valid prim definition are no longer included in the composed API schema list of a UsdPrimDefinition that is built with them
* GetAppliedSchemas no longer will return old schemas

Python/C++ Find Regex:

.GetAppliedAPISchemas\(\)

Python/C++ Replace Regex:

.GetPrimTypeInfo().GetAppliedAPISchemas()
WARNING
You will likely not want to indiscriminately replace all occurrences of GetAppliedSchemas() with GetPrimTypeInfo().GetAppliedAPISchemas()
Instead, you must decide on a case-by-case basis whether the intent was to:
* get all “successfully applied schemas” - including “auto apply schemas”:
* GetAppliedSchemas()
* ie, do not change
* This will likely be most use cases
* get all authored “potentially applied schemas” - including possibly non-existent ones
* GetPrimTypeInfo().GetAppliedAPISchemas()
* ie, replace
* This is useful in situations where you want to, ie, update outdated assets

C++ Example Before:

auto appliedSchemas = usdPrim.GetAppliedSchemas();

C++ Example After:

auto appliedSchemas = usdPrim.GetPrimTypeInfo().GetAppliedAPISchemas();

Python Example Before:

# In v21.08, this will print
# [‘ShadowAPI’, ‘NoExistAPI’]
# In v21.11, this will print
# [‘ShadowAPI’]
from pxr import Usd, UsdLux
stage = Usd.Stage.CreateInMemory()
prim = stage.DefinePrim(“/World”, “Cube”)
prim.ApplyAPI(UsdLux.ShadowAPI)
prim.AddAppliedSchema(“NoExistAPI”)
print(prim.GetAppliedSchemas())

Python Example After (all versions):

# In both v21.08 + v21.11, this will print
# [‘ShadowAPI’, ‘NoExistAPI’]
from pxr import Usd, UsdLux
stage = Usd.Stage.CreateInMemory()
prim = stage.DefinePrim(“/World”, “Cube”)
prim.ApplyAPI(UsdLux.ShadowAPI)
prim.AddAppliedSchema(“NoExistAPI”)
print(prim.GetPrimTypeInfo().GetAppliedAPISchemas())

Usd SchemaRegistry

SchemaType to SchemaKind

For a detailed explanation, see: Breaking Change: Schema Kind

Reference Commits:

* UsdSchemaRegistry can now query about schema kind from the schemaKind plugInfo metadata that is generated by usdGenSchema for schema types. This is directly exposed through the new GetSchemaKind functions added to UsdSchemaRegistry.
* Intermediary release work for the transition to schemaKind nomenclature from schemaType.
* Removing the deprecated GetSchemaType and static schemaType from UsdSchemaBase.
* Updating usdGenSchema to no longer generate the deprecated schemaType
* Removing the backward compatibility in UsdSchemaRegistry for schemas that have not been regenerated to include schemaKind in their pluginInfo metadata.

C++/Python Find Regex:

SchemaType

C++/Python Replace Regex:

SchemaKind

Python Example Before:

from pxr import Usd, UsdGeom
myStage = Usd.Stage.CreateInMemory()
myPrim = myStage.DefinePrim(“/myPrim”, “Xform”)
myXform = UsdGeom.Xform(myPrim)
myUsdModel = Usd.ModelAPI(myPrim)
myUsdGeomModel = UsdGeom.ModelAPI(myPrim)
myCollection = Usd.CollectionAPI(myPrim, “MyCollection”)
assert myXform.GetSchemaType() == Usd.SchemaType.ConcreteTyped
assert myXform.GetSchemaType() != Usd.SchemaType.AbstractBase
assert myXform.GetSchemaType() != Usd.SchemaType.AbstractTyped
assert myUsdModel.GetSchemaType() == Usd.SchemaType.NonAppliedAPI
assert myUsdGeomModel.GetSchemaType() == Usd.SchemaType.SingleApplyAPI
assert myCollection.GetSchemaType() == Usd.SchemaType.MultipleApplyAPI

Python Example After (21.02+ only):

from pxr import Usd, UsdGeom
myStage = Usd.Stage.CreateInMemory()
myPrim = myStage.DefinePrim(“/myPrim”, “Xform”)
myXform = UsdGeom.Xform(myPrim)
myUsdModel = Usd.ModelAPI(myPrim)
myUsdGeomModel = UsdGeom.ModelAPI(myPrim)
myCollection = Usd.CollectionAPI(myPrim, “MyCollection”)
assert myXform.GetSchemaKind() == Usd.SchemaKind.ConcreteTyped
assert myXform.GetSchemaKind() != Usd.SchemaKind.AbstractBase
assert myXform.GetSchemaKind() != Usd.SchemaKind.AbstractTyped
assert myUsdModel.GetSchemaKind() == Usd.SchemaKind.NonAppliedAPI
assert myUsdGeomModel.GetSchemaKind() == Usd.SchemaKind.SingleApplyAPI
assert myCollection.GetSchemaKind() == Usd.SchemaKind.MultipleApplyAPI

Python Example After (branched):

from pxr import Usd, UsdGeom
myStage = Usd.Stage.CreateInMemory()
myPrim = myStage.DefinePrim(“/myPrim”, “Xform”)
myXform = UsdGeom.Xform(myPrim)
myUsdModel = Usd.ModelAPI(myPrim)
myUsdGeomModel = UsdGeom.ModelAPI(myPrim)
myCollection = Usd.CollectionAPI(myPrim, “MyCollection”)
if hasattr(Usd.SchemaBase, “GetSchemaKind”):  # 21.02+
    assert myXform.GetSchemaKind() == Usd.SchemaKind.ConcreteTyped
    assert myXform.GetSchemaKind() != Usd.SchemaKind.AbstractBase
    assert myXform.GetSchemaKind() != Usd.SchemaKind.AbstractTyped
    assert myUsdModel.GetSchemaKind() == Usd.SchemaKind.NonAppliedAPI
    assert myUsdGeomModel.GetSchemaKind() == Usd.SchemaKind.SingleApplyAPI
    assert myCollection.GetSchemaKind() == Usd.SchemaKind.MultipleApplyAPI
else:
    assert myXform.GetSchemaType() == Usd.SchemaType.ConcreteTyped
    assert myXform.GetSchemaType() != Usd.SchemaType.AbstractBase
    assert myXform.GetSchemaType() != Usd.SchemaType.AbstractTyped
    assert myUsdModel.GetSchemaType() == Usd.SchemaType.NonAppliedAPI
    assert myUsdGeomModel.GetSchemaType() == Usd.SchemaType.SingleApplyAPI
    assert myCollection.GetSchemaType() == Usd.SchemaType.MultipleApplyAPI

C++ Error Strings (Linux):

* ‘UsdSchemaType’ has not been declared
* ‘class pxrInternal_v0_22__pxrReserved__::UsdClipsAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdCollectionAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomBasisCurves’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomBoundable’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomCamera’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomCapsule’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomCone’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomCube’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomCurves’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomCylinder’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomGprim’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomHermiteCurves’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomImageable’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomMesh’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomModelAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomMotionAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomNurbsCurves’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomNurbsPatch’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomPointBased’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomPointInstancer’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomPoints’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomPrimvarsAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomScope’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomSphere’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomSubset’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomXformCommonAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomXformable’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdGeomXform’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxLightFilter’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxListAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxShadowAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxShapingAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdMediaSpatialAudio’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdModelAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdRenderProduct’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdRenderSettingsBase’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdRenderSettings’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdRenderVar’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdSchemaBase’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdShadeCoordSysAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdShadeMaterialBindingAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdShadeShader’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdSkelAnimation’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdSkelBindingAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdSkelBlendShape’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdSkelPackedJointAnimation’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdSkelRoot’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdSkelSkeleton’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdTyped’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdUIBackdrop’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdUINodeGraphNodeAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdUISceneGraphPrimAPI’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdVolField3DAsset’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdVolFieldAsset’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdVolFieldBase’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdVolOpenVDBAsset’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘class pxrInternal_v0_22__pxrReserved__::UsdVolVolume’ has no member named ‘GetSchemaType’; did you mean ‘_GetSchemaType’?
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdAPISchemaBase’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdClipsAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdCollectionAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomBasisCurves’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomBoundable’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCamera’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCapsule’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCone’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCube’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCurves’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCylinder’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomGprim’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomHermiteCurves’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomImageable’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomMesh’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomModelAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomMotionAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomNurbsCurves’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomNurbsPatch’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomPointBased’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomPointInstancer’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomPoints’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomPrimvarsAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomScope’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomSphere’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomSubset’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomXformCommonAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomXformable’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomXform’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxLightFilter’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxListAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxShadowAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxShapingAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdMediaSpatialAudio’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdModelAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdRenderProduct’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdRenderSettingsBase’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdRenderSettings’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdRenderVar’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSchemaBase’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeCoordSysAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterialBindingAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeShader’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelAnimation’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelBindingAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelBlendShape’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelPackedJointAnimation’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelRoot’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelSkeleton’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdTyped’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdUIBackdrop’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdUINodeGraphNodeAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdUISceneGraphPrimAPI’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolField3DAsset’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolFieldAsset’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolFieldBase’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolOpenVDBAsset’
* ‘schemaType’ is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolVolume’

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdAPISchemaBase” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdClipsAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdClipsAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdCollectionAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdCollectionAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomBasisCurves” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomBasisCurves” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomBoundable” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomBoundable” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomCamera” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomCamera” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomCapsule” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomCapsule” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomCone” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomCone” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomCube” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomCube” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomCurves” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomCurves” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomCylinder” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomCylinder” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomGprim” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomGprim” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomHermiteCurves” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomHermiteCurves” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomImageable” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomImageable” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomMesh” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomMesh” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomModelAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomModelAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomMotionAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomMotionAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomNurbsCurves” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomNurbsCurves” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomNurbsPatch” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomNurbsPatch” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomPointBased” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomPointBased” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomPointInstancer” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomPointInstancer” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomPoints” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomPoints” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomPrimvarsAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomPrimvarsAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomScope” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomScope” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomSphere” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomSphere” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomSubset” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomSubset” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomXform” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomXform” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomXformable” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomXformable” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomXformCommonAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdGeomXformCommonAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxLightFilter” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxLightFilter” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxListAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxListAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxShadowAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxShadowAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxShapingAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxShapingAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdMediaSpatialAudio” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdMediaSpatialAudio” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdModelAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdModelAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdRenderProduct” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdRenderProduct” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdRenderSettings” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdRenderSettings” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdRenderSettingsBase” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdRenderSettingsBase” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdRenderVar” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdRenderVar” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSchemaBase” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSchemaBase” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeCoordSysAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeCoordSysAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeMaterialBindingAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeMaterialBindingAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeShader” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeShader” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSkelAnimation” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSkelAnimation” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSkelBindingAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSkelBindingAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSkelBlendShape” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSkelBlendShape” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSkelPackedJointAnimation” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSkelPackedJointAnimation” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSkelRoot” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSkelRoot” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSkelSkeleton” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdSkelSkeleton” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdTyped” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdTyped” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdUIBackdrop” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdUIBackdrop” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdUINodeGraphNodeAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdUINodeGraphNodeAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdUISceneGraphPrimAPI” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdUISceneGraphPrimAPI” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdVolField3DAsset” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdVolField3DAsset” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdVolFieldAsset” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdVolFieldAsset” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdVolFieldBase” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdVolFieldBase” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdVolOpenVDBAsset” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdVolOpenVDBAsset” has no member “schemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdVolVolume” has no member “GetSchemaType”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdVolVolume” has no member “schemaType”
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdClipsAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdCollectionAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomBasisCurves’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomBoundable’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCamera’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCapsule’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCone’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCube’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCurves’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCylinder’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomGprim’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomHermiteCurves’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomImageable’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomMesh’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomModelAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomMotionAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomNurbsCurves’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomNurbsPatch’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomPointBased’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomPointInstancer’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomPoints’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomPrimvarsAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomScope’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomSphere’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomSubset’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomXform’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomXformable’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomXformCommonAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxLightFilter’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxListAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxShadowAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxShapingAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdMediaSpatialAudio’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdModelAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdRenderProduct’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdRenderSettings’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdRenderSettingsBase’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdRenderVar’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSchemaBase’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeCoordSysAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterialBindingAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeShader’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelAnimation’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelBindingAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelBlendShape’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelPackedJointAnimation’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelRoot’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelSkeleton’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdTyped’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdUIBackdrop’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdUINodeGraphNodeAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdUISceneGraphPrimAPI’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolField3DAsset’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolFieldAsset’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolFieldBase’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolOpenVDBAsset’
* C2039        ‘GetSchemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolVolume’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdAPISchemaBase’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdClipsAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdCollectionAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomBasisCurves’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomBoundable’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCamera’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCapsule’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCone’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCube’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCurves’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomCylinder’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomGprim’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomHermiteCurves’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomImageable’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomMesh’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomModelAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomMotionAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomNurbsCurves’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomNurbsPatch’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomPointBased’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomPointInstancer’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomPoints’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomPrimvarsAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomScope’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomSphere’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomSubset’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomXform’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomXformable’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomXformCommonAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxLightFilter’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxListAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxShadowAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxShapingAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdMediaSpatialAudio’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdModelAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdRenderProduct’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdRenderSettings’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdRenderSettingsBase’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdRenderVar’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSchemaBase’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeCoordSysAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterialBindingAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeShader’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelAnimation’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelBindingAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelBlendShape’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelPackedJointAnimation’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelRoot’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdSkelSkeleton’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdTyped’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdUIBackdrop’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdUINodeGraphNodeAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdUISceneGraphPrimAPI’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolField3DAsset’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolFieldAsset’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolFieldBase’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolOpenVDBAsset’
* C2039        ‘schemaType’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdVolVolume’
* C2065        ‘AbstractBase’: undeclared identifier
* C2065        ‘AbstractTyped’: undeclared identifier
* C2065        ‘ConcreteTyped’: undeclared identifier
* C2065        ‘MultipleApplyAPI’: undeclared identifier
* C2065        ‘NonAppliedAPI’: undeclared identifier
* C2065        ‘schemaType’: undeclared identifier
* C2065        ‘SingleApplyAPI’: undeclared identifier
* C2653        ‘UsdSchemaType’: is not a class or namespace name

Python Error Strings:

* AttributeError: ‘Animation’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Backdrop’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘BasisCurves’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘BindingAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘BlendShape’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Boundable’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Camera’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Capsule’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘ClipsAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘CollectionAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Cone’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘ConnectableAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘CoordSysAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Cube’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Curves’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Cylinder’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘CylinderLight’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘DiskLight’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘DistantLight’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘DomeLight’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Field3DAsset’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘FieldAsset’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘FieldBase’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘GeometryLight’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Gprim’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘HermiteCurves’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Imageable’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘LightFilter’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘ListAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Material’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘MaterialBindingAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘MdlAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Mesh’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘ModelAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘MotionAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘NodeGraph’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘NodeGraphNodeAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘NurbsCurves’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘NurbsPatch’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘OpenVDBAsset’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘PackedJointAnimation’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘PointBased’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘PointInstancer’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Points’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘PrimvarsAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Product’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘RectLight’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Root’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘SceneGraphPrimAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘SchemaBase’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Scope’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Settings’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘SettingsBase’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Shader’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘ShadowAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘ShapingAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Skeleton’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘SpatialAudio’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Sphere’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘SphereLight’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Subset’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Typed’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Var’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Volume’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Xform’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘XformCommonAPI’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: ‘Xformable’ object has no attribute ‘GetSchemaType’. Did you mean: ‘GetSchemaKind’?
* AttributeError: module ‘pxr.Usd’ has no attribute ‘SchemaType’. Did you mean: ‘SchemaBase’?

Property Names of MultipleApply Schemas now namespaced in schema spec

ie, the schema spec for CollectionAPI’s “includes” relationship was formerly just includes
Now, it includes a template for the instance name, and is:

collection:__INSTANCE_NAME__:includes

Use Usd.SchemaRegistry.GetMultipleApplyNameTemplateBaseName(propertySpec.name) to return just the “includes” portion, as before.

Functions for dealing with the new templated names can be found in [UsdSchemaRegistry]:

Reference Commits:

* Changing how we specify properties in multiple apply API schemas to make the namespacing more explicit.

Python Example Before:

from pxr import Usd
myStage = Usd.Stage.CreateInMemory()
myPrim = myStage.DefinePrim(“/myPrim”, “Transform”)myCollection = Usd.CollectionAPI.ApplyCollection(myPrim, “MyCollection”)
primDef = myPrim.GetPrimDefinition()
propertySpec = primDef.GetSchemaPropertySpec(“collection:MyCollection:expansionRule”)
baseSpecName = propertySpec.name
assert baseSpecName == “expansionRule”

Python Example After (22.03+ only):

from pxr import Usd
myStage = Usd.Stage.CreateInMemory()
myPrim = myStage.DefinePrim(“/myPrim”, “Transform”)myCollection = Usd.CollectionAPI.Apply(myPrim, “MyCollection”)
primDef = myPrim.GetPrimDefinition()
propertySpec = primDef.GetSchemaPropertySpec(“collection:MyCollection:expansionRule”)
assert propertySpec.name == “collection:__INSTANCE_NAME__:expansionRule”
baseSpecName = Usd.SchemaRegistry.GetMultipleApplyNameTemplateBaseName(propertySpec.name)
assert baseSpecName == “expansionRule”

Python Example After (branching):

from pxr import Usd
myStage = Usd.Stage.CreateInMemory()
myPrim = myStage.DefinePrim(“/myPrim”, “Transform”)
if hasattr(Usd.CollectionAPI, “Apply”):
    myCollection = Usd.CollectionAPI.Apply(myPrim, “MyCollection”)
else:
    myCollection = Usd.CollectionAPI.ApplyCollection(myPrim, “MyCollection”)
primDef = myPrim.GetPrimDefinition()
propertySpec = primDef.GetSchemaPropertySpec(“collection:MyCollection:expansionRule”)
if hasattr(Usd.SchemaRegistry, “GetMultipleApplyNameTemplateBaseName”):  # 22.03+
    assert propertySpec.name == “collection:__INSTANCE_NAME__:expansionRule”
    baseSpecName = Usd.SchemaRegistry.GetMultipleApplyNameTemplateBaseName(propertySpec.name)
else:
    baseSpecName = propertySpec.name
assert baseSpecName == “expansionRule”

Usd.Stage

GetMasters to GetPrototypes

Reference Commits:

* Deprecate “master” API in favor of new “prototype” API on UsdStage
* Remove deprecated USD instancing “master” API

C++/Python Find Regex:

(?<=\W)GetMasters(?=\W)

C++/Python Replace Regex:

GetPrototypes

C++ Example Before:

for (auto const& master : myStage->GetMasters())

C++ Example After (20.11+ only):

for (auto const& prototype : myStage->GetPrototypes())

C++ Example After (branched):

#if PXR_VERSION >= 2011
for (auto const& prototype : myStage->GetPrototypes())
#else
for (auto const& master : myStage->GetMasters())
#endif

C++ Error Strings (Linux):

* ‘class pxrInternal_v0_22__pxrReserved__::UsdStage’ has no member named ‘GetMasters’
* ‘pxrInternal_v0_22__pxrReserved__::TfWeakPtrFacade<pxrInternal_v0_22__pxrReserved__::TfWeakPtr, pxrInternal_v0_22__pxrReserved__::UsdStage>::DataType {aka class pxrInternal_v0_22__pxrReserved__::UsdStage}’ has no member named ‘GetMasters’

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdStage” has no member “GetMasters”
* C2039        ‘GetMasters’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdStage’

Python Error Strings:

AttributeError: ‘Stage’ object has no attribute ‘GetMasters’

UsdGeom

UsdGeom.Imageable

  • UsdGeomImageable has removed convenience APIs for accessing primvars

  • Primvars for derived types of UsdGeomImageage, such as UsdGeomMesh, must be accessed through the UsdGeomPrimvarsAPI

Reference Commits:

* Deleting deprecated primvar methods from UsdGeomImageable

C++ Example Before:

PXR_NS::UsdStageRefPtr stage = PXR_NS::UsdStage::Open(boxUrl);
PXR_NS::UsdPrim prim = stage->GetPrimAtPath(PXR_NS::SdfPath(“/Cube”));
PXR_NS::UsdGeomMesh mesh(prim);
PXR_NS::TfToken name(“pv”);
mesh.HasPrimvar(name);
mesh.GetPrimvar(name);
mesh.CreatePrimvar(name, PXR_NS::SdfValueTypeNames->Float);

C++ Example After:

PXR_NS::UsdStageRefPtr stage = PXR_NS::UsdStage::Open(boxUrl);
PXR_NS::UsdPrim prim = stage->GetPrimAtPath(PXR_NS::SdfPath(“/Cube”));
PXR_NS::UsdGeomPrimvarsAPI primvarsAPI(prim);
primvarsAPI.HasPrimvar(name);
primvarsAPI.GetPrimvar(name);
primvarsAPI.CreatePrimvar(name, PXR_NS::SdfValueTypeNames->Float);

C++ Error Strings (Windows):

* error C2039: ‘HasPrimvar’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomGprim’
* error C2039: ‘GetPrimvar’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomGprim’
* error C2039: ‘CreatePrimvar’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomGprim’

C++ Error Strings (Linux):

* ‘HasPrimvar’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomGprim’
* ‘GetPrimvar’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomGprim’
* ‘CreatePrimvar’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdGeomGprim’

UsdGeom Subset

  • Material bindings authored on GeomSubsets are honored by renderers only if their familyName is UsdShadeTokens->materialBind. This allows robust interchange of subset bindings between multiple DCC apps. See more at [OM-32124].

  • Assets can be repaired via the Asset Validator extension, see [UsdMaterialBindingApi].

Reference Commits:

* Update UsdShadeMaterialBinding::ComputeBoundMaterial

UsdLux

All properties now prefixed with "inputs:"

… including shaping and shadow attributes

Assets can be repaired via the Asset Validator extension, see [UsdLuxSchemaChecker]

Property Name Changes, By Schema:

  • Light:

    • intensity to inputs:intensity

    • exposure to inputs:exposure

    • diffuse to inputs:diffuse

    • specular to inputs:specular

    • normalize to inputs:normalize

    • color to inputs:color

    • enableColorTemperature to inputs:enableColorTemperature

    • colorTemperature to inputs:colorTemperature

  • DistantLight:

    • angle to inputs:angle

  • DiskLight:

    • radius to inputs:radius

  • RectLight:

    • width to inputs:width

    • height to inputs:height

    • texture:file to inputs:texture:file

  • SphereLight:

    • radius to inputs:radius

  • CylinderLight:

    • length to inputs:length

    • radius to inputs:radius

  • DomeLight:

    • texture:file to inputs:texture:file

    • texture:format to inputs:texture:format

  • ShapingAPI:

    • shaping:focus to inputs:shaping:focus

    • shaping:focusTint to inputs:shaping:focusTint

    • shaping:cone:angle to inputs:shaping:cone:angle

    • shaping:cone:softness to inputs:shaping:cone:softness

    • shaping:ies:file to inputs:shaping:ies:file

    • shaping:ies:angleScale to inputs:shaping:ies:angleScale

    • shaping:ies:normalize to inputs:shaping:ies:normalize

  • ShadowAPI:

    • shadow:enable to inputs:shadow:enable

    • shadow:color to inputs:shadow:color

    • shadow:distance to inputs:shadow:distance

    • shadow:falloff to inputs:shadow:falloff

    • shadow:falloffGamma to inputs:shadow:falloffGamma

UsdLuxTokens name changes:

  • angle to inputsAngle

  • color to inputsColor

  • colorTemperature to inputsColorTemperature

  • diffuse to inputsDiffuse

  • enableColorTemperature to inputsEnableColorTemperature

  • exposure to inputsExposure

  • height to inputsHeight

  • intensity to inputsIntensity

  • length to inputsLength

  • normalize to inputsNormalize

  • radius to inputsRadius

  • shadowColor to inputsShadowColor

  • shadowDistance to inputsShadowDistance

  • shadowEnable to inputsShadowEnable

  • shadowFalloff to inputsShadowFalloff

  • shadowFalloffGamma to inputsShadowFalloffGamma

  • shapingConeAngle to inputsShapingConeAngle

  • shapingConeSoftness to inputsShapingConeSoftness

  • shapingFocus to inputsShapingFocus

  • shapingFocusTint to inputsShapingFocusTint

  • shapingIesAngleScale to inputsShapingIesAngleScale

  • shapingIesFile to inputsShapingIesFile

  • shapingIesNormalize to inputsShapingIesNormalize

  • specular to inputsSpecular

  • textureFile to inputsTextureFile

  • textureFormat to inputsTextureFormat

  • width to inputsWidth

Reference Commits:

* Updated the schema in usdLux to have all attributes of Light and its inherited types use the “inputs:” prefix (with the exception of treatAsLine and treatAsPoint)
* Shadow and Shaping APIs are now connectable. All attributes on these APIs have been given the “inputs:” prefix

C++/Python Find Regex:

(?<=UsdLux.Tokens.|UsdLuxTokens->)(angle|color|colorTemperature|diffuse|enableColorTemperature|exposure|height|intensity|length|normalize|radius|shadowColor|shadowDistance|shadowEnable|shadowFalloff|shadowFalloffGamma|shapingConeAngle|shapingConeSoftness|shapingFocus|shapingFocusTint|shapingIesAngleScale|shapingIesFile|shapingIesNormalize|specular|textureFile|textureFormat|width)(?=\W)

Python Example Before:

print(UsdLux.Tokens.angle)
print(UsdLux.Tokens.color)
print(UsdLux.Tokens.colorTemperature)
print(UsdLux.Tokens.diffuse)
print(UsdLux.Tokens.enableColorTemperature)
print(UsdLux.Tokens.exposure)
print(UsdLux.Tokens.height)
print(UsdLux.Tokens.intensity)
print(UsdLux.Tokens.length)
print(UsdLux.Tokens.normalize)
print(UsdLux.Tokens.radius)
print(UsdLux.Tokens.shadowColor)
print(UsdLux.Tokens.shadowDistance)
print(UsdLux.Tokens.shadowEnable)
print(UsdLux.Tokens.shadowFalloff)
print(UsdLux.Tokens.shadowFalloffGamma)
print(UsdLux.Tokens.shapingConeAngle)
print(UsdLux.Tokens.shapingConeSoftness)
print(UsdLux.Tokens.shapingFocus)
print(UsdLux.Tokens.shapingFocusTint)
print(UsdLux.Tokens.shapingIesAngleScale)
print(UsdLux.Tokens.shapingIesFile)
print(UsdLux.Tokens.shapingIesNormalize)
print(UsdLux.Tokens.specular)
print(UsdLux.Tokens.textureFile)
print(UsdLux.Tokens.textureFormat)
print(UsdLux.Tokens.width)

Python Example After (21.02+ only):

from pxr import UsdLux
print(UsdLux.Tokens.inputsAngle)
print(UsdLux.Tokens.inputsColor)
print(UsdLux.Tokens.inputsColorTemperature)
print(UsdLux.Tokens.inputsDiffuse)
print(UsdLux.Tokens.inputsEnableColorTemperature)
print(UsdLux.Tokens.inputsExposure)
print(UsdLux.Tokens.inputsHeight)
print(UsdLux.Tokens.inputsIntensity)
print(UsdLux.Tokens.inputsLength)
print(UsdLux.Tokens.inputsNormalize)
print(UsdLux.Tokens.inputsRadius)
print(UsdLux.Tokens.inputsShadowColor)
print(UsdLux.Tokens.inputsShadowDistance)
print(UsdLux.Tokens.inputsShadowEnable)
print(UsdLux.Tokens.inputsShadowFalloff)
print(UsdLux.Tokens.inputsShadowFalloffGamma)
print(UsdLux.Tokens.inputsShapingConeAngle)
print(UsdLux.Tokens.inputsShapingConeSoftness)
print(UsdLux.Tokens.inputsShapingFocus)
print(UsdLux.Tokens.inputsShapingFocusTint)
print(UsdLux.Tokens.inputsShapingIesAngleScale)
print(UsdLux.Tokens.inputsShapingIesFile)
print(UsdLux.Tokens.inputsShapingIesNormalize)
print(UsdLux.Tokens.inputsSpecular)
print(UsdLux.Tokens.inputsTextureFile)
print(UsdLux.Tokens.inputsTextureFormat)
print(UsdLux.Tokens.inputsWidth)

Python Example After (branched):

from pxr import UsdLux
if hasattr(UsdLux.Tokens, “inputsAngle”):  # >= 21.02
    print(UsdLux.Tokens.inputsAngle)
    print(UsdLux.Tokens.inputsColor)
    print(UsdLux.Tokens.inputsColorTemperature)
    print(UsdLux.Tokens.inputsDiffuse)
    print(UsdLux.Tokens.inputsEnableColorTemperature)
    print(UsdLux.Tokens.inputsExposure)
    print(UsdLux.Tokens.inputsHeight)
    print(UsdLux.Tokens.inputsIntensity)
    print(UsdLux.Tokens.inputsLength)
    print(UsdLux.Tokens.inputsNormalize)
    print(UsdLux.Tokens.inputsRadius)
    print(UsdLux.Tokens.inputsShadowColor)
    print(UsdLux.Tokens.inputsShadowDistance)
    print(UsdLux.Tokens.inputsShadowEnable)
    print(UsdLux.Tokens.inputsShadowFalloff)
    print(UsdLux.Tokens.inputsShadowFalloffGamma)
    print(UsdLux.Tokens.inputsShapingConeAngle)
    print(UsdLux.Tokens.inputsShapingConeSoftness)
    print(UsdLux.Tokens.inputsShapingFocus)
    print(UsdLux.Tokens.inputsShapingFocusTint)
    print(UsdLux.Tokens.inputsShapingIesAngleScale)
    print(UsdLux.Tokens.inputsShapingIesFile)
    print(UsdLux.Tokens.inputsShapingIesNormalize)
    print(UsdLux.Tokens.inputsSpecular)
    print(UsdLux.Tokens.inputsTextureFile)
    print(UsdLux.Tokens.inputsTextureFormat)
    print(UsdLux.Tokens.inputsWidth)
else:
    print(UsdLux.Tokens.angle)
    print(UsdLux.Tokens.color)
    print(UsdLux.Tokens.colorTemperature)
    print(UsdLux.Tokens.diffuse)
    print(UsdLux.Tokens.enableColorTemperature)
    print(UsdLux.Tokens.exposure)
    print(UsdLux.Tokens.height)
    print(UsdLux.Tokens.intensity)
    print(UsdLux.Tokens.length)
    print(UsdLux.Tokens.normalize)
    print(UsdLux.Tokens.radius)
    print(UsdLux.Tokens.shadowColor)
    print(UsdLux.Tokens.shadowDistance)
    print(UsdLux.Tokens.shadowEnable)
    print(UsdLux.Tokens.shadowFalloff)
    print(UsdLux.Tokens.shadowFalloffGamma)
    print(UsdLux.Tokens.shapingConeAngle)
    print(UsdLux.Tokens.shapingConeSoftness)
    print(UsdLux.Tokens.shapingFocus)
    print(UsdLux.Tokens.shapingFocusTint)
    print(UsdLux.Tokens.shapingIesAngleScale)
    print(UsdLux.Tokens.shapingIesFile)
    print(UsdLux.Tokens.shapingIesNormalize)
    print(UsdLux.Tokens.specular)
    print(UsdLux.Tokens.textureFile)
    print(UsdLux.Tokens.textureFormat)
    print(UsdLux.Tokens.width)

C++ Error Strings (Linux):

* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘angle’; did you mean ‘angular’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘color’
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘colorTemperature’; did you mean ‘inputsColorTemperature’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘diffuse’
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘enableColorTemperature’; did you mean ‘inputsColorTemperature’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘exposure’
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘height’
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘intensity’
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘length’
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘normalize’
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘radius’
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘shadowColor’
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘shadowDistance’; did you mean ‘inputsShadowDistance’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘shadowEnable’; did you mean ‘inputsShadowEnable’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘shadowFalloff’; did you mean ‘inputsShadowFalloff’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘shadowFalloffGamma’; did you mean ‘inputsShadowFalloffGamma’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘shapingConeAngle’; did you mean ‘inputsShapingConeAngle’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘shapingConeSoftness’; did you mean ‘inputsShapingConeSoftness’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘shapingFocus’; did you mean ‘inputsShapingFocus’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘shapingFocusTint’; did you mean ‘inputsShapingFocusTint’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘shapingIesAngleScale’; did you mean ‘inputsShapingIesAngleScale’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘shapingIesFile’; did you mean ‘inputsShapingIesFile’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘shapingIesNormalize’; did you mean ‘inputsShapingIesNormalize’\?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘specular’
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘textureFile’; did you mean ‘inputsTextureFile’?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘textureFormat’; did you mean ‘inputsTextureFormat’?
* ‘struct pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’ has no member named ‘width’

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “angle”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “color”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “colorTemperature”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “diffuse”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “enableColorTemperature”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “exposure”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “height”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “intensity”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “length”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “normalize”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “radius”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “shadowColor”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “shadowDistance”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “shadowEnable”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “shadowFalloff”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “shadowFalloffGamma”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “shapingConeAngle”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “shapingConeSoftness”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “shapingFocus”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “shapingFocusTint”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “shapingIesAngleScale”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “shapingIesFile”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “shapingIesNormalize”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “specular”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “textureFile”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “textureFormat”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType” has no member “width”
* C2039        ‘angle’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘color’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘colorTemperature’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘diffuse’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘enableColorTemperature’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘exposure’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘height’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘intensity’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘length’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘normalize’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘radius’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘shadowColor’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘shadowDistance’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘shadowEnable’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘shadowFalloff’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘shadowFalloffGamma’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘shapingConeAngle’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘shapingConeSoftness’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘shapingFocus’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘shapingFocusTint’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘shapingIesAngleScale’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘shapingIesFile’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘shapingIesNormalize’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘specular’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘textureFile’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘textureFormat’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’
* C2039        ‘width’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxTokensType’

Python Error Strings:

* AttributeError: type object ‘Tokens’ has no attribute ‘angle’
* AttributeError: type object ‘Tokens’ has no attribute ‘color’
* AttributeError: type object ‘Tokens’ has no attribute ‘colorTemperature’
* AttributeError: type object ‘Tokens’ has no attribute ‘diffuse’
* AttributeError: type object ‘Tokens’ has no attribute ‘enableColorTemperature’
* AttributeError: type object ‘Tokens’ has no attribute ‘exposure’
* AttributeError: type object ‘Tokens’ has no attribute ‘height’
* AttributeError: type object ‘Tokens’ has no attribute ‘intensity’
* AttributeError: type object ‘Tokens’ has no attribute ‘length’
* AttributeError: type object ‘Tokens’ has no attribute ‘normalize’
* AttributeError: type object ‘Tokens’ has no attribute ‘radius’
* AttributeError: type object ‘Tokens’ has no attribute ‘shadowColor’
* AttributeError: type object ‘Tokens’ has no attribute ‘shadowDistance’
* AttributeError: type object ‘Tokens’ has no attribute ‘shadowEnable’
* AttributeError: type object ‘Tokens’ has no attribute ‘shadowFalloff’
* AttributeError: type object ‘Tokens’ has no attribute ‘shadowFalloffGamma’
* AttributeError: type object ‘Tokens’ has no attribute ‘shapingConeAngle’
* AttributeError: type object ‘Tokens’ has no attribute ‘shapingConeSoftness’
* AttributeError: type object ‘Tokens’ has no attribute ‘shapingFocus’
* AttributeError: type object ‘Tokens’ has no attribute ‘shapingFocusTint’
* AttributeError: type object ‘Tokens’ has no attribute ‘shapingIesAngleScale’
* AttributeError: type object ‘Tokens’ has no attribute ‘shapingIesFile’
* AttributeError: type object ‘Tokens’ has no attribute ‘shapingIesNormalize’
* AttributeError: type object ‘Tokens’ has no attribute ‘specular’
* AttributeError: type object ‘Tokens’ has no attribute ‘textureFile’
* AttributeError: type object ‘Tokens’ has no attribute ‘textureFormat’
* AttributeError: type object ‘Tokens’ has no attribute ‘width’

UsdLux.Light

UsdLux Light to UsdLuxLightAPI

Reference Commits:

* Creates the new single apply UsdLuxLightAPI applied API schema in preparation for migrating lights to having an applied LightAPI
* Updates in usdLux to replace references to UsdLuxLight
* Deleting UsdLuxLight and UsdLuxLightPortal

C++/Python Find Regex:

(?<=\W)Usd(?:.)LuxLight(?=\W)

C++ Example Before:

auto myStage = UsdStage::CreateInMemory();
auto sphereLight = UsdLuxSphereLight::Define(myStage, SdfPath(“/sphereLight”));
auto sphereLightPrim = sphereLight.GetPrim();
if (sphereLightPrim.IsA<PXR_NS::UsdLuxLight>()) {
    std::cout << “It’s a light!” << std::endl;
}
if (sphereLightPrim.IsA<UsdLuxLight>()) {
    std::cout << “It’s a light!” << std::endl;
}
sphereLight.GetLightLinkCollectionAPI();
sphereLight.GetShadowLinkCollectionAPI();

C++ Example After (21.11+ only):

auto myStage = UsdStage::CreateInMemory();
auto sphereLight = UsdLuxSphereLight::Define(myStage, SdfPath(“/sphereLight”));
auto sphereLightPrim = sphereLight.GetPrim();
if (sphereLightPrim.HasAPI<PXR_NS::UsdLuxLightAPI>()) {
    std::cout << “It’s a light!” << std::endl;
}
if (sphereLightPrim.HasAPI<UsdLuxLightAPI>()) {
    std::cout << “It’s a light!” << std::endl;
}
UsdLuxLightAPI(sphereLight).GetLightLinkCollectionAPI();
UsdLuxLightAPI(sphereLight).GetShadowLinkCollectionAPI();

C++ Example After (branched):

auto myStage = UsdStage::CreateInMemory();
auto sphereLight = UsdLuxSphereLight::Define(myStage, SdfPath(“/sphereLight”));
auto sphereLightPrim = sphereLight.GetPrim();
#if PXR_VERSION >= 2111
if (sphereLightPrim.HasAPI<PXR_NS::UsdLuxLightAPI>()) {
    std::cout << “It’s a light!” << std::endl;
}
if (sphereLightPrim.HasAPI<UsdLuxLightAPI>()) {
    std::cout << “It’s a light!” << std::endl;
}
UsdLuxLightAPI(sphereLight).GetLightLinkCollectionAPI();
UsdLuxLightAPI(sphereLight).GetShadowLinkCollectionAPI();
#else
if (sphereLightPrim.IsA<PXR_NS::UsdLuxLight>()) {
    std::cout << “It’s a light!” << std::endl;
}
if (sphereLightPrim.IsA<UsdLuxLight>()) {
    std::cout << “It’s a light!” << std::endl;
}
sphereLight.GetLightLinkCollectionAPI();
sphereLight.GetShadowLinkCollectionAPI();
#endif

C++ Error Strings (Linux):

* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight’ has no member named ‘GetLightLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight’ has no member named ‘GetShadowLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight’ has no member named ‘GetLightLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight’ has no member named ‘GetShadowLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight’ has no member named ‘GetLightLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight’ has no member named ‘GetShadowLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight’ has no member named ‘GetLightLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight’ has no member named ‘GetShadowLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight’ has no member named ‘GetLightLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight’ has no member named ‘GetShadowLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight’ has no member named ‘GetLightLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight’ has no member named ‘GetShadowLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight’ has no member named ‘GetLightLinkCollectionAPI’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight’ has no member named ‘GetShadowLinkCollectionAPI’
* ‘UsdLuxLight’ is not a member of ‘pxr’
* ‘UsdLuxLight’ was not declared in this scope

C++ Error Strings (Windows):

* C2039        ‘GetLightLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight’
* C2039        ‘GetLightLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight’
* C2039        ‘GetLightLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight’
* C2039        ‘GetLightLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight’
* C2039        ‘GetLightLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight’
* C2039        ‘GetLightLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight’
* C2039        ‘GetLightLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight’
* C2039        ‘GetShadowLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight’
* C2039        ‘GetShadowLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight’
* C2039        ‘GetShadowLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight’
* C2039        ‘GetShadowLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight’
* C2039        ‘GetShadowLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight’
* C2039        ‘GetShadowLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight’
* C2039        ‘GetShadowLinkCollectionAPI’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight’
* C2039        ‘UsdLuxLight’: is not a member of ‘pxr’
* C2065        ‘UsdLuxLight’: undeclared identifier
* C2065        ‘UsdLuxLight’: undeclared identifier
* C2672        ‘pxrInternal_v0_22__pxrReserved__::UsdPrim::IsA’: no matching overloaded function found
* C2672        ‘pxrInternal_v0_22__pxrReserved__::UsdPrim::IsA’: no matching overloaded function found
* C2974        ‘pxrInternal_v0_22__pxrReserved__::UsdPrim::IsA’: invalid template argument for ‘T’, type expected
* C2974        ‘pxrInternal_v0_22__pxrReserved__::UsdPrim::IsA’: invalid template argument for ‘T’, type expected
* E0020        identifier “UsdLuxLight” is undefined
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight” has no member “GetLightLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight” has no member “GetShadowLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight” has no member “GetLightLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight” has no member “GetShadowLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight” has no member “GetLightLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight” has no member “GetShadowLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight” has no member “GetLightLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight” has no member “GetShadowLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight” has no member “GetLightLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight” has no member “GetShadowLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight” has no member “GetLightLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight” has no member “GetShadowLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight” has no member “GetLightLinkCollectionAPI”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight” has no member “GetShadowLinkCollectionAPI”
* E0135        namespace “pxr” has no member “UsdLuxLight”

Python Error Strings:

* AttributeError: module ‘pxr.UsdLux’ has no attribute ‘Light’
* AttributeError: ‘SphereLight’ object has no attribute ‘GetLightLinkCollectionAPI’
* AttributeError: ‘SphereLight’ object has no attribute ‘GetShadowLinkCollectionAPI’
* AttributeError: ‘CylinderLight’ object has no attribute ‘GetLightLinkCollectionAPI’
* AttributeError: ‘CylinderLight’ object has no attribute ‘GetShadowLinkCollectionAPI’
* AttributeError: ‘DiskLight’ object has no attribute ‘GetLightLinkCollectionAPI’
* AttributeError: ‘DiskLight’ object has no attribute ‘GetShadowLinkCollectionAPI’
* AttributeError: ‘DistantLight’ object has no attribute ‘GetLightLinkCollectionAPI’
* AttributeError: ‘DistantLight’ object has no attribute ‘GetShadowLinkCollectionAPI’
* AttributeError: ‘DomeLight’ object has no attribute ‘GetLightLinkCollectionAPI’
* AttributeError: ‘DomeLight’ object has no attribute ‘GetShadowLinkCollectionAPI’
* AttributeError: ‘GeometryLight’ object has no attribute ‘GetLightLinkCollectionAPI’
* AttributeError: ‘GeometryLight’ object has no attribute ‘GetShadowLinkCollectionAPI’
* AttributeError: ‘RectLight’ object has no attribute ‘GetLightLinkCollectionAPI’
* AttributeError: ‘RectLight’ object has no attribute ‘GetShadowLinkCollectionAPI’

UsdLux LightPortal to UsdLux PortalLight

TODO

UsdLuxLight.ComputeBaseEmission() removed

This function existed “solely as a reference example implementation of how to interpret [UsdLuxLight’s] parameters.” It has been removed, and there is no replacement. If you were making use of it, you will have to add your own implementation - this function would duplicate the old behavior:

GfVec3f ComputeBaseEmission(const UsdLuxLightAPI& light)

{

    GfVec3f e(1.0);

    float intensity = 1.0;

    light.GetIntensityAttr().Get(&intensity);

    e *= intensity;

    float exposure = 0.0;

    light.GetExposureAttr().Get(&exposure);

    e *= exp2(exposure);

    GfVec3f color(1.0);

    light.GetColorAttr().Get(&color);

    e = GfCompMult(e, color);

    bool enableColorTemp = false;

    light.GetEnableColorTemperatureAttr().Get(&enableColorTemp);

    if (enableColorTemp) {

        float colorTemp = 6500;

        if (light.GetColorTemperatureAttr().Get(&colorTemp)) {

            e = GfCompMult(e, UsdLuxBlackbodyTemperatureAsRgb(colorTemp));

        }

    }

    return e;

}

Reference Commits:

Deleting UsdLuxLight and UsdLuxLightPortal

C++/Python Find Regex:

(?<=\W)ComputeBaseEmission(?=\W)

C++ Error Strings (Linux):

* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight’ has no member named ‘ComputeBaseEmission’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight’ has no member named ‘ComputeBaseEmission’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight’ has no member named ‘ComputeBaseEmission’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight’ has no member named ‘ComputeBaseEmission’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight’ has no member named ‘ComputeBaseEmission’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight’ has no member named ‘ComputeBaseEmission’
* ‘class pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight’ has no member named ‘ComputeBaseEmission’

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight” has no member “ComputeBaseEmission”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight” has no member “ComputeBaseEmission”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight” has no member “ComputeBaseEmission”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight” has no member “ComputeBaseEmission”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight” has no member “ComputeBaseEmission”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight” has no member “ComputeBaseEmission”
* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight” has no member “ComputeBaseEmission”
* C2039        ‘ComputeBaseEmission’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxCylinderLight’
* C2039        ‘ComputeBaseEmission’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDiskLight’
* C2039        ‘ComputeBaseEmission’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDistantLight’
* C2039        ‘ComputeBaseEmission’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxDomeLight’
* C2039        ‘ComputeBaseEmission’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxGeometryLight’
* C2039        ‘ComputeBaseEmission’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxRectLight’
* C2039        ‘ComputeBaseEmission’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdLuxSphereLight’

Python Error Strings:

* AttributeError: ‘CylinderLight’ object has no attribute ‘ComputeBaseEmission’
* AttributeError: ‘DiskLight’ object has no attribute ‘ComputeBaseEmission’
* AttributeError: ‘DistantLight’ object has no attribute ‘ComputeBaseEmission’
* AttributeError: ‘DomeLight’ object has no attribute ‘ComputeBaseEmission’
* AttributeError: ‘GeometryLight’ object has no attribute ‘ComputeBaseEmission’
* AttributeError: ‘RectLight’ object has no attribute ‘ComputeBaseEmission’
* AttributeError: ‘SphereLight’ object has no attribute ‘ComputeBaseEmission’

UsdLux.LightFilterAPI removed

UsdPhysics

UsdPhysics Schema Changes

UsdPhysics uses USD stock schema.

Reference Commits:

* UsdPhysics API

C++ Example Before:

#include <usdPhysics/tokens.h>

C++ Example After (all versions):

#include <pxr/usd/usdPhysics/tokens.h>

C++ Error Strings

* Cannot open include file: ‘usdPhyiscs/articulationRootAPI.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/collisionAPI.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/meshCollisionAPI.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/collisionGroup.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/distanceJoint.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/driveAPI.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/filteredPairsAPI.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/joint.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/limitAPI.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/massAPI.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/metrics.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/rigidBodyAPI.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/materialAPI.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/scene.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/prismaticJoint.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/revoluteJoint.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/sphericalJoint.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/fixedJoint.h’: No such file or directory
* Cannot open include file: ‘usdPhyiscs/tokens.h’: No such file or directory

UsdRender

UsdRender.SettingsAPI
UsdRender SettingsAPI removed

TODO

UsdShade

UsdShade.ConnectableAPI
Explicit ctor required for shaders and nodegraphs

See also: https://groups.google.com/g/usd-interest/c/I7gY7LpNkjw/m/Zjm7gFVUBgAJ

Reference Commits:

* UsdShade API concept separation

Python Example Before:

material.CreateSurfaceOutput().ConnectToSource(shader, “out”)

Python Example After (all versions):

material.CreateSurfaceOutput().ConnectToSource(shader.ConnectableAPI(), “out”)

C++ Error Strings (Linux):

* no known conversion for argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI&’
* no known conversion for argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI&’
* no known conversion for argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeShader’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI&’
* no known conversion for argument 2 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI&’
* no known conversion for argument 2 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI&’
* no known conversion for argument 2 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeShader’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI&’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdAttribute&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, const pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdAttribute&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, const pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdAttribute&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, const pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdAttribute&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdAttribute&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdAttribute&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdAttribute&, pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdAttribute&, pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdAttribute&, pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdAttribute&, pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdAttribute&, pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdAttribute&, pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeInput&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, const pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeInput&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeInput&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeInput&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeInput&, pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeInput&, pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeInput&, pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeInput&, pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeInput&, pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeInput&, pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeOutput&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, const pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeOutput&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeOutput&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeOutput&, pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeOutput&, pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeOutput&, pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeOutput&, pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeOutput&, pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeOutput&, pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeOutput&, pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, const pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, const pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph&, pxrInternal_v0_22__pxrReserved__::TfToken&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType, const pxrInternal_v0_22__pxrReserved__::SdfValueTypeName&)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&, pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(pxrInternal_v0_22__pxrReserved__::UsdShadeShader&, pxrInternal_v0_22__pxrReserved__::TfToken&)’

C++ Error Strings (Windows):

* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource” matches the argument list
* E0304        no instance of overloaded function “pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource” matches the argument list
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2665        ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI::ConnectToSource’: none of the 15 overloads could convert all the argument types
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectionSourceInfo &,const pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectionModification) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeShader’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectionSourceInfo &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectionSourceInfo &,const pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectionModification) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectionSourceInfo &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectionSourceInfo &,const pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectionModification) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectionSourceInfo &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &,const pxrInternal_v0_22__pxrReserved__::TfToken &,const pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType,pxrInternal_v0_22__pxrReserved__::SdfValueTypeName) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeShader’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &,const pxrInternal_v0_22__pxrReserved__::TfToken &,const pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType,pxrInternal_v0_22__pxrReserved__::SdfValueTypeName) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &,const pxrInternal_v0_22__pxrReserved__::TfToken &,const pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType,pxrInternal_v0_22__pxrReserved__::SdfValueTypeName) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &,const pxrInternal_v0_22__pxrReserved__::TfToken &,const pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType,pxrInternal_v0_22__pxrReserved__::SdfValueTypeName) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeShader’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &,const pxrInternal_v0_22__pxrReserved__::TfToken &,const pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType,pxrInternal_v0_22__pxrReserved__::SdfValueTypeName) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &,const pxrInternal_v0_22__pxrReserved__::TfToken &,const pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType,pxrInternal_v0_22__pxrReserved__::SdfValueTypeName) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectionSourceInfo &,const pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectionModification) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeShader’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectionSourceInfo &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectionSourceInfo &,const pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectionModification) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectionSourceInfo &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectionSourceInfo &,const pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectionModification) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectionSourceInfo &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &,const pxrInternal_v0_22__pxrReserved__::TfToken &,const pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType,pxrInternal_v0_22__pxrReserved__::SdfValueTypeName) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeShader’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &,const pxrInternal_v0_22__pxrReserved__::TfToken &,const pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType,pxrInternal_v0_22__pxrReserved__::SdfValueTypeName) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &,const pxrInternal_v0_22__pxrReserved__::TfToken &,const pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType,pxrInternal_v0_22__pxrReserved__::SdfValueTypeName) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &,const pxrInternal_v0_22__pxrReserved__::TfToken &,const pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType,pxrInternal_v0_22__pxrReserved__::SdfValueTypeName) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeShader’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &,const pxrInternal_v0_22__pxrReserved__::TfToken &,const pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType,pxrInternal_v0_22__pxrReserved__::SdfValueTypeName) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeMaterial’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &’
* C2664        ‘bool pxrInternal_v0_22__pxrReserved__::UsdShadeInput::ConnectToSource(const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &,const pxrInternal_v0_22__pxrReserved__::TfToken &,const pxrInternal_v0_22__pxrReserved__::UsdShadeAttributeType,pxrInternal_v0_22__pxrReserved__::SdfValueTypeName) const’: cannot convert argument 1 from ‘pxrInternal_v0_22__pxrReserved__::UsdShadeNodeGraph’ to ‘const pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI &’

Python Error Strings:

* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Attribute, Material, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Attribute, Material, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Attribute, Material, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Attribute, NodeGraph, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Attribute, NodeGraph, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Attribute, NodeGraph, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Attribute, Shader, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Attribute, Shader, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Attribute, Shader, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Input, Material, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Input, Material, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Input, Material, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Input, NodeGraph, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Input, NodeGraph, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Input, NodeGraph, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Input, Shader, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Input, Shader, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Input, Shader, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Output, Material, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Output, Material, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Output, Material, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Output, NodeGraph, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Output, NodeGraph, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Output, NodeGraph, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Output, Shader, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Output, Shader, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    ConnectableAPI.ConnectToSource(Output, Shader, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Input.ConnectToSource(Input, Material, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Input.ConnectToSource(Input, Material, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Input.ConnectToSource(Input, Material, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Input.ConnectToSource(Input, NodeGraph, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Input.ConnectToSource(Input, NodeGraph, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Input.ConnectToSource(Input, NodeGraph, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Input.ConnectToSource(Input, Shader, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Input.ConnectToSource(Input, Shader, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Input.ConnectToSource(Input, Shader, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Output.ConnectToSource(Output, Material, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Output.ConnectToSource(Output, Material, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Output.ConnectToSource(Output, Material, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Output.ConnectToSource(Output, NodeGraph, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Output.ConnectToSource(Output, NodeGraph, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Output.ConnectToSource(Output, NodeGraph, str, AttributeType, ValueTypeName)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Output.ConnectToSource(Output, Shader, str)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
    Output.ConnectToSource(Output, Shader, str, AttributeType)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
   Output.ConnectToSource(Output, Shader, str, AttributeType, ValueTypeName)
did not match C++ signature:

IsNodeGraph replaced with IsContainer

Reference Commits:

* UsdShade: Add a concept of “containers” for connectable nodes.
* Remove already-deprecated API IsShader() / IsNodeGraph().

C++/Python Find Regex:

(?<=\W)IsNodeGraph(?=\W)

C++/Python Replace Regex:

IsContainer

Python Example Before:

from pxr import Usd, UsdShade
myStage = Usd.Stage.CreateInMemory()
myPrim = myStage.DefinePrim(“/myPrim”, “Transform”)
material = UsdShade.Material.Define(myStage, “/myPrim/myMaterial”)
shader = UsdShade.Shader.Define(myStage, “/myPrim/myMaterial/myShader”)
nodeGraph = UsdShade.NodeGraph.Define(myStage, “/myPrim/myMaterial/nodeGraph”)
assert material.ConnectableAPI().IsNodeGraph()
assert not shader.ConnectableAPI().IsNodeGraph()
assert nodeGraph.ConnectableAPI().IsNodeGraph()

Python Example After (21.02+ only):

from pxr import Usd, UsdShade
myStage = Usd.Stage.CreateInMemory()
myPrim = myStage.DefinePrim(“/myPrim”, “Transform”)
material = UsdShade.Material.Define(myStage, “/myPrim/myMaterial”)
shader = UsdShade.Shader.Define(myStage, “/myPrim/myMaterial/myShader”)
nodeGraph = UsdShade.NodeGraph.Define(myStage, “/myPrim/myMaterial/nodeGraph”)
assert material.ConnectableAPI().IsContainer()
assert not shader.ConnectableAPI().IsContainer()
assert nodeGraph.ConnectableAPI().IsContainer()

Python Example After (branched):

from pxr import Usd, UsdShade
myStage = Usd.Stage.CreateInMemory()
myPrim = myStage.DefinePrim(“/myPrim”, “Transform”)
material = UsdShade.Material.Define(myStage, “/myPrim/myMaterial”)
shader = UsdShade.Shader.Define(myStage, “/myPrim/myMaterial/myShader”)
nodeGraph = UsdShade.NodeGraph.Define(myStage, “/myPrim/myMaterial/nodeGraph”)
if hasattr(UsdShade.ConnectableAPI, “IsContainer”):  # >= 21.02
    assert material.ConnectableAPI().IsContainer()
    assert not shader.ConnectableAPI().IsContainer()
    assert nodeGraph.ConnectableAPI().IsContainer()
else:
    assert material.ConnectableAPI().IsNodeGraph()
    assert not shader.ConnectableAPI().IsNodeGraph()
    assert nodeGraph.ConnectableAPI().IsNodeGraph()

C++ Error Strings (Linux):

* ‘class pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI’ has no member named ‘IsNodeGraph’

C++ Error Strings (Windows):

* E0135        class “pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI” has no member “IsNodeGraph”
* C2039        ‘IsNodeGraph’: is not a member of ‘pxrInternal_v0_22__pxrReserved__::UsdShadeConnectableAPI’

Python Error Strings:

* AttributeError: ‘ConnectableAPI’ object has no attribute ‘IsNodeGraph’

UsdShade.MaterialBindingAPI

Material bindings require UsdShadeMaterialBindingAPI to be applied

  • All code which authors material bindings should Apply() UsdShadeMaterialBindingAPI to the prim upon which the binding is to be authored

  • Current default is to post warnings at runtime, but still apply material bindings if is not applied

  • May set USD_SHADE_MATERIAL_BINDING_API_CHECK env var to change behavior:

    • allowMissingAPI

      • silence warnings and apply materials even if MaterialBindingAPI not applied

    • warnOnMissingAPI

      • current default

      • print warnings, but still apply materials even if MaterialBindingAPI not applied

    • strict

      • future default

      • only apply material bindings if MaterialBindingAPI applied

  • Assets can be repaired via the Asset Validator extension, see UsdMaterialBindingApi.

Reference Commits:

* BindingAtPrim should return early if the prim doesn’t have a MaterialBindingAPI Applied.
* Change USD_SHADE_MATERIAL_BINDING_API_CHECK to “warnOnMissingAPI”.

Runtime Warning Strings:

* Found material bindings on prim at path (%s) but MaterialBindingAPI is not applied on the prim

UsdSkel

UsdSkel Cache

Populate/ComputeSkelBinding/ComputeSkelBindings now require a predicate parameter

To maintain the same behavior, pass UsdPrimDefaultPredicate as the predicate; if you wish to allow instancing of skeletons, use UsdTraverseInstanceProxies instead

Reference Commits:

* Adding UsdImagingPrimAdapter::ShouldIgnoreNativeInstanceSubtrees(), which allows an adapter to disable instancing of itself and its descendants… Adding `predicate` flag to Populate, ComputeBinding and ComputeBindings methods of UsdSkelCache.

C++/Python Find Regex:

(?<=.|->)(Populate|ComputeSkelBindings?)\(

Python Example Before:

from pxr import Usd, UsdSkel
myStage = Usd.Stage.CreateInMemory()
myPrim = myStage.DefinePrim(“/myPrim”, “Transform”)
mySkel = myStage.DefinePrim(“/myPrim/skelRoot”, “SkelRoot”)
skelCache = UsdSkel.Cache()
mySkelRoot = UsdSkel.Root.Define(myStage, “/myPrim/skelRoot”)
mySkel = UsdSkel.Skeleton.Define(myStage, “/myPrim/skelRoot/mySkel”)
skelCache.Populate(mySkelRoot)
binding = skelCache.ComputeSkelBinding(mySkelRoot, mySkel)
bindings = skelCache.ComputeSkelBindings(mySkelRoot)

Python Example After (21.02+ only):

from pxr import Usd, UsdSkel
myStage = Usd.Stage.CreateInMemory()
myPrim = myStage.DefinePrim(“/myPrim”, “Transform”)
mySkel = myStage.DefinePrim(“/myPrim/skelRoot”, “SkelRoot”)
skelCache = UsdSkel.Cache()
mySkelRoot = UsdSkel.Root.Define(myStage, “/myPrim/skelRoot”)
mySkel = UsdSkel.Skeleton.Define(myStage, “/myPrim/skelRoot/mySkel”)
skelCache.Populate(mySkelRoot, Usd.PrimDefaultPredicate)
binding = skelCache.ComputeSkelBinding(mySkelRoot, mySkel, Usd.PrimDefaultPredicate)
bindings = skelCache.ComputeSkelBindings(mySkelRoot, Usd.PrimDefaultPredicate)

Python Example After (branched):

from pxr import Usd, UsdSkel
myStage = Usd.Stage.CreateInMemory()
myPrim = myStage.DefinePrim(“/myPrim”, “Transform”)
mySkel = myStage.DefinePrim(“/myPrim/skelRoot”, “SkelRoot”)
skelCache = UsdSkel.Cache()
mySkelRoot = UsdSkel.Root.Define(myStage, “/myPrim/skelRoot”)
mySkel = UsdSkel.Skeleton.Define(myStage, “/myPrim/skelRoot/mySkel”)
if Usd.GetVersion() >= (0,20,11):
    skelCache.Populate(mySkelRoot, Usd.PrimDefaultPredicate)
    binding = skelCache.ComputeSkelBinding(mySkelRoot, mySkel, Usd.PrimDefaultPredicate)
    bindings = skelCache.ComputeSkelBindings(mySkelRoot, Usd.PrimDefaultPredicate)
else:
    skelCache.Populate(mySkelRoot)
    binding = skelCache.ComputeSkelBinding(mySkelRoot, mySkel)
    bindings = skelCache.ComputeSkelBindings(mySkelRoot)

C++ Error Strings (Linux):

* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdSkelCache::ComputeSkelBinding(pxrInternal_v0_22__pxrReserved__::UsdSkelRoot&, pxrInternal_v0_22__pxrReserved__::UsdSkelSkeleton&, pxrInternal_v0_22__pxrReserved__::UsdSkelBinding*)’
* no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdSkelCache::ComputeSkelBindings(pxrInternal_v0_22__pxrReserved__::UsdSkelRoot&, std::vector<pxrInternal_v0_22__pxrReserved__::UsdSkelBinding>)’
no matching function for call to ‘pxrInternal_v0_22__pxrReserved__::UsdSkelCache::Populate(pxrInternal_v0_22__pxrReserved__::UsdSkelRoot&)’

C++ Error Strings (Windows):

* C2660        ‘pxrInternal_v0_22__pxrReserved__::UsdSkelCache::Populate’: function does not take 1 arguments
* C2660        ‘pxrInternal_v0_22__pxrReserved__::UsdSkelCache::ComputeSkelBinding’: function does not take 3 arguments
* C2660        ‘pxrInternal_v0_22__pxrReserved__::UsdSkelCache::ComputeSkelBindings’: function does not take 2 arguments

Python Error Strings:

* Boost.Python.ArgumentError: Python argument types in
   Cache.Populate(Cache, Root)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
   Cache.ComputeSkelBinding(Cache, Root, Skeleton)
did not match C++ signature:
* Boost.Python.ArgumentError: Python argument types in
   Cache.ComputeSkelBindings(Cache, Root)
did not match C++ signature:

Imaging

Glf

Removed glew dependency

Reference Commits:

* [Glf] Removed glf/glew

C++ Find Regex:

(?<=\W)(GLEW|Glew|glew)(?=\W|_)

C++ Example Before:

// Generally code will include one or the other of these, not both - they are
// both replaced by garch/glApi.h
#include “pxr/imaging/glf/glew.h”
#include “pxr/imaging/garch/gl.h”
PXR_NAMESPACE_USING_DIRECTIVE
void gl_functionality_example() {
    GlfGlewInit();
    if (GLEW_KHR_debug) {}
    if (GLEW_ARB_bindless_texture) {}
    if (glewIsSupported(“GL_NV_conservative_raster”)) {}
#if defined(GLEW_VERSION_4_5)
    if (GLEW_VERSION_4_5 | GLEW_ARB_direct_state_access) {}
#endif
}

C++ Example After (21.02+ only):

#include “pxr/imaging/garch/glApi.h”
PXR_NAMESPACE_USING_DIRECTIVE
void gl_functionality_example() {
    GarchGLApiLoad();
    if (GARCH_GLAPI_HAS(KHR_debug)) {}
    if (GARCH_GLAPI_HAS(ARB_bindless_texture))
    if (GARCH_GLAPI_HAS(NV_conservative_raster)) {}
#if defined(GL_VERSION_4_5)
    if (GARCH_GLAPI_HAS(VERSION_4_5) | GARCH_GLAPI_HAS(ARB_direct_state_access)) {}
#endif
}

C++ Example After (branched):

#if PXR_VERSION >= 2102
#include “pxr/imaging/garch/glApi.h”
#else
// Generally code will include one or the other of these, not both - they are
// both replaced by garch/glApi.h
#include “pxr/imaging/glf/glew.h”
#include “pxr/imaging/garch/gl.h”
#endif
PXR_NAMESPACE_USING_DIRECTIVE
void gl_functionality_example() {
#if PXR_VERSION >= 2102
    GarchGLApiLoad();
    if (GARCH_GLAPI_HAS(KHR_debug)) {}
    if (GARCH_GLAPI_HAS(ARB_bindless_texture))
    if (GARCH_GLAPI_HAS(NV_conservative_raster)) {}
#if defined(GL_VERSION_4_5)
    if (GARCH_GLAPI_HAS(VERSION_4_5) | GARCH_GLAPI_HAS(ARB_direct_state_access)) {}
#endif
#else
    GlfGlewInit();
    if (GLEW_KHR_debug) {}
    if (GLEW_ARB_bindless_texture) {}
    if (glewIsSupported(“GL_NV_conservative_raster”)) {}
#if defined(GLEW_VERSION_4_5)
    if (GLEW_VERSION_4_5 | GLEW_ARB_direct_state_access) {}
#endif
#endif
}

C++ Error Strings (Linux):

* pxr/imaging/glf/glew.h: No such file or directory
* GL/glew.h: No such file or directory
* ‘glewIsSupported’ was not declared in this scope
* ‘GlfGlewInit’ was not declared in this scope
* ‘GLEW_3DFX_multisample’ was not declared in this scope
* ‘GLEW_3DFX_tbuffer’ was not declared in this scope
* ‘GLEW_3DFX_texture_compression_FXT1’ was not declared in this scope
* ‘GLEW_AMD_blend_minmax_factor’ was not declared in this scope
* ‘GLEW_AMD_compressed_3DC_texture’ was not declared in this scope
* ‘GLEW_AMD_compressed_ATC_texture’ was not declared in this scope
* ‘GLEW_AMD_conservative_depth’ was not declared in this scope
* ‘GLEW_AMD_debug_output’ was not declared in this scope
* ‘GLEW_AMD_depth_clamp_separate’ was not declared in this scope
* ‘GLEW_AMD_draw_buffers_blend’ was not declared in this scope
* ‘GLEW_AMD_framebuffer_sample_positions’ was not declared in this scope
* ‘GLEW_AMD_gcn_shader’ was not declared in this scope
* ‘GLEW_AMD_gpu_shader_half_float’ was not declared in this scope
* ‘GLEW_AMD_gpu_shader_int16’ was not declared in this scope
* ‘GLEW_AMD_gpu_shader_int64’ was not declared in this scope
* ‘GLEW_AMD_interleaved_elements’ was not declared in this scope
* ‘GLEW_AMD_multi_draw_indirect’ was not declared in this scope
* ‘GLEW_AMD_name_gen_delete’ was not declared in this scope
* ‘GLEW_AMD_occlusion_query_event’ was not declared in this scope
* ‘GLEW_AMD_performance_monitor’ was not declared in this scope
* ‘GLEW_AMD_pinned_memory’ was not declared in this scope
* ‘GLEW_AMD_program_binary_Z400’ was not declared in this scope
* ‘GLEW_AMD_query_buffer_object’ was not declared in this scope
* ‘GLEW_AMD_sample_positions’ was not declared in this scope
* ‘GLEW_AMD_seamless_cubemap_per_texture’ was not declared in this scope
* ‘GLEW_AMD_shader_atomic_counter_ops’ was not declared in this scope
* ‘GLEW_AMD_shader_ballot’ was not declared in this scope
* ‘GLEW_AMD_shader_explicit_vertex_parameter’ was not declared in this scope
* ‘GLEW_AMD_shader_stencil_export’ was not declared in this scope
* ‘GLEW_AMD_shader_stencil_value_export’ was not declared in this scope
* ‘GLEW_AMD_shader_trinary_minmax’ was not declared in this scope
* ‘GLEW_AMD_sparse_texture’ was not declared in this scope
* ‘GLEW_AMD_stencil_operation_extended’ was not declared in this scope
* ‘GLEW_AMD_texture_gather_bias_lod’ was not declared in this scope
* ‘GLEW_AMD_texture_texture4’ was not declared in this scope
* ‘GLEW_AMD_transform_feedback3_lines_triangles’ was not declared in this scope
* ‘GLEW_AMD_transform_feedback4’ was not declared in this scope
* ‘GLEW_AMD_vertex_shader_layer’ was not declared in this scope
* ‘GLEW_AMD_vertex_shader_tessellator’ was not declared in this scope
* ‘GLEW_AMD_vertex_shader_viewport_index’ was not declared in this scope
* ‘GLEW_ANDROID_extension_pack_es31a’ was not declared in this scope
* ‘GLEW_ANGLE_depth_texture’ was not declared in this scope
* ‘GLEW_ANGLE_framebuffer_blit’ was not declared in this scope
* ‘GLEW_ANGLE_framebuffer_multisample’ was not declared in this scope
* ‘GLEW_ANGLE_instanced_arrays’ was not declared in this scope
* ‘GLEW_ANGLE_pack_reverse_row_order’ was not declared in this scope
* ‘GLEW_ANGLE_program_binary’ was not declared in this scope
* ‘GLEW_ANGLE_texture_compression_dxt1’ was not declared in this scope
* ‘GLEW_ANGLE_texture_compression_dxt3’ was not declared in this scope
* ‘GLEW_ANGLE_texture_compression_dxt5’ was not declared in this scope
* ‘GLEW_ANGLE_texture_usage’ was not declared in this scope
* ‘GLEW_ANGLE_timer_query’ was not declared in this scope
* ‘GLEW_ANGLE_translated_shader_source’ was not declared in this scope
* ‘GLEW_APPLE_aux_depth_stencil’ was not declared in this scope
* ‘GLEW_APPLE_client_storage’ was not declared in this scope
* ‘GLEW_APPLE_clip_distance’ was not declared in this scope
* ‘GLEW_APPLE_color_buffer_packed_float’ was not declared in this scope
* ‘GLEW_APPLE_copy_texture_levels’ was not declared in this scope
* ‘GLEW_APPLE_element_array’ was not declared in this scope
* ‘GLEW_APPLE_fence’ was not declared in this scope
* ‘GLEW_APPLE_float_pixels’ was not declared in this scope
* ‘GLEW_APPLE_flush_buffer_range’ was not declared in this scope
* ‘GLEW_APPLE_framebuffer_multisample’ was not declared in this scope
* ‘GLEW_APPLE_object_purgeable’ was not declared in this scope
* ‘GLEW_APPLE_pixel_buffer’ was not declared in this scope
* ‘GLEW_APPLE_rgb_422’ was not declared in this scope
* ‘GLEW_APPLE_row_bytes’ was not declared in this scope
* ‘GLEW_APPLE_specular_vector’ was not declared in this scope
* ‘GLEW_APPLE_sync’ was not declared in this scope
* ‘GLEW_APPLE_texture_2D_limited_npot’ was not declared in this scope
* ‘GLEW_APPLE_texture_format_BGRA8888’ was not declared in this scope
* ‘GLEW_APPLE_texture_max_level’ was not declared in this scope
* ‘GLEW_APPLE_texture_packed_float’ was not declared in this scope
* ‘GLEW_APPLE_texture_range’ was not declared in this scope
* ‘GLEW_APPLE_transform_hint’ was not declared in this scope
* ‘GLEW_APPLE_vertex_array_object’ was not declared in this scope
* ‘GLEW_APPLE_vertex_array_range’ was not declared in this scope
* ‘GLEW_APPLE_vertex_program_evaluators’ was not declared in this scope
* ‘GLEW_APPLE_ycbcr_422’ was not declared in this scope
* ‘GLEW_ARB_ES2_compatibility’ was not declared in this scope
* ‘GLEW_ARB_ES3_1_compatibility’ was not declared in this scope
* ‘GLEW_ARB_ES3_2_compatibility’ was not declared in this scope
* ‘GLEW_ARB_ES3_compatibility’ was not declared in this scope
* ‘GLEW_ARB_arrays_of_arrays’ was not declared in this scope
* ‘GLEW_ARB_base_instance’ was not declared in this scope
* ‘GLEW_ARB_bindless_texture’ was not declared in this scope
* ‘GLEW_ARB_blend_func_extended’ was not declared in this scope
* ‘GLEW_ARB_buffer_storage’ was not declared in this scope
* ‘GLEW_ARB_cl_event’ was not declared in this scope
* ‘GLEW_ARB_clear_buffer_object’ was not declared in this scope
* ‘GLEW_ARB_clear_texture’ was not declared in this scope
* ‘GLEW_ARB_clip_control’ was not declared in this scope
* ‘GLEW_ARB_color_buffer_float’ was not declared in this scope
* ‘GLEW_ARB_compatibility’ was not declared in this scope
* ‘GLEW_ARB_compressed_texture_pixel_storage’ was not declared in this scope
* ‘GLEW_ARB_compute_shader’ was not declared in this scope
* ‘GLEW_ARB_compute_variable_group_size’ was not declared in this scope
* ‘GLEW_ARB_conditional_render_inverted’ was not declared in this scope
* ‘GLEW_ARB_conservative_depth’ was not declared in this scope
* ‘GLEW_ARB_copy_buffer’ was not declared in this scope
* ‘GLEW_ARB_copy_image’ was not declared in this scope
* ‘GLEW_ARB_cull_distance’ was not declared in this scope
* ‘GLEW_ARB_debug_output’ was not declared in this scope
* ‘GLEW_ARB_depth_buffer_float’ was not declared in this scope
* ‘GLEW_ARB_depth_clamp’ was not declared in this scope
* ‘GLEW_ARB_depth_texture’ was not declared in this scope
* ‘GLEW_ARB_derivative_control’ was not declared in this scope
* ‘GLEW_ARB_direct_state_access’ was not declared in this scope
* ‘GLEW_ARB_draw_buffers_blend’ was not declared in this scope
* ‘GLEW_ARB_draw_buffers’ was not declared in this scope
* ‘GLEW_ARB_draw_elements_base_vertex’ was not declared in this scope
* ‘GLEW_ARB_draw_indirect’ was not declared in this scope
* ‘GLEW_ARB_draw_instanced’ was not declared in this scope
* ‘GLEW_ARB_enhanced_layouts’ was not declared in this scope
* ‘GLEW_ARB_explicit_attrib_location’ was not declared in this scope
* ‘GLEW_ARB_explicit_uniform_location’ was not declared in this scope
* ‘GLEW_ARB_fragment_coord_conventions’ was not declared in this scope
* ‘GLEW_ARB_fragment_layer_viewport’ was not declared in this scope
* ‘GLEW_ARB_fragment_program_shadow’ was not declared in this scope
* ‘GLEW_ARB_fragment_program’ was not declared in this scope
* ‘GLEW_ARB_fragment_shader_interlock’ was not declared in this scope
* ‘GLEW_ARB_fragment_shader’ was not declared in this scope
* ‘GLEW_ARB_framebuffer_no_attachments’ was not declared in this scope
* ‘GLEW_ARB_framebuffer_object’ was not declared in this scope
* ‘GLEW_ARB_framebuffer_sRGB’ was not declared in this scope
* ‘GLEW_ARB_geometry_shader4’ was not declared in this scope
* ‘GLEW_ARB_get_program_binary’ was not declared in this scope
* ‘GLEW_ARB_get_texture_sub_image’ was not declared in this scope
* ‘GLEW_ARB_gl_spirv’ was not declared in this scope
* ‘GLEW_ARB_gpu_shader5’ was not declared in this scope
* ‘GLEW_ARB_gpu_shader_fp64’ was not declared in this scope
* ‘GLEW_ARB_gpu_shader_int64’ was not declared in this scope
* ‘GLEW_ARB_half_float_pixel’ was not declared in this scope
* ‘GLEW_ARB_half_float_vertex’ was not declared in this scope
* ‘GLEW_ARB_imaging’ was not declared in this scope
* ‘GLEW_ARB_indirect_parameters’ was not declared in this scope
* ‘GLEW_ARB_instanced_arrays’ was not declared in this scope
* ‘GLEW_ARB_internalformat_query2’ was not declared in this scope
* ‘GLEW_ARB_internalformat_query’ was not declared in this scope
* ‘GLEW_ARB_invalidate_subdata’ was not declared in this scope
* ‘GLEW_ARB_map_buffer_alignment’ was not declared in this scope
* ‘GLEW_ARB_map_buffer_range’ was not declared in this scope
* ‘GLEW_ARB_matrix_palette’ was not declared in this scope
* ‘GLEW_ARB_multi_bind’ was not declared in this scope
* ‘GLEW_ARB_multi_draw_indirect’ was not declared in this scope
* ‘GLEW_ARB_multisample’ was not declared in this scope
* ‘GLEW_ARB_multitexture’ was not declared in this scope
* ‘GLEW_ARB_occlusion_query2’ was not declared in this scope
* ‘GLEW_ARB_occlusion_query’ was not declared in this scope
* ‘GLEW_ARB_parallel_shader_compile’ was not declared in this scope
* ‘GLEW_ARB_pipeline_statistics_query’ was not declared in this scope
* ‘GLEW_ARB_pixel_buffer_object’ was not declared in this scope
* ‘GLEW_ARB_point_parameters’ was not declared in this scope
* ‘GLEW_ARB_point_sprite’ was not declared in this scope
* ‘GLEW_ARB_polygon_offset_clamp’ was not declared in this scope
* ‘GLEW_ARB_post_depth_coverage’ was not declared in this scope
* ‘GLEW_ARB_program_interface_query’ was not declared in this scope
* ‘GLEW_ARB_provoking_vertex’ was not declared in this scope
* ‘GLEW_ARB_query_buffer_object’ was not declared in this scope
* ‘GLEW_ARB_robust_buffer_access_behavior’ was not declared in this scope
* ‘GLEW_ARB_robustness_application_isolation’ was not declared in this scope
* ‘GLEW_ARB_robustness_share_group_isolation’ was not declared in this scope
* ‘GLEW_ARB_robustness’ was not declared in this scope
* ‘GLEW_ARB_sample_locations’ was not declared in this scope
* ‘GLEW_ARB_sample_shading’ was not declared in this scope
* ‘GLEW_ARB_sampler_objects’ was not declared in this scope
* ‘GLEW_ARB_seamless_cube_map’ was not declared in this scope
* ‘GLEW_ARB_seamless_cubemap_per_texture’ was not declared in this scope
* ‘GLEW_ARB_separate_shader_objects’ was not declared in this scope
* ‘GLEW_ARB_shader_atomic_counter_ops’ was not declared in this scope
* ‘GLEW_ARB_shader_atomic_counters’ was not declared in this scope
* ‘GLEW_ARB_shader_ballot’ was not declared in this scope
* ‘GLEW_ARB_shader_bit_encoding’ was not declared in this scope
* ‘GLEW_ARB_shader_clock’ was not declared in this scope
* ‘GLEW_ARB_shader_draw_parameters’ was not declared in this scope
* ‘GLEW_ARB_shader_group_vote’ was not declared in this scope
* ‘GLEW_ARB_shader_image_load_store’ was not declared in this scope
* ‘GLEW_ARB_shader_image_size’ was not declared in this scope
* ‘GLEW_ARB_shader_objects’ was not declared in this scope
* ‘GLEW_ARB_shader_precision’ was not declared in this scope
* ‘GLEW_ARB_shader_stencil_export’ was not declared in this scope
* ‘GLEW_ARB_shader_storage_buffer_object’ was not declared in this scope
* ‘GLEW_ARB_shader_subroutine’ was not declared in this scope
* ‘GLEW_ARB_shader_texture_image_samples’ was not declared in this scope
* ‘GLEW_ARB_shader_texture_lod’ was not declared in this scope
* ‘GLEW_ARB_shader_viewport_layer_array’ was not declared in this scope
* ‘GLEW_ARB_shading_language_100’ was not declared in this scope
* ‘GLEW_ARB_shading_language_420pack’ was not declared in this scope
* ‘GLEW_ARB_shading_language_include’ was not declared in this scope
* ‘GLEW_ARB_shading_language_packing’ was not declared in this scope
* ‘GLEW_ARB_shadow_ambient’ was not declared in this scope
* ‘GLEW_ARB_shadow’ was not declared in this scope
* ‘GLEW_ARB_sparse_buffer’ was not declared in this scope
* ‘GLEW_ARB_sparse_texture2’ was not declared in this scope
* ‘GLEW_ARB_sparse_texture_clamp’ was not declared in this scope
* ‘GLEW_ARB_sparse_texture’ was not declared in this scope
* ‘GLEW_ARB_spirv_extensions’ was not declared in this scope
* ‘GLEW_ARB_stencil_texturing’ was not declared in this scope
* ‘GLEW_ARB_sync’ was not declared in this scope
* ‘GLEW_ARB_tessellation_shader’ was not declared in this scope
* ‘GLEW_ARB_texture_barrier’ was not declared in this scope
* ‘GLEW_ARB_texture_border_clamp’ was not declared in this scope
* ‘GLEW_ARB_texture_buffer_object_rgb32’ was not declared in this scope
* ‘GLEW_ARB_texture_buffer_object’ was not declared in this scope
* ‘GLEW_ARB_texture_buffer_range’ was not declared in this scope
* ‘GLEW_ARB_texture_compression_bptc’ was not declared in this scope
* ‘GLEW_ARB_texture_compression_rgtc’ was not declared in this scope
* ‘GLEW_ARB_texture_compression’ was not declared in this scope
* ‘GLEW_ARB_texture_cube_map_array’ was not declared in this scope
* ‘GLEW_ARB_texture_cube_map’ was not declared in this scope
* ‘GLEW_ARB_texture_env_add’ was not declared in this scope
* ‘GLEW_ARB_texture_env_combine’ was not declared in this scope
* ‘GLEW_ARB_texture_env_crossbar’ was not declared in this scope
* ‘GLEW_ARB_texture_env_dot3’ was not declared in this scope
* ‘GLEW_ARB_texture_filter_anisotropic’ was not declared in this scope
* ‘GLEW_ARB_texture_filter_minmax’ was not declared in this scope
* ‘GLEW_ARB_texture_float’ was not declared in this scope
* ‘GLEW_ARB_texture_gather’ was not declared in this scope
* ‘GLEW_ARB_texture_mirror_clamp_to_edge’ was not declared in this scope
* ‘GLEW_ARB_texture_mirrored_repeat’ was not declared in this scope
* ‘GLEW_ARB_texture_multisample’ was not declared in this scope
* ‘GLEW_ARB_texture_non_power_of_two’ was not declared in this scope
* ‘GLEW_ARB_texture_query_levels’ was not declared in this scope
* ‘GLEW_ARB_texture_query_lod’ was not declared in this scope
* ‘GLEW_ARB_texture_rectangle’ was not declared in this scope
* ‘GLEW_ARB_texture_rgb10_a2ui’ was not declared in this scope
* ‘GLEW_ARB_texture_rg’ was not declared in this scope
* ‘GLEW_ARB_texture_stencil8’ was not declared in this scope
* ‘GLEW_ARB_texture_storage_multisample’ was not declared in this scope
* ‘GLEW_ARB_texture_storage’ was not declared in this scope
* ‘GLEW_ARB_texture_swizzle’ was not declared in this scope
* ‘GLEW_ARB_texture_view’ was not declared in this scope
* ‘GLEW_ARB_timer_query’ was not declared in this scope
* ‘GLEW_ARB_transform_feedback2’ was not declared in this scope
* ‘GLEW_ARB_transform_feedback3’ was not declared in this scope
* ‘GLEW_ARB_transform_feedback_instanced’ was not declared in this scope
* ‘GLEW_ARB_transform_feedback_overflow_query’ was not declared in this scope
* ‘GLEW_ARB_transpose_matrix’ was not declared in this scope
* ‘GLEW_ARB_uniform_buffer_object’ was not declared in this scope
* ‘GLEW_ARB_vertex_array_bgra’ was not declared in this scope
* ‘GLEW_ARB_vertex_array_object’ was not declared in this scope
* ‘GLEW_ARB_vertex_attrib_64bit’ was not declared in this scope
* ‘GLEW_ARB_vertex_attrib_binding’ was not declared in this scope
* ‘GLEW_ARB_vertex_blend’ was not declared in this scope
* ‘GLEW_ARB_vertex_buffer_object’ was not declared in this scope
* ‘GLEW_ARB_vertex_program’ was not declared in this scope
* ‘GLEW_ARB_vertex_shader’ was not declared in this scope
* ‘GLEW_ARB_vertex_type_10f_11f_11f_rev’ was not declared in this scope
* ‘GLEW_ARB_vertex_type_2_10_10_10_rev’ was not declared in this scope
* ‘GLEW_ARB_viewport_array’ was not declared in this scope
* ‘GLEW_ARB_window_pos’ was not declared in this scope
* ‘GLEW_ARM_mali_program_binary’ was not declared in this scope
* ‘GLEW_ARM_mali_shader_binary’ was not declared in this scope
* ‘GLEW_ARM_rgba8’ was not declared in this scope
* ‘GLEW_ARM_shader_framebuffer_fetch_depth_stencil’ was not declared in this scope
* ‘GLEW_ARM_shader_framebuffer_fetch’ was not declared in this scope
* ‘GLEW_ATIX_point_sprites’ was not declared in this scope
* ‘GLEW_ATIX_texture_env_combine3’ was not declared in this scope
* ‘GLEW_ATIX_texture_env_route’ was not declared in this scope
* ‘GLEW_ATIX_vertex_shader_output_point_size’ was not declared in this scope
* ‘GLEW_ATI_draw_buffers’ was not declared in this scope
* ‘GLEW_ATI_element_array’ was not declared in this scope
* ‘GLEW_ATI_envmap_bumpmap’ was not declared in this scope
* ‘GLEW_ATI_fragment_shader’ was not declared in this scope
* ‘GLEW_ATI_map_object_buffer’ was not declared in this scope
* ‘GLEW_ATI_meminfo’ was not declared in this scope
* ‘GLEW_ATI_pn_triangles’ was not declared in this scope
* ‘GLEW_ATI_separate_stencil’ was not declared in this scope
* ‘GLEW_ATI_shader_texture_lod’ was not declared in this scope
* ‘GLEW_ATI_text_fragment_shader’ was not declared in this scope
* ‘GLEW_ATI_texture_compression_3dc’ was not declared in this scope
* ‘GLEW_ATI_texture_env_combine3’ was not declared in this scope
* ‘GLEW_ATI_texture_float’ was not declared in this scope
* ‘GLEW_ATI_texture_mirror_once’ was not declared in this scope
* ‘GLEW_ATI_vertex_array_object’ was not declared in this scope
* ‘GLEW_ATI_vertex_attrib_array_object’ was not declared in this scope
* ‘GLEW_ATI_vertex_streams’ was not declared in this scope
* ‘GLEW_EGL_KHR_context_flush_control’ was not declared in this scope
* ‘GLEW_EGL_NV_robustness_video_memory_purge’ was not declared in this scope
* ‘GLEW_ERROR_GLX_VERSION_11_ONLY’ was not declared in this scope
* ‘GLEW_ERROR_GL_VERSION_10_ONLY’ was not declared in this scope
* ‘GLEW_ERROR_NO_GLX_DISPLAY’ was not declared in this scope
* ‘GLEW_ERROR_NO_GL_VERSION’ was not declared in this scope
* ‘GLEW_EXT_422_pixels’ was not declared in this scope
* ‘GLEW_EXT_Cg_shader’ was not declared in this scope
* ‘GLEW_EXT_EGL_image_array’ was not declared in this scope
* ‘GLEW_EXT_YUV_target’ was not declared in this scope
* ‘GLEW_EXT_abgr’ was not declared in this scope
* ‘GLEW_EXT_base_instance’ was not declared in this scope
* ‘GLEW_EXT_bgra’ was not declared in this scope
* ‘GLEW_EXT_bindable_uniform’ was not declared in this scope
* ‘GLEW_EXT_blend_color’ was not declared in this scope
* ‘GLEW_EXT_blend_equation_separate’ was not declared in this scope
* ‘GLEW_EXT_blend_func_extended’ was not declared in this scope
* ‘GLEW_EXT_blend_func_separate’ was not declared in this scope
* ‘GLEW_EXT_blend_logic_op’ was not declared in this scope
* ‘GLEW_EXT_blend_minmax’ was not declared in this scope
* ‘GLEW_EXT_blend_subtract’ was not declared in this scope
* ‘GLEW_EXT_buffer_storage’ was not declared in this scope
* ‘GLEW_EXT_clear_texture’ was not declared in this scope
* ‘GLEW_EXT_clip_cull_distance’ was not declared in this scope
* ‘GLEW_EXT_clip_volume_hint’ was not declared in this scope
* ‘GLEW_EXT_cmyka’ was not declared in this scope
* ‘GLEW_EXT_color_buffer_float’ was not declared in this scope
* ‘GLEW_EXT_color_buffer_half_float’ was not declared in this scope
* ‘GLEW_EXT_color_subtable’ was not declared in this scope
* ‘GLEW_EXT_compiled_vertex_array’ was not declared in this scope
* ‘GLEW_EXT_compressed_ETC1_RGB8_sub_texture’ was not declared in this scope
* ‘GLEW_EXT_conservative_depth’ was not declared in this scope
* ‘GLEW_EXT_convolution’ was not declared in this scope
* ‘GLEW_EXT_coordinate_frame’ was not declared in this scope
* ‘GLEW_EXT_copy_image’ was not declared in this scope
* ‘GLEW_EXT_copy_texture’ was not declared in this scope
* ‘GLEW_EXT_cull_vertex’ was not declared in this scope
* ‘GLEW_EXT_debug_label’ was not declared in this scope
* ‘GLEW_EXT_debug_marker’ was not declared in this scope
* ‘GLEW_EXT_depth_bounds_test’ was not declared in this scope
* ‘GLEW_EXT_direct_state_access’ was not declared in this scope
* ‘GLEW_EXT_discard_framebuffer’ was not declared in this scope
* ‘GLEW_EXT_draw_buffers2’ was not declared in this scope
* ‘GLEW_EXT_draw_buffers_indexed’ was not declared in this scope
* ‘GLEW_EXT_draw_buffers’ was not declared in this scope
* ‘GLEW_EXT_draw_elements_base_vertex’ was not declared in this scope
* ‘GLEW_EXT_draw_instanced’ was not declared in this scope
* ‘GLEW_EXT_draw_range_elements’ was not declared in this scope
* ‘GLEW_EXT_external_buffer’ was not declared in this scope
* ‘GLEW_EXT_float_blend’ was not declared in this scope
* ‘GLEW_EXT_fog_coord’ was not declared in this scope
* ‘GLEW_EXT_frag_depth’ was not declared in this scope
* ‘GLEW_EXT_fragment_lighting’ was not declared in this scope
* ‘GLEW_EXT_framebuffer_blit’ was not declared in this scope
* ‘GLEW_EXT_framebuffer_multisample_blit_scaled’ was not declared in this scope
* ‘GLEW_EXT_framebuffer_multisample’ was not declared in this scope
* ‘GLEW_EXT_framebuffer_object’ was not declared in this scope
* ‘GLEW_EXT_framebuffer_sRGB’ was not declared in this scope
* ‘GLEW_EXT_geometry_point_size’ was not declared in this scope
* ‘GLEW_EXT_geometry_shader4’ was not declared in this scope
* ‘GLEW_EXT_geometry_shader’ was not declared in this scope
* ‘GLEW_EXT_gpu_program_parameters’ was not declared in this scope
* ‘GLEW_EXT_gpu_shader4’ was not declared in this scope
* ‘GLEW_EXT_gpu_shader5’ was not declared in this scope
* ‘GLEW_EXT_histogram’ was not declared in this scope
* ‘GLEW_EXT_index_array_formats’ was not declared in this scope
* ‘GLEW_EXT_index_func’ was not declared in this scope
* ‘GLEW_EXT_index_material’ was not declared in this scope
* ‘GLEW_EXT_index_texture’ was not declared in this scope
* ‘GLEW_EXT_instanced_arrays’ was not declared in this scope
* ‘GLEW_EXT_light_texture’ was not declared in this scope
* ‘GLEW_EXT_map_buffer_range’ was not declared in this scope
* ‘GLEW_EXT_memory_object_fd’ was not declared in this scope
* ‘GLEW_EXT_memory_object_win32’ was not declared in this scope
* ‘GLEW_EXT_memory_object’ was not declared in this scope
* ‘GLEW_EXT_misc_attribute’ was not declared in this scope
* ‘GLEW_EXT_multi_draw_arrays’ was not declared in this scope
* ‘GLEW_EXT_multi_draw_indirect’ was not declared in this scope
* ‘GLEW_EXT_multiple_textures’ was not declared in this scope
* ‘GLEW_EXT_multisample_compatibility’ was not declared in this scope
* ‘GLEW_EXT_multisampled_render_to_texture2’ was not declared in this scope
* ‘GLEW_EXT_multisampled_render_to_texture’ was not declared in this scope
* ‘GLEW_EXT_multisample’ was not declared in this scope
* ‘GLEW_EXT_multiview_draw_buffers’ was not declared in this scope
* ‘GLEW_EXT_packed_depth_stencil’ was not declared in this scope
* ‘GLEW_EXT_packed_float’ was not declared in this scope
* ‘GLEW_EXT_packed_pixels’ was not declared in this scope
* ‘GLEW_EXT_paletted_texture’ was not declared in this scope
* ‘GLEW_EXT_pixel_buffer_object’ was not declared in this scope
* ‘GLEW_EXT_pixel_transform_color_table’ was not declared in this scope
* ‘GLEW_EXT_pixel_transform’ was not declared in this scope
* ‘GLEW_EXT_point_parameters’ was not declared in this scope
* ‘GLEW_EXT_polygon_offset_clamp’ was not declared in this scope
* ‘GLEW_EXT_polygon_offset’ was not declared in this scope
* ‘GLEW_EXT_post_depth_coverage’ was not declared in this scope
* ‘GLEW_EXT_provoking_vertex’ was not declared in this scope
* ‘GLEW_EXT_pvrtc_sRGB’ was not declared in this scope
* ‘GLEW_EXT_raster_multisample’ was not declared in this scope
* ‘GLEW_EXT_read_format_bgra’ was not declared in this scope
* ‘GLEW_EXT_render_snorm’ was not declared in this scope
* ‘GLEW_EXT_rescale_normal’ was not declared in this scope
* ‘GLEW_EXT_sRGB_write_control’ was not declared in this scope
* ‘GLEW_EXT_sRGB’ was not declared in this scope
* ‘GLEW_EXT_scene_marker’ was not declared in this scope
* ‘GLEW_EXT_secondary_color’ was not declared in this scope
* ‘GLEW_EXT_semaphore_fd’ was not declared in this scope
* ‘GLEW_EXT_semaphore_win32’ was not declared in this scope
* ‘GLEW_EXT_semaphore’ was not declared in this scope
* ‘GLEW_EXT_separate_shader_objects’ was not declared in this scope
* ‘GLEW_EXT_separate_specular_color’ was not declared in this scope
* ‘GLEW_EXT_shader_framebuffer_fetch’ was not declared in this scope
* ‘GLEW_EXT_shader_group_vote’ was not declared in this scope
* ‘GLEW_EXT_shader_image_load_formatted’ was not declared in this scope
* ‘GLEW_EXT_shader_image_load_store’ was not declared in this scope
* ‘GLEW_EXT_shader_implicit_conversions’ was not declared in this scope
* ‘GLEW_EXT_shader_integer_mix’ was not declared in this scope
* ‘GLEW_EXT_shader_io_blocks’ was not declared in this scope
* ‘GLEW_EXT_shader_non_constant_global_initializers’ was not declared in this scope
* ‘GLEW_EXT_shader_pixel_local_storage2’ was not declared in this scope
* ‘GLEW_EXT_shader_pixel_local_storage’ was not declared in this scope
* ‘GLEW_EXT_shader_texture_lod’ was not declared in this scope
* ‘GLEW_EXT_shadow_funcs’ was not declared in this scope
* ‘GLEW_EXT_shadow_samplers’ was not declared in this scope
* ‘GLEW_EXT_shared_texture_palette’ was not declared in this scope
* ‘GLEW_EXT_sparse_texture2’ was not declared in this scope
* ‘GLEW_EXT_sparse_texture’ was not declared in this scope
* ‘GLEW_EXT_stencil_clear_tag’ was not declared in this scope
* ‘GLEW_EXT_stencil_two_side’ was not declared in this scope
* ‘GLEW_EXT_stencil_wrap’ was not declared in this scope
* ‘GLEW_EXT_subtexture’ was not declared in this scope
* ‘GLEW_EXT_texture3D’ was not declared in this scope
* ‘GLEW_EXT_texture_array’ was not declared in this scope
* ‘GLEW_EXT_texture_buffer_object’ was not declared in this scope
* ‘GLEW_EXT_texture_compression_astc_decode_mode_rgb9e5’ was not declared in this scope
* ‘GLEW_EXT_texture_compression_astc_decode_mode’ was not declared in this scope
* ‘GLEW_EXT_texture_compression_bptc’ was not declared in this scope
* ‘GLEW_EXT_texture_compression_dxt1’ was not declared in this scope
* ‘GLEW_EXT_texture_compression_latc’ was not declared in this scope
* ‘GLEW_EXT_texture_compression_rgtc’ was not declared in this scope
* ‘GLEW_EXT_texture_compression_s3tc’ was not declared in this scope
* ‘GLEW_EXT_texture_cube_map_array’ was not declared in this scope
* ‘GLEW_EXT_texture_cube_map’ was not declared in this scope
* ‘GLEW_EXT_texture_edge_clamp’ was not declared in this scope
* ‘GLEW_EXT_texture_env_add’ was not declared in this scope
* ‘GLEW_EXT_texture_env_combine’ was not declared in this scope
* ‘GLEW_EXT_texture_env_dot3’ was not declared in this scope
* ‘GLEW_EXT_texture_env’ was not declared in this scope
* ‘GLEW_EXT_texture_filter_anisotropic’ was not declared in this scope
* ‘GLEW_EXT_texture_filter_minmax’ was not declared in this scope
* ‘GLEW_EXT_texture_format_BGRA8888’ was not declared in this scope
* ‘GLEW_EXT_texture_integer’ was not declared in this scope
* ‘GLEW_EXT_texture_lod_bias’ was not declared in this scope
* ‘GLEW_EXT_texture_mirror_clamp’ was not declared in this scope
* ‘GLEW_EXT_texture_norm16’ was not declared in this scope
* ‘GLEW_EXT_texture_object’ was not declared in this scope
* ‘GLEW_EXT_texture_perturb_normal’ was not declared in this scope
* ‘GLEW_EXT_texture_rectangle’ was not declared in this scope
* ‘GLEW_EXT_texture_rg’ was not declared in this scope
* ‘GLEW_EXT_texture_sRGB_R8’ was not declared in this scope
* ‘GLEW_EXT_texture_sRGB_RG8’ was not declared in this scope
* ‘GLEW_EXT_texture_sRGB_decode’ was not declared in this scope
* ‘GLEW_EXT_texture_sRGB’ was not declared in this scope
* ‘GLEW_EXT_texture_shared_exponent’ was not declared in this scope
* ‘GLEW_EXT_texture_snorm’ was not declared in this scope
* ‘GLEW_EXT_texture_storage’ was not declared in this scope
* ‘GLEW_EXT_texture_swizzle’ was not declared in this scope
* ‘GLEW_EXT_texture_type_2_10_10_10_REV’ was not declared in this scope
* ‘GLEW_EXT_texture_view’ was not declared in this scope
* ‘GLEW_EXT_texture’ was not declared in this scope
* ‘GLEW_EXT_timer_query’ was not declared in this scope
* ‘GLEW_EXT_transform_feedback’ was not declared in this scope
* ‘GLEW_EXT_unpack_subimage’ was not declared in this scope
* ‘GLEW_EXT_vertex_array_bgra’ was not declared in this scope
* ‘GLEW_EXT_vertex_array_setXXX’ was not declared in this scope
* ‘GLEW_EXT_vertex_array’ was not declared in this scope
* ‘GLEW_EXT_vertex_attrib_64bit’ was not declared in this scope
* ‘GLEW_EXT_vertex_shader’ was not declared in this scope
* ‘GLEW_EXT_vertex_weighting’ was not declared in this scope
* ‘GLEW_EXT_win32_keyed_mutex’ was not declared in this scope
* ‘GLEW_EXT_window_rectangles’ was not declared in this scope
* ‘GLEW_EXT_x11_sync_object’ was not declared in this scope
* ‘GLEW_GET_VAR’ was not declared in this scope
* ‘GLEW_GET_FUN’ was not declared in this scope
* ‘GLEW_GREMEDY_frame_terminator’ was not declared in this scope
* ‘GLEW_GREMEDY_string_marker’ was not declared in this scope
* ‘GLEW_HP_convolution_border_modes’ was not declared in this scope
* ‘GLEW_HP_image_transform’ was not declared in this scope
* ‘GLEW_HP_occlusion_test’ was not declared in this scope
* ‘GLEW_HP_texture_lighting’ was not declared in this scope
* ‘GLEW_IBM_cull_vertex’ was not declared in this scope
* ‘GLEW_IBM_multimode_draw_arrays’ was not declared in this scope
* ‘GLEW_IBM_rasterpos_clip’ was not declared in this scope
* ‘GLEW_IBM_static_data’ was not declared in this scope
* ‘GLEW_IBM_texture_mirrored_repeat’ was not declared in this scope
* ‘GLEW_IBM_vertex_array_lists’ was not declared in this scope
* ‘GLEW_INGR_color_clamp’ was not declared in this scope
* ‘GLEW_INGR_interlace_read’ was not declared in this scope
* ‘GLEW_INTEL_conservative_rasterization’ was not declared in this scope
* ‘GLEW_INTEL_fragment_shader_ordering’ was not declared in this scope
* ‘GLEW_INTEL_framebuffer_CMAA’ was not declared in this scope
* ‘GLEW_INTEL_map_texture’ was not declared in this scope
* ‘GLEW_INTEL_parallel_arrays’ was not declared in this scope
* ‘GLEW_INTEL_performance_query’ was not declared in this scope
* ‘GLEW_INTEL_texture_scissor’ was not declared in this scope
* ‘GLEW_KHR_blend_equation_advanced_coherent’ was not declared in this scope
* ‘GLEW_KHR_blend_equation_advanced’ was not declared in this scope
* ‘GLEW_KHR_context_flush_control’ was not declared in this scope
* ‘GLEW_KHR_debug’ was not declared in this scope
* ‘GLEW_KHR_no_error’ was not declared in this scope
* ‘GLEW_KHR_parallel_shader_compile’ was not declared in this scope
* ‘GLEW_KHR_robust_buffer_access_behavior’ was not declared in this scope
* ‘GLEW_KHR_robustness’ was not declared in this scope
* ‘GLEW_KHR_texture_compression_astc_hdr’ was not declared in this scope
* ‘GLEW_KHR_texture_compression_astc_ldr’ was not declared in this scope
* ‘GLEW_KHR_texture_compression_astc_sliced_3d’ was not declared in this scope
* ‘GLEW_KTX_buffer_region’ was not declared in this scope
* ‘GLEW_MESAX_texture_stack’ was not declared in this scope
* ‘GLEW_MESA_pack_invert’ was not declared in this scope
* ‘GLEW_MESA_resize_buffers’ was not declared in this scope
* ‘GLEW_MESA_shader_integer_functions’ was not declared in this scope
* ‘GLEW_MESA_window_pos’ was not declared in this scope
* ‘GLEW_MESA_ycbcr_texture’ was not declared in this scope
* ‘GLEW_NO_ERROR’ was not declared in this scope
* ‘GLEW_NVX_blend_equation_advanced_multi_draw_buffers’ was not declared in this scope
* ‘GLEW_NVX_conditional_render’ was not declared in this scope
* ‘GLEW_NVX_gpu_memory_info’ was not declared in this scope
* ‘GLEW_NVX_linked_gpu_multicast’ was not declared in this scope
* ‘GLEW_NV_3dvision_settings’ was not declared in this scope
* ‘GLEW_NV_EGL_stream_consumer_external’ was not declared in this scope
* ‘GLEW_NV_alpha_to_coverage_dither_control’ was not declared in this scope
* ‘GLEW_NV_bgr’ was not declared in this scope
* ‘GLEW_NV_bindless_multi_draw_indirect_count’ was not declared in this scope
* ‘GLEW_NV_bindless_multi_draw_indirect’ was not declared in this scope
* ‘GLEW_NV_bindless_texture’ was not declared in this scope
* ‘GLEW_NV_blend_equation_advanced_coherent’ was not declared in this scope
* ‘GLEW_NV_blend_equation_advanced’ was not declared in this scope
* ‘GLEW_NV_blend_minmax_factor’ was not declared in this scope
* ‘GLEW_NV_blend_square’ was not declared in this scope
* ‘GLEW_NV_clip_space_w_scaling’ was not declared in this scope
* ‘GLEW_NV_command_list’ was not declared in this scope
* ‘GLEW_NV_compute_program5’ was not declared in this scope
* ‘GLEW_NV_conditional_render’ was not declared in this scope
* ‘GLEW_NV_conservative_raster_dilate’ was not declared in this scope
* ‘GLEW_NV_conservative_raster_pre_snap_triangles’ was not declared in this scope
* ‘GLEW_NV_conservative_raster’ was not declared in this scope
* ‘GLEW_NV_copy_buffer’ was not declared in this scope
* ‘GLEW_NV_copy_depth_to_color’ was not declared in this scope
* ‘GLEW_NV_copy_image’ was not declared in this scope
* ‘GLEW_NV_deep_texture3D’ was not declared in this scope
* ‘GLEW_NV_depth_buffer_float’ was not declared in this scope
* ‘GLEW_NV_depth_clamp’ was not declared in this scope
* ‘GLEW_NV_depth_range_unclamped’ was not declared in this scope
* ‘GLEW_NV_draw_buffers’ was not declared in this scope
* ‘GLEW_NV_draw_instanced’ was not declared in this scope
* ‘GLEW_NV_draw_texture’ was not declared in this scope
* ‘GLEW_NV_draw_vulkan_image’ was not declared in this scope
* ‘GLEW_NV_evaluators’ was not declared in this scope
* ‘GLEW_NV_explicit_attrib_location’ was not declared in this scope
* ‘GLEW_NV_explicit_multisample’ was not declared in this scope
* ‘GLEW_NV_fbo_color_attachments’ was not declared in this scope
* ‘GLEW_NV_fence’ was not declared in this scope
* ‘GLEW_NV_fill_rectangle’ was not declared in this scope
* ‘GLEW_NV_float_buffer’ was not declared in this scope
* ‘GLEW_NV_fog_distance’ was not declared in this scope
* ‘GLEW_NV_fragment_coverage_to_color’ was not declared in this scope
* ‘GLEW_NV_fragment_program2’ was not declared in this scope
* ‘GLEW_NV_fragment_program4’ was not declared in this scope
* ‘GLEW_NV_fragment_program_option’ was not declared in this scope
* ‘GLEW_NV_fragment_program’ was not declared in this scope
* ‘GLEW_NV_fragment_shader_interlock’ was not declared in this scope
* ‘GLEW_NV_framebuffer_blit’ was not declared in this scope
* ‘GLEW_NV_framebuffer_mixed_samples’ was not declared in this scope
* ‘GLEW_NV_framebuffer_multisample_coverage’ was not declared in this scope
* ‘GLEW_NV_framebuffer_multisample’ was not declared in this scope
* ‘GLEW_NV_generate_mipmap_sRGB’ was not declared in this scope
* ‘GLEW_NV_geometry_program4’ was not declared in this scope
* ‘GLEW_NV_geometry_shader4’ was not declared in this scope
* ‘GLEW_NV_geometry_shader_passthrough’ was not declared in this scope
* ‘GLEW_NV_gpu_multicast’ was not declared in this scope
* ‘GLEW_NV_gpu_program4’ was not declared in this scope
* ‘GLEW_NV_gpu_program5_mem_extended’ was not declared in this scope
* ‘GLEW_NV_gpu_program5’ was not declared in this scope
* ‘GLEW_NV_gpu_program_fp64’ was not declared in this scope
* ‘GLEW_NV_gpu_shader5’ was not declared in this scope
* ‘GLEW_NV_half_float’ was not declared in this scope
* ‘GLEW_NV_image_formats’ was not declared in this scope
* ‘GLEW_NV_instanced_arrays’ was not declared in this scope
* ‘GLEW_NV_internalformat_sample_query’ was not declared in this scope
* ‘GLEW_NV_light_max_exponent’ was not declared in this scope
* ‘GLEW_NV_multisample_coverage’ was not declared in this scope
* ‘GLEW_NV_multisample_filter_hint’ was not declared in this scope
* ‘GLEW_NV_non_square_matrices’ was not declared in this scope
* ‘GLEW_NV_occlusion_query’ was not declared in this scope
* ‘GLEW_NV_pack_subimage’ was not declared in this scope
* ‘GLEW_NV_packed_depth_stencil’ was not declared in this scope
* ‘GLEW_NV_packed_float_linear’ was not declared in this scope
* ‘GLEW_NV_packed_float’ was not declared in this scope
* ‘GLEW_NV_parameter_buffer_object2’ was not declared in this scope
* ‘GLEW_NV_parameter_buffer_object’ was not declared in this scope
* ‘GLEW_NV_path_rendering_shared_edge’ was not declared in this scope
* ‘GLEW_NV_path_rendering’ was not declared in this scope
* ‘GLEW_NV_pixel_buffer_object’ was not declared in this scope
* ‘GLEW_NV_pixel_data_range’ was not declared in this scope
* ‘GLEW_NV_platform_binary’ was not declared in this scope
* ‘GLEW_NV_point_sprite’ was not declared in this scope
* ‘GLEW_NV_polygon_mode’ was not declared in this scope
* ‘GLEW_NV_present_video’ was not declared in this scope
* ‘GLEW_NV_primitive_restart’ was not declared in this scope
* ‘GLEW_NV_read_depth_stencil’ was not declared in this scope
* ‘GLEW_NV_read_depth’ was not declared in this scope
* ‘GLEW_NV_read_stencil’ was not declared in this scope
* ‘GLEW_NV_register_combiners2’ was not declared in this scope
* ‘GLEW_NV_register_combiners’ was not declared in this scope
* ‘GLEW_NV_robustness_video_memory_purge’ was not declared in this scope
* ‘GLEW_NV_sRGB_formats’ was not declared in this scope
* ‘GLEW_NV_sample_locations’ was not declared in this scope
* ‘GLEW_NV_sample_mask_override_coverage’ was not declared in this scope
* ‘GLEW_NV_shader_atomic_counters’ was not declared in this scope
* ‘GLEW_NV_shader_atomic_float64’ was not declared in this scope
* ‘GLEW_NV_shader_atomic_float’ was not declared in this scope
* ‘GLEW_NV_shader_atomic_fp16_vector’ was not declared in this scope
* ‘GLEW_NV_shader_atomic_int64’ was not declared in this scope
* ‘GLEW_NV_shader_buffer_load’ was not declared in this scope
* ‘GLEW_NV_shader_noperspective_interpolation’ was not declared in this scope
* ‘GLEW_NV_shader_storage_buffer_object’ was not declared in this scope
* ‘GLEW_NV_shader_thread_group’ was not declared in this scope
* ‘GLEW_NV_shader_thread_shuffle’ was not declared in this scope
* ‘GLEW_NV_shadow_samplers_array’ was not declared in this scope
* ‘GLEW_NV_shadow_samplers_cube’ was not declared in this scope
* ‘GLEW_NV_stereo_view_rendering’ was not declared in this scope
* ‘GLEW_NV_tessellation_program5’ was not declared in this scope
* ‘GLEW_NV_texgen_emboss’ was not declared in this scope
* ‘GLEW_NV_texgen_reflection’ was not declared in this scope
* ‘GLEW_NV_texture_array’ was not declared in this scope
* ‘GLEW_NV_texture_barrier’ was not declared in this scope
* ‘GLEW_NV_texture_border_clamp’ was not declared in this scope
* ‘GLEW_NV_texture_compression_latc’ was not declared in this scope
* ‘GLEW_NV_texture_compression_s3tc_update’ was not declared in this scope
* ‘GLEW_NV_texture_compression_s3tc’ was not declared in this scope
* ‘GLEW_NV_texture_compression_vtc’ was not declared in this scope
* ‘GLEW_NV_texture_env_combine4’ was not declared in this scope
* ‘GLEW_NV_texture_expand_normal’ was not declared in this scope
* ‘GLEW_NV_texture_multisample’ was not declared in this scope
* ‘GLEW_NV_texture_npot_2D_mipmap’ was not declared in this scope
* ‘GLEW_NV_texture_rectangle_compressed’ was not declared in this scope
* ‘GLEW_NV_texture_rectangle’ was not declared in this scope
* ‘GLEW_NV_texture_shader2’ was not declared in this scope
* ‘GLEW_NV_texture_shader3’ was not declared in this scope
* ‘GLEW_NV_texture_shader’ was not declared in this scope
* ‘GLEW_NV_transform_feedback2’ was not declared in this scope
* ‘GLEW_NV_transform_feedback’ was not declared in this scope
* ‘GLEW_NV_uniform_buffer_unified_memory’ was not declared in this scope
* ‘GLEW_NV_vdpau_interop’ was not declared in this scope
* ‘GLEW_NV_vertex_array_range2’ was not declared in this scope
* ‘GLEW_NV_vertex_array_range’ was not declared in this scope
* ‘GLEW_NV_vertex_attrib_integer_64bit’ was not declared in this scope
* ‘GLEW_NV_vertex_buffer_unified_memory’ was not declared in this scope
* ‘GLEW_NV_vertex_program1_1’ was not declared in this scope
* ‘GLEW_NV_vertex_program2_option’ was not declared in this scope
* ‘GLEW_NV_vertex_program2’ was not declared in this scope
* ‘GLEW_NV_vertex_program3’ was not declared in this scope
* ‘GLEW_NV_vertex_program4’ was not declared in this scope
* ‘GLEW_NV_vertex_program’ was not declared in this scope
* ‘GLEW_NV_video_capture’ was not declared in this scope
* ‘GLEW_NV_viewport_array2’ was not declared in this scope
* ‘GLEW_NV_viewport_array’ was not declared in this scope
* ‘GLEW_NV_viewport_swizzle’ was not declared in this scope
* ‘GLEW_OES_byte_coordinates’ was not declared in this scope
* ‘GLEW_OK’ was not declared in this scope; did you mean ‘W_OK’?
* ‘GLEW_OML_interlace’ was not declared in this scope
* ‘GLEW_OML_resample’ was not declared in this scope
* ‘GLEW_OML_subsample’ was not declared in this scope
* ‘GLEW_OVR_multiview2’ was not declared in this scope
* ‘GLEW_OVR_multiview_multisampled_render_to_texture’ was not declared in this scope
* ‘GLEW_OVR_multiview’ was not declared in this scope
* ‘GLEW_PGI_misc_hints’ was not declared in this scope
* ‘GLEW_PGI_vertex_hints’ was not declared in this scope
* ‘GLEW_QCOM_alpha_test’ was not declared in this scope
* ‘GLEW_QCOM_binning_control’ was not declared in this scope
* ‘GLEW_QCOM_driver_control’ was not declared in this scope
* ‘GLEW_QCOM_extended_get2’ was not declared in this scope
* ‘GLEW_QCOM_extended_get’ was not declared in this scope
* ‘GLEW_QCOM_framebuffer_foveated’ was not declared in this scope
* ‘GLEW_QCOM_perfmon_global_mode’ was not declared in this scope
* ‘GLEW_QCOM_shader_framebuffer_fetch_noncoherent’ was not declared in this scope
* ‘GLEW_QCOM_tiled_rendering’ was not declared in this scope
* ‘GLEW_QCOM_writeonly_rendering’ was not declared in this scope
* ‘GLEW_REGAL_ES1_0_compatibility’ was not declared in this scope
* ‘GLEW_REGAL_ES1_1_compatibility’ was not declared in this scope
* ‘GLEW_REGAL_enable’ was not declared in this scope
* ‘GLEW_REGAL_error_string’ was not declared in this scope
* ‘GLEW_REGAL_extension_query’ was not declared in this scope
* ‘GLEW_REGAL_log’ was not declared in this scope
* ‘GLEW_REGAL_proc_address’ was not declared in this scope
* ‘GLEW_REND_screen_coordinates’ was not declared in this scope
* ‘GLEW_S3_s3tc’ was not declared in this scope
* ‘GLEW_SGIS_clip_band_hint’ was not declared in this scope
* ‘GLEW_SGIS_color_range’ was not declared in this scope
* ‘GLEW_SGIS_detail_texture’ was not declared in this scope
* ‘GLEW_SGIS_fog_function’ was not declared in this scope
* ‘GLEW_SGIS_generate_mipmap’ was not declared in this scope
* ‘GLEW_SGIS_line_texgen’ was not declared in this scope
* ‘GLEW_SGIS_multisample’ was not declared in this scope
* ‘GLEW_SGIS_multitexture’ was not declared in this scope
* ‘GLEW_SGIS_pixel_texture’ was not declared in this scope
* ‘GLEW_SGIS_point_line_texgen’ was not declared in this scope
* ‘GLEW_SGIS_shared_multisample’ was not declared in this scope
* ‘GLEW_SGIS_sharpen_texture’ was not declared in this scope
* ‘GLEW_SGIS_texture4D’ was not declared in this scope
* ‘GLEW_SGIS_texture_border_clamp’ was not declared in this scope
* ‘GLEW_SGIS_texture_edge_clamp’ was not declared in this scope
* ‘GLEW_SGIS_texture_filter4’ was not declared in this scope
* ‘GLEW_SGIS_texture_lod’ was not declared in this scope
* ‘GLEW_SGIS_texture_select’ was not declared in this scope
* ‘GLEW_SGIX_async_histogram’ was not declared in this scope
* ‘GLEW_SGIX_async_pixel’ was not declared in this scope
* ‘GLEW_SGIX_async’ was not declared in this scope
* ‘GLEW_SGIX_bali_g_instruments’ was not declared in this scope
* ‘GLEW_SGIX_bali_r_instruments’ was not declared in this scope
* ‘GLEW_SGIX_bali_timer_instruments’ was not declared in this scope
* ‘GLEW_SGIX_blend_alpha_minmax’ was not declared in this scope
* ‘GLEW_SGIX_blend_cadd’ was not declared in this scope
* ‘GLEW_SGIX_blend_cmultiply’ was not declared in this scope
* ‘GLEW_SGIX_calligraphic_fragment’ was not declared in this scope
* ‘GLEW_SGIX_clipmap’ was not declared in this scope
* ‘GLEW_SGIX_color_matrix_accuracy’ was not declared in this scope
* ‘GLEW_SGIX_color_table_index_mode’ was not declared in this scope
* ‘GLEW_SGIX_complex_polar’ was not declared in this scope
* ‘GLEW_SGIX_convolution_accuracy’ was not declared in this scope
* ‘GLEW_SGIX_cube_map’ was not declared in this scope
* ‘GLEW_SGIX_cylinder_texgen’ was not declared in this scope
* ‘GLEW_SGIX_datapipe’ was not declared in this scope
* ‘GLEW_SGIX_decimation’ was not declared in this scope
* ‘GLEW_SGIX_depth_pass_instrument’ was not declared in this scope
* ‘GLEW_SGIX_depth_texture’ was not declared in this scope
* ‘GLEW_SGIX_dvc’ was not declared in this scope
* ‘GLEW_SGIX_flush_raster’ was not declared in this scope
* ‘GLEW_SGIX_fog_blend’ was not declared in this scope
* ‘GLEW_SGIX_fog_factor_to_alpha’ was not declared in this scope
* ‘GLEW_SGIX_fog_layers’ was not declared in this scope
* ‘GLEW_SGIX_fog_offset’ was not declared in this scope
* ‘GLEW_SGIX_fog_patchy’ was not declared in this scope
* ‘GLEW_SGIX_fog_scale’ was not declared in this scope
* ‘GLEW_SGIX_fog_texture’ was not declared in this scope
* ‘GLEW_SGIX_fragment_lighting_space’ was not declared in this scope
* ‘GLEW_SGIX_fragment_specular_lighting’ was not declared in this scope
* ‘GLEW_SGIX_fragments_instrument’ was not declared in this scope
* ‘GLEW_SGIX_framezoom’ was not declared in this scope
* ‘GLEW_SGIX_icc_texture’ was not declared in this scope
* ‘GLEW_SGIX_igloo_interface’ was not declared in this scope
* ‘GLEW_SGIX_image_compression’ was not declared in this scope
* ‘GLEW_SGIX_impact_pixel_texture’ was not declared in this scope
* ‘GLEW_SGIX_instrument_error’ was not declared in this scope
* ‘GLEW_SGIX_interlace’ was not declared in this scope
* ‘GLEW_SGIX_ir_instrument1’ was not declared in this scope
* ‘GLEW_SGIX_line_quality_hint’ was not declared in this scope
* ‘GLEW_SGIX_list_priority’ was not declared in this scope
* ‘GLEW_SGIX_mpeg1’ was not declared in this scope
* ‘GLEW_SGIX_mpeg2’ was not declared in this scope
* ‘GLEW_SGIX_nonlinear_lighting_pervertex’ was not declared in this scope
* ‘GLEW_SGIX_nurbs_eval’ was not declared in this scope
* ‘GLEW_SGIX_occlusion_instrument’ was not declared in this scope
* ‘GLEW_SGIX_packed_6bytes’ was not declared in this scope
* ‘GLEW_SGIX_pixel_texture_bits’ was not declared in this scope
* ‘GLEW_SGIX_pixel_texture_lod’ was not declared in this scope
* ‘GLEW_SGIX_pixel_texture’ was not declared in this scope
* ‘GLEW_SGIX_pixel_tiles’ was not declared in this scope
* ‘GLEW_SGIX_polynomial_ffd’ was not declared in this scope
* ‘GLEW_SGIX_quad_mesh’ was not declared in this scope
* ‘GLEW_SGIX_reference_plane’ was not declared in this scope
* ‘GLEW_SGIX_resample’ was not declared in this scope
* ‘GLEW_SGIX_scalebias_hint’ was not declared in this scope
* ‘GLEW_SGIX_shadow_ambient’ was not declared in this scope
* ‘GLEW_SGIX_shadow’ was not declared in this scope
* ‘GLEW_SGIX_slim’ was not declared in this scope
* ‘GLEW_SGIX_spotlight_cutoff’ was not declared in this scope
* ‘GLEW_SGIX_sprite’ was not declared in this scope
* ‘GLEW_SGIX_subdiv_patch’ was not declared in this scope
* ‘GLEW_SGIX_subsample’ was not declared in this scope
* ‘GLEW_SGIX_tag_sample_buffer’ was not declared in this scope
* ‘GLEW_SGIX_texture_add_env’ was not declared in this scope
* ‘GLEW_SGIX_texture_coordinate_clamp’ was not declared in this scope
* ‘GLEW_SGIX_texture_lod_bias’ was not declared in this scope
* ‘GLEW_SGIX_texture_mipmap_anisotropic’ was not declared in this scope
* ‘GLEW_SGIX_texture_multi_buffer’ was not declared in this scope
* ‘GLEW_SGIX_texture_phase’ was not declared in this scope
* ‘GLEW_SGIX_texture_range’ was not declared in this scope
* ‘GLEW_SGIX_texture_scale_bias’ was not declared in this scope
* ‘GLEW_SGIX_texture_supersample’ was not declared in this scope
* ‘GLEW_SGIX_vector_ops’ was not declared in this scope
* ‘GLEW_SGIX_vertex_array_object’ was not declared in this scope
* ‘GLEW_SGIX_vertex_preclip_hint’ was not declared in this scope
* ‘GLEW_SGIX_vertex_preclip’ was not declared in this scope
* ‘GLEW_SGIX_ycrcb_subsample’ was not declared in this scope
* ‘GLEW_SGIX_ycrcba’ was not declared in this scope
* ‘GLEW_SGIX_ycrcb’ was not declared in this scope
* ‘GLEW_SGI_color_matrix’ was not declared in this scope
* ‘GLEW_SGI_color_table’ was not declared in this scope
* ‘GLEW_SGI_complex_type’ was not declared in this scope
* ‘GLEW_SGI_complex’ was not declared in this scope
* ‘GLEW_SGI_fft’ was not declared in this scope
* ‘GLEW_SGI_texture_color_table’ was not declared in this scope
* ‘GLEW_SUNX_constant_data’ was not declared in this scope
* ‘GLEW_SUN_convolution_border_modes’ was not declared in this scope
* ‘GLEW_SUN_global_alpha’ was not declared in this scope
* ‘GLEW_SUN_mesh_array’ was not declared in this scope
* ‘GLEW_SUN_read_video_pixels’ was not declared in this scope
* ‘GLEW_SUN_slice_accum’ was not declared in this scope
* ‘GLEW_SUN_triangle_list’ was not declared in this scope
* ‘GLEW_SUN_vertex’ was not declared in this scope
* ‘GLEW_VERSION_1_1’ was not declared in this scope
* ‘GLEW_VERSION_1_2_1’ was not declared in this scope
* ‘GLEW_VERSION_1_2’ was not declared in this scope
* ‘GLEW_VERSION_1_3’ was not declared in this scope
* ‘GLEW_VERSION_1_4’ was not declared in this scope
* ‘GLEW_VERSION_1_5’ was not declared in this scope
* ‘GLEW_VERSION_2_0’ was not declared in this scope
* ‘GLEW_VERSION_2_1’ was not declared in this scope
* ‘GLEW_VERSION_3_0’ was not declared in this scope
* ‘GLEW_VERSION_3_1’ was not declared in this scope
* ‘GLEW_VERSION_3_2’ was not declared in this scope
* ‘GLEW_VERSION_3_3’ was not declared in this scope
* ‘GLEW_VERSION_4_0’ was not declared in this scope
* ‘GLEW_VERSION_4_1’ was not declared in this scope
* ‘GLEW_VERSION_4_2’ was not declared in this scope
* ‘GLEW_VERSION_4_3’ was not declared in this scope
* ‘GLEW_VERSION_4_4’ was not declared in this scope
* ‘GLEW_VERSION_4_5’ was not declared in this scope
* ‘GLEW_VERSION_4_6’ was not declared in this scope
* ‘GLEW_VERSION_MAJOR’ was not declared in this scope; did you mean ‘TBB_VERSION_MAJOR’?
* ‘GLEW_VERSION_MICRO’ was not declared in this scope; did you mean ‘TBB_VERSION_MINOR’?
* ‘GLEW_VERSION_MINOR’ was not declared in this scope; did you mean ‘TBB_VERSION_MINOR’?
* ‘GLEW_VERSION’ was not declared in this scope; did you mean ‘PSTL_VERSION’?
* ‘GLEW_WIN_phong_shading’ was not declared in this scope
* ‘GLEW_WIN_scene_markerXXX’ was not declared in this scope
* ‘GLEW_WIN_specular_fog’ was not declared in this scope
* ‘GLEW_WIN_swap_hint’ was not declared in this scope

C++ Error Strings (Windows):

* E1696        cannot open source file “pxr/imaging/glf/glew.h”
* E0020        identifier “glewIsSupported” is undefined
* E0020        identifier “GlfGlewInit” is undefined
* C1083        Cannot open include file: ‘pxr/imaging/glf/glew.h’: No such file or directory
* C3861        ‘glewIsSupported’: identifier not found
* C3861        ‘GlfGlewInit’: identifier not found
* E0020        identifier “GLEW_3DFX_multisample” is undefined
* E0020        identifier “GLEW_3DFX_tbuffer” is undefined
* E0020        identifier “GLEW_3DFX_texture_compression_FXT1” is undefined
* E0020        identifier “GLEW_AMD_blend_minmax_factor” is undefined
* E0020        identifier “GLEW_AMD_compressed_3DC_texture” is undefined
* E0020        identifier “GLEW_AMD_compressed_ATC_texture” is undefined
* E0020        identifier “GLEW_AMD_conservative_depth” is undefined
* E0020        identifier “GLEW_AMD_debug_output” is undefined
* E0020        identifier “GLEW_AMD_depth_clamp_separate” is undefined
* E0020        identifier “GLEW_AMD_draw_buffers_blend” is undefined
* E0020        identifier “GLEW_AMD_framebuffer_sample_positions” is undefined
* E0020        identifier “GLEW_AMD_gcn_shader” is undefined
* E0020        identifier “GLEW_AMD_gpu_shader_half_float” is undefined
* E0020        identifier “GLEW_AMD_gpu_shader_int16” is undefined
* E0020        identifier “GLEW_AMD_gpu_shader_int64” is undefined
* E0020        identifier “GLEW_AMD_interleaved_elements” is undefined
* E0020        identifier “GLEW_AMD_multi_draw_indirect” is undefined
* E0020        identifier “GLEW_AMD_name_gen_delete” is undefined
* E0020        identifier “GLEW_AMD_occlusion_query_event” is undefined
* E0020        identifier “GLEW_AMD_performance_monitor” is undefined
* E0020        identifier “GLEW_AMD_pinned_memory” is undefined
* E0020        identifier “GLEW_AMD_program_binary_Z400” is undefined
* E0020        identifier “GLEW_AMD_query_buffer_object” is undefined
* E0020        identifier “GLEW_AMD_sample_positions” is undefined
* E0020        identifier “GLEW_AMD_seamless_cubemap_per_texture” is undefined
* E0020        identifier “GLEW_AMD_shader_atomic_counter_ops” is undefined
* E0020        identifier “GLEW_AMD_shader_ballot” is undefined
* E0020        identifier “GLEW_AMD_shader_explicit_vertex_parameter” is undefined
* E0020        identifier “GLEW_AMD_shader_stencil_export” is undefined
* E0020        identifier “GLEW_AMD_shader_stencil_value_export” is undefined
* E0020        identifier “GLEW_AMD_shader_trinary_minmax” is undefined
* E0020        identifier “GLEW_AMD_sparse_texture” is undefined
* E0020        identifier “GLEW_AMD_stencil_operation_extended” is undefined
* E0020        identifier “GLEW_AMD_texture_gather_bias_lod” is undefined
* E0020        identifier “GLEW_AMD_texture_texture4” is undefined
* E0020        identifier “GLEW_AMD_transform_feedback3_lines_triangles” is undefined
* E0020        identifier “GLEW_AMD_transform_feedback4” is undefined
* E0020        identifier “GLEW_AMD_vertex_shader_layer” is undefined
* E0020        identifier “GLEW_AMD_vertex_shader_tessellator” is undefined
* E0020        identifier “GLEW_AMD_vertex_shader_viewport_index” is undefined
* E0020        identifier “GLEW_ANDROID_extension_pack_es31a” is undefined
* E0020        identifier “GLEW_ANGLE_depth_texture” is undefined
* E0020        identifier “GLEW_ANGLE_framebuffer_blit” is undefined
* E0020        identifier “GLEW_ANGLE_framebuffer_multisample” is undefined
* E0020        identifier “GLEW_ANGLE_instanced_arrays” is undefined
* E0020        identifier “GLEW_ANGLE_pack_reverse_row_order” is undefined
* E0020        identifier “GLEW_ANGLE_program_binary” is undefined
* E0020        identifier “GLEW_ANGLE_texture_compression_dxt1” is undefined
* E0020        identifier “GLEW_ANGLE_texture_compression_dxt3” is undefined
* E0020        identifier “GLEW_ANGLE_texture_compression_dxt5” is undefined
* E0020        identifier “GLEW_ANGLE_texture_usage” is undefined
* E0020        identifier “GLEW_ANGLE_timer_query” is undefined
* E0020        identifier “GLEW_ANGLE_translated_shader_source” is undefined
* E0020        identifier “GLEW_APPLE_aux_depth_stencil” is undefined
* E0020        identifier “GLEW_APPLE_client_storage” is undefined
* E0020        identifier “GLEW_APPLE_clip_distance” is undefined
* E0020        identifier “GLEW_APPLE_color_buffer_packed_float” is undefined
* E0020        identifier “GLEW_APPLE_copy_texture_levels” is undefined
* E0020        identifier “GLEW_APPLE_element_array” is undefined
* E0020        identifier “GLEW_APPLE_fence” is undefined
* E0020        identifier “GLEW_APPLE_float_pixels” is undefined
* E0020        identifier “GLEW_APPLE_flush_buffer_range” is undefined
* E0020        identifier “GLEW_APPLE_framebuffer_multisample” is undefined
* E0020        identifier “GLEW_APPLE_object_purgeable” is undefined
* E0020        identifier “GLEW_APPLE_pixel_buffer” is undefined
* E0020        identifier “GLEW_APPLE_rgb_422” is undefined
* E0020        identifier “GLEW_APPLE_row_bytes” is undefined
* E0020        identifier “GLEW_APPLE_specular_vector” is undefined
* E0020        identifier “GLEW_APPLE_sync” is undefined
* E0020        identifier “GLEW_APPLE_texture_2D_limited_npot” is undefined
* E0020        identifier “GLEW_APPLE_texture_format_BGRA8888” is undefined
* E0020        identifier “GLEW_APPLE_texture_max_level” is undefined
* E0020        identifier “GLEW_APPLE_texture_packed_float” is undefined
* E0020        identifier “GLEW_APPLE_texture_range” is undefined
* E0020        identifier “GLEW_APPLE_transform_hint” is undefined
* E0020        identifier “GLEW_APPLE_vertex_array_object” is undefined
* E0020        identifier “GLEW_APPLE_vertex_array_range” is undefined
* E0020        identifier “GLEW_APPLE_vertex_program_evaluators” is undefined
* E0020        identifier “GLEW_APPLE_ycbcr_422” is undefined
* E0020        identifier “GLEW_ARB_arrays_of_arrays” is undefined
* E0020        identifier “GLEW_ARB_base_instance” is undefined
* E0020        identifier “GLEW_ARB_bindless_texture” is undefined
* E0020        identifier “GLEW_ARB_blend_func_extended” is undefined
* E0020        identifier “GLEW_ARB_buffer_storage” is undefined
* E0020        identifier “GLEW_ARB_cl_event” is undefined
* E0020        identifier “GLEW_ARB_clear_buffer_object” is undefined
* E0020        identifier “GLEW_ARB_clear_texture” is undefined
* E0020        identifier “GLEW_ARB_clip_control” is undefined
* E0020        identifier “GLEW_ARB_color_buffer_float” is undefined
* E0020        identifier “GLEW_ARB_compatibility” is undefined
* E0020        identifier “GLEW_ARB_compressed_texture_pixel_storage” is undefined
* E0020        identifier “GLEW_ARB_compute_shader” is undefined
* E0020        identifier “GLEW_ARB_compute_variable_group_size” is undefined
* E0020        identifier “GLEW_ARB_conditional_render_inverted” is undefined
* E0020        identifier “GLEW_ARB_conservative_depth” is undefined
* E0020        identifier “GLEW_ARB_copy_buffer” is undefined
* E0020        identifier “GLEW_ARB_copy_image” is undefined
* E0020        identifier “GLEW_ARB_cull_distance” is undefined
* E0020        identifier “GLEW_ARB_debug_output” is undefined
* E0020        identifier “GLEW_ARB_depth_buffer_float” is undefined
* E0020        identifier “GLEW_ARB_depth_clamp” is undefined
* E0020        identifier “GLEW_ARB_depth_texture” is undefined
* E0020        identifier “GLEW_ARB_derivative_control” is undefined
* E0020        identifier “GLEW_ARB_direct_state_access” is undefined
* E0020        identifier “GLEW_ARB_draw_buffers” is undefined
* E0020        identifier “GLEW_ARB_draw_buffers_blend” is undefined
* E0020        identifier “GLEW_ARB_draw_elements_base_vertex” is undefined
* E0020        identifier “GLEW_ARB_draw_indirect” is undefined
* E0020        identifier “GLEW_ARB_draw_instanced” is undefined
* E0020        identifier “GLEW_ARB_enhanced_layouts” is undefined
* E0020        identifier “GLEW_ARB_ES2_compatibility” is undefined
* E0020        identifier “GLEW_ARB_ES3_1_compatibility” is undefined
* E0020        identifier “GLEW_ARB_ES3_2_compatibility” is undefined
* E0020        identifier “GLEW_ARB_ES3_compatibility” is undefined
* E0020        identifier “GLEW_ARB_explicit_attrib_location” is undefined
* E0020        identifier “GLEW_ARB_explicit_uniform_location” is undefined
* E0020        identifier “GLEW_ARB_fragment_coord_conventions” is undefined
* E0020        identifier “GLEW_ARB_fragment_layer_viewport” is undefined
* E0020        identifier “GLEW_ARB_fragment_program” is undefined
* E0020        identifier “GLEW_ARB_fragment_program_shadow” is undefined
* E0020        identifier “GLEW_ARB_fragment_shader” is undefined
* E0020        identifier “GLEW_ARB_fragment_shader_interlock” is undefined
* E0020        identifier “GLEW_ARB_framebuffer_no_attachments” is undefined
* E0020        identifier “GLEW_ARB_framebuffer_object” is undefined
* E0020        identifier “GLEW_ARB_framebuffer_sRGB” is undefined
* E0020        identifier “GLEW_ARB_geometry_shader4” is undefined
* E0020        identifier “GLEW_ARB_get_program_binary” is undefined
* E0020        identifier “GLEW_ARB_get_texture_sub_image” is undefined
* E0020        identifier “GLEW_ARB_gl_spirv” is undefined
* E0020        identifier “GLEW_ARB_gpu_shader5” is undefined
* E0020        identifier “GLEW_ARB_gpu_shader_fp64” is undefined
* E0020        identifier “GLEW_ARB_gpu_shader_int64” is undefined
* E0020        identifier “GLEW_ARB_half_float_pixel” is undefined
* E0020        identifier “GLEW_ARB_half_float_vertex” is undefined
* E0020        identifier “GLEW_ARB_imaging” is undefined
* E0020        identifier “GLEW_ARB_indirect_parameters” is undefined
* E0020        identifier “GLEW_ARB_instanced_arrays” is undefined
* E0020        identifier “GLEW_ARB_internalformat_query2” is undefined
* E0020        identifier “GLEW_ARB_internalformat_query” is undefined
* E0020        identifier “GLEW_ARB_invalidate_subdata” is undefined
* E0020        identifier “GLEW_ARB_map_buffer_alignment” is undefined
* E0020        identifier “GLEW_ARB_map_buffer_range” is undefined
* E0020        identifier “GLEW_ARB_matrix_palette” is undefined
* E0020        identifier “GLEW_ARB_multi_bind” is undefined
* E0020        identifier “GLEW_ARB_multi_draw_indirect” is undefined
* E0020        identifier “GLEW_ARB_multisample” is undefined
* E0020        identifier “GLEW_ARB_multitexture” is undefined
* E0020        identifier “GLEW_ARB_occlusion_query2” is undefined
* E0020        identifier “GLEW_ARB_occlusion_query” is undefined
* E0020        identifier “GLEW_ARB_parallel_shader_compile” is undefined
* E0020        identifier “GLEW_ARB_pipeline_statistics_query” is undefined
* E0020        identifier “GLEW_ARB_pixel_buffer_object” is undefined
* E0020        identifier “GLEW_ARB_point_parameters” is undefined
* E0020        identifier “GLEW_ARB_point_sprite” is undefined
* E0020        identifier “GLEW_ARB_polygon_offset_clamp” is undefined
* E0020        identifier “GLEW_ARB_post_depth_coverage” is undefined
* E0020        identifier “GLEW_ARB_program_interface_query” is undefined
* E0020        identifier “GLEW_ARB_provoking_vertex” is undefined
* E0020        identifier “GLEW_ARB_query_buffer_object” is undefined
* E0020        identifier “GLEW_ARB_robust_buffer_access_behavior” is undefined
* E0020        identifier “GLEW_ARB_robustness” is undefined
* E0020        identifier “GLEW_ARB_robustness_application_isolation” is undefined
* E0020        identifier “GLEW_ARB_robustness_share_group_isolation” is undefined
* E0020        identifier “GLEW_ARB_sample_locations” is undefined
* E0020        identifier “GLEW_ARB_sample_shading” is undefined
* E0020        identifier “GLEW_ARB_sampler_objects” is undefined
* E0020        identifier “GLEW_ARB_seamless_cube_map” is undefined
* E0020        identifier “GLEW_ARB_seamless_cubemap_per_texture” is undefined
* E0020        identifier “GLEW_ARB_separate_shader_objects” is undefined
* E0020        identifier “GLEW_ARB_shader_atomic_counter_ops” is undefined
* E0020        identifier “GLEW_ARB_shader_atomic_counters” is undefined
* E0020        identifier “GLEW_ARB_shader_ballot” is undefined
* E0020        identifier “GLEW_ARB_shader_bit_encoding” is undefined
* E0020        identifier “GLEW_ARB_shader_clock” is undefined
* E0020        identifier “GLEW_ARB_shader_draw_parameters” is undefined
* E0020        identifier “GLEW_ARB_shader_group_vote” is undefined
* E0020        identifier “GLEW_ARB_shader_image_load_store” is undefined
* E0020        identifier “GLEW_ARB_shader_image_size” is undefined
* E0020        identifier “GLEW_ARB_shader_objects” is undefined
* E0020        identifier “GLEW_ARB_shader_precision” is undefined
* E0020        identifier “GLEW_ARB_shader_stencil_export” is undefined
* E0020        identifier “GLEW_ARB_shader_storage_buffer_object” is undefined
* E0020        identifier “GLEW_ARB_shader_subroutine” is undefined
* E0020        identifier “GLEW_ARB_shader_texture_image_samples” is undefined
* E0020        identifier “GLEW_ARB_shader_texture_lod” is undefined
* E0020        identifier “GLEW_ARB_shader_viewport_layer_array” is undefined
* E0020        identifier “GLEW_ARB_shading_language_100” is undefined
* E0020        identifier “GLEW_ARB_shading_language_420pack” is undefined
* E0020        identifier “GLEW_ARB_shading_language_include” is undefined
* E0020        identifier “GLEW_ARB_shading_language_packing” is undefined
* E0020        identifier “GLEW_ARB_shadow” is undefined
* E0020        identifier “GLEW_ARB_shadow_ambient” is undefined
* E0020        identifier “GLEW_ARB_sparse_buffer” is undefined
* E0020        identifier “GLEW_ARB_sparse_texture2” is undefined
* E0020        identifier “GLEW_ARB_sparse_texture” is undefined
* E0020        identifier “GLEW_ARB_sparse_texture_clamp” is undefined
* E0020        identifier “GLEW_ARB_spirv_extensions” is undefined
* E0020        identifier “GLEW_ARB_stencil_texturing” is undefined
* E0020        identifier “GLEW_ARB_sync” is undefined
* E0020        identifier “GLEW_ARB_tessellation_shader” is undefined
* E0020        identifier “GLEW_ARB_texture_barrier” is undefined
* E0020        identifier “GLEW_ARB_texture_border_clamp” is undefined
* E0020        identifier “GLEW_ARB_texture_buffer_object” is undefined
* E0020        identifier “GLEW_ARB_texture_buffer_object_rgb32” is undefined
* E0020        identifier “GLEW_ARB_texture_buffer_range” is undefined
* E0020        identifier “GLEW_ARB_texture_compression” is undefined
* E0020        identifier “GLEW_ARB_texture_compression_bptc” is undefined
* E0020        identifier “GLEW_ARB_texture_compression_rgtc” is undefined
* E0020        identifier “GLEW_ARB_texture_cube_map” is undefined
* E0020        identifier “GLEW_ARB_texture_cube_map_array” is undefined
* E0020        identifier “GLEW_ARB_texture_env_add” is undefined
* E0020        identifier “GLEW_ARB_texture_env_combine” is undefined
* E0020        identifier “GLEW_ARB_texture_env_crossbar” is undefined
* E0020        identifier “GLEW_ARB_texture_env_dot3” is undefined
* E0020        identifier “GLEW_ARB_texture_filter_anisotropic” is undefined
* E0020        identifier “GLEW_ARB_texture_filter_minmax” is undefined
* E0020        identifier “GLEW_ARB_texture_float” is undefined
* E0020        identifier “GLEW_ARB_texture_gather” is undefined
* E0020        identifier “GLEW_ARB_texture_mirror_clamp_to_edge” is undefined
* E0020        identifier “GLEW_ARB_texture_mirrored_repeat” is undefined
* E0020        identifier “GLEW_ARB_texture_multisample” is undefined
* E0020        identifier “GLEW_ARB_texture_non_power_of_two” is undefined
* E0020        identifier “GLEW_ARB_texture_query_levels” is undefined
* E0020        identifier “GLEW_ARB_texture_query_lod” is undefined
* E0020        identifier “GLEW_ARB_texture_rectangle” is undefined
* E0020        identifier “GLEW_ARB_texture_rg” is undefined
* E0020        identifier “GLEW_ARB_texture_rgb10_a2ui” is undefined
* E0020        identifier “GLEW_ARB_texture_stencil8” is undefined
* E0020        identifier “GLEW_ARB_texture_storage” is undefined
* E0020        identifier “GLEW_ARB_texture_storage_multisample” is undefined
* E0020        identifier “GLEW_ARB_texture_swizzle” is undefined
* E0020        identifier “GLEW_ARB_texture_view” is undefined
* E0020        identifier “GLEW_ARB_timer_query” is undefined
* E0020        identifier “GLEW_ARB_transform_feedback2” is undefined
* E0020        identifier “GLEW_ARB_transform_feedback3” is undefined
* E0020        identifier “GLEW_ARB_transform_feedback_instanced” is undefined
* E0020        identifier “GLEW_ARB_transform_feedback_overflow_query” is undefined
* E0020        identifier “GLEW_ARB_transpose_matrix” is undefined
* E0020        identifier “GLEW_ARB_uniform_buffer_object” is undefined
* E0020        identifier “GLEW_ARB_vertex_array_bgra” is undefined
* E0020        identifier “GLEW_ARB_vertex_array_object” is undefined
* E0020        identifier “GLEW_ARB_vertex_attrib_64bit” is undefined
* E0020        identifier “GLEW_ARB_vertex_attrib_binding” is undefined
* E0020        identifier “GLEW_ARB_vertex_blend” is undefined
* E0020        identifier “GLEW_ARB_vertex_buffer_object” is undefined
* E0020        identifier “GLEW_ARB_vertex_program” is undefined
* E0020        identifier “GLEW_ARB_vertex_shader” is undefined
* E0020        identifier “GLEW_ARB_vertex_type_2_10_10_10_rev” is undefined
* E0020        identifier “GLEW_ARB_vertex_type_10f_11f_11f_rev” is undefined
* E0020        identifier “GLEW_ARB_viewport_array” is undefined
* E0020        identifier “GLEW_ARB_window_pos” is undefined
* E0020        identifier “GLEW_ARM_mali_program_binary” is undefined
* E0020        identifier “GLEW_ARM_mali_shader_binary” is undefined
* E0020        identifier “GLEW_ARM_rgba8” is undefined
* E0020        identifier “GLEW_ARM_shader_framebuffer_fetch” is undefined
* E0020        identifier “GLEW_ARM_shader_framebuffer_fetch_depth_stencil” is undefined
* E0020        identifier “GLEW_ATI_draw_buffers” is undefined
* E0020        identifier “GLEW_ATI_element_array” is undefined
* E0020        identifier “GLEW_ATI_envmap_bumpmap” is undefined
* E0020        identifier “GLEW_ATI_fragment_shader” is undefined
* E0020        identifier “GLEW_ATI_map_object_buffer” is undefined
* E0020        identifier “GLEW_ATI_meminfo” is undefined
* E0020        identifier “GLEW_ATI_pn_triangles” is undefined
* E0020        identifier “GLEW_ATI_separate_stencil” is undefined
* E0020        identifier “GLEW_ATI_shader_texture_lod” is undefined
* E0020        identifier “GLEW_ATI_text_fragment_shader” is undefined
* E0020        identifier “GLEW_ATI_texture_compression_3dc” is undefined
* E0020        identifier “GLEW_ATI_texture_env_combine3” is undefined
* E0020        identifier “GLEW_ATI_texture_float” is undefined
* E0020        identifier “GLEW_ATI_texture_mirror_once” is undefined
* E0020        identifier “GLEW_ATI_vertex_array_object” is undefined
* E0020        identifier “GLEW_ATI_vertex_attrib_array_object” is undefined
* E0020        identifier “GLEW_ATI_vertex_streams” is undefined
* E0020        identifier “GLEW_ATIX_point_sprites” is undefined
* E0020        identifier “GLEW_ATIX_texture_env_combine3” is undefined
* E0020        identifier “GLEW_ATIX_texture_env_route” is undefined
* E0020        identifier “GLEW_ATIX_vertex_shader_output_point_size” is undefined
* E0020        identifier “GLEW_EGL_KHR_context_flush_control” is undefined
* E0020        identifier “GLEW_EGL_NV_robustness_video_memory_purge” is undefined
* E0020        identifier “GLEW_ERROR_GL_VERSION_10_ONLY” is undefined
* E0020        identifier “GLEW_ERROR_GLX_VERSION_11_ONLY” is undefined
* E0020        identifier “GLEW_ERROR_NO_GL_VERSION” is undefined
* E0020        identifier “GLEW_ERROR_NO_GLX_DISPLAY” is undefined
* E0020        identifier “GLEW_EXT_422_pixels” is undefined
* E0020        identifier “GLEW_EXT_abgr” is undefined
* E0020        identifier “GLEW_EXT_base_instance” is undefined
* E0020        identifier “GLEW_EXT_bgra” is undefined
* E0020        identifier “GLEW_EXT_bindable_uniform” is undefined
* E0020        identifier “GLEW_EXT_blend_color” is undefined
* E0020        identifier “GLEW_EXT_blend_equation_separate” is undefined
* E0020        identifier “GLEW_EXT_blend_func_extended” is undefined
* E0020        identifier “GLEW_EXT_blend_func_separate” is undefined
* E0020        identifier “GLEW_EXT_blend_logic_op” is undefined
* E0020        identifier “GLEW_EXT_blend_minmax” is undefined
* E0020        identifier “GLEW_EXT_blend_subtract” is undefined
* E0020        identifier “GLEW_EXT_buffer_storage” is undefined
* E0020        identifier “GLEW_EXT_Cg_shader” is undefined
* E0020        identifier “GLEW_EXT_clear_texture” is undefined
* E0020        identifier “GLEW_EXT_clip_cull_distance” is undefined
* E0020        identifier “GLEW_EXT_clip_volume_hint” is undefined
* E0020        identifier “GLEW_EXT_cmyka” is undefined
* E0020        identifier “GLEW_EXT_color_buffer_float” is undefined
* E0020        identifier “GLEW_EXT_color_buffer_half_float” is undefined
* E0020        identifier “GLEW_EXT_color_subtable” is undefined
* E0020        identifier “GLEW_EXT_compiled_vertex_array” is undefined
* E0020        identifier “GLEW_EXT_compressed_ETC1_RGB8_sub_texture” is undefined
* E0020        identifier “GLEW_EXT_conservative_depth” is undefined
* E0020        identifier “GLEW_EXT_convolution” is undefined
* E0020        identifier “GLEW_EXT_coordinate_frame” is undefined
* E0020        identifier “GLEW_EXT_copy_image” is undefined
* E0020        identifier “GLEW_EXT_copy_texture” is undefined
* E0020        identifier “GLEW_EXT_cull_vertex” is undefined
* E0020        identifier “GLEW_EXT_debug_label” is undefined
* E0020        identifier “GLEW_EXT_debug_marker” is undefined
* E0020        identifier “GLEW_EXT_depth_bounds_test” is undefined
* E0020        identifier “GLEW_EXT_direct_state_access” is undefined
* E0020        identifier “GLEW_EXT_discard_framebuffer” is undefined
* E0020        identifier “GLEW_EXT_draw_buffers2” is undefined
* E0020        identifier “GLEW_EXT_draw_buffers” is undefined
* E0020        identifier “GLEW_EXT_draw_buffers_indexed” is undefined
* E0020        identifier “GLEW_EXT_draw_elements_base_vertex” is undefined
* E0020        identifier “GLEW_EXT_draw_instanced” is undefined
* E0020        identifier “GLEW_EXT_draw_range_elements” is undefined
* E0020        identifier “GLEW_EXT_EGL_image_array” is undefined
* E0020        identifier “GLEW_EXT_external_buffer” is undefined
* E0020        identifier “GLEW_EXT_float_blend” is undefined
* E0020        identifier “GLEW_EXT_fog_coord” is undefined
* E0020        identifier “GLEW_EXT_frag_depth” is undefined
* E0020        identifier “GLEW_EXT_fragment_lighting” is undefined
* E0020        identifier “GLEW_EXT_framebuffer_blit” is undefined
* E0020        identifier “GLEW_EXT_framebuffer_multisample” is undefined
* E0020        identifier “GLEW_EXT_framebuffer_multisample_blit_scaled” is undefined
* E0020        identifier “GLEW_EXT_framebuffer_object” is undefined
* E0020        identifier “GLEW_EXT_framebuffer_sRGB” is undefined
* E0020        identifier “GLEW_EXT_geometry_point_size” is undefined
* E0020        identifier “GLEW_EXT_geometry_shader4” is undefined
* E0020        identifier “GLEW_EXT_geometry_shader” is undefined
* E0020        identifier “GLEW_EXT_gpu_program_parameters” is undefined
* E0020        identifier “GLEW_EXT_gpu_shader4” is undefined
* E0020        identifier “GLEW_EXT_gpu_shader5” is undefined
* E0020        identifier “GLEW_EXT_histogram” is undefined
* E0020        identifier “GLEW_EXT_index_array_formats” is undefined
* E0020        identifier “GLEW_EXT_index_func” is undefined
* E0020        identifier “GLEW_EXT_index_material” is undefined
* E0020        identifier “GLEW_EXT_index_texture” is undefined
* E0020        identifier “GLEW_EXT_instanced_arrays” is undefined
* E0020        identifier “GLEW_EXT_light_texture” is undefined
* E0020        identifier “GLEW_EXT_map_buffer_range” is undefined
* E0020        identifier “GLEW_EXT_memory_object” is undefined
* E0020        identifier “GLEW_EXT_memory_object_fd” is undefined
* E0020        identifier “GLEW_EXT_memory_object_win32” is undefined
* E0020        identifier “GLEW_EXT_misc_attribute” is undefined
* E0020        identifier “GLEW_EXT_multi_draw_arrays” is undefined
* E0020        identifier “GLEW_EXT_multi_draw_indirect” is undefined
* E0020        identifier “GLEW_EXT_multiple_textures” is undefined
* E0020        identifier “GLEW_EXT_multisample” is undefined
* E0020        identifier “GLEW_EXT_multisample_compatibility” is undefined
* E0020        identifier “GLEW_EXT_multisampled_render_to_texture2” is undefined
* E0020        identifier “GLEW_EXT_multisampled_render_to_texture” is undefined
* E0020        identifier “GLEW_EXT_multiview_draw_buffers” is undefined
* E0020        identifier “GLEW_EXT_packed_depth_stencil” is undefined
* E0020        identifier “GLEW_EXT_packed_float” is undefined
* E0020        identifier “GLEW_EXT_packed_pixels” is undefined
* E0020        identifier “GLEW_EXT_paletted_texture” is undefined
* E0020        identifier “GLEW_EXT_pixel_buffer_object” is undefined
* E0020        identifier “GLEW_EXT_pixel_transform” is undefined
* E0020        identifier “GLEW_EXT_pixel_transform_color_table” is undefined
* E0020        identifier “GLEW_EXT_point_parameters” is undefined
* E0020        identifier “GLEW_EXT_polygon_offset” is undefined
* E0020        identifier “GLEW_EXT_polygon_offset_clamp” is undefined
* E0020        identifier “GLEW_EXT_post_depth_coverage” is undefined
* E0020        identifier “GLEW_EXT_provoking_vertex” is undefined
* E0020        identifier “GLEW_EXT_pvrtc_sRGB” is undefined
* E0020        identifier “GLEW_EXT_raster_multisample” is undefined
* E0020        identifier “GLEW_EXT_read_format_bgra” is undefined
* E0020        identifier “GLEW_EXT_render_snorm” is undefined
* E0020        identifier “GLEW_EXT_rescale_normal” is undefined
* E0020        identifier “GLEW_EXT_scene_marker” is undefined
* E0020        identifier “GLEW_EXT_secondary_color” is undefined
* E0020        identifier “GLEW_EXT_semaphore” is undefined
* E0020        identifier “GLEW_EXT_semaphore_fd” is undefined
* E0020        identifier “GLEW_EXT_semaphore_win32” is undefined
* E0020        identifier “GLEW_EXT_separate_shader_objects” is undefined
* E0020        identifier “GLEW_EXT_separate_specular_color” is undefined
* E0020        identifier “GLEW_EXT_shader_framebuffer_fetch” is undefined
* E0020        identifier “GLEW_EXT_shader_group_vote” is undefined
* E0020        identifier “GLEW_EXT_shader_image_load_formatted” is undefined
* E0020        identifier “GLEW_EXT_shader_image_load_store” is undefined
* E0020        identifier “GLEW_EXT_shader_implicit_conversions” is undefined
* E0020        identifier “GLEW_EXT_shader_integer_mix” is undefined
* E0020        identifier “GLEW_EXT_shader_io_blocks” is undefined
* E0020        identifier “GLEW_EXT_shader_non_constant_global_initializers” is undefined
* E0020        identifier “GLEW_EXT_shader_pixel_local_storage2” is undefined
* E0020        identifier “GLEW_EXT_shader_pixel_local_storage” is undefined
* E0020        identifier “GLEW_EXT_shader_texture_lod” is undefined
* E0020        identifier “GLEW_EXT_shadow_funcs” is undefined
* E0020        identifier “GLEW_EXT_shadow_samplers” is undefined
* E0020        identifier “GLEW_EXT_shared_texture_palette” is undefined
* E0020        identifier “GLEW_EXT_sparse_texture2” is undefined
* E0020        identifier “GLEW_EXT_sparse_texture” is undefined
* E0020        identifier “GLEW_EXT_sRGB” is undefined
* E0020        identifier “GLEW_EXT_sRGB_write_control” is undefined
* E0020        identifier “GLEW_EXT_stencil_clear_tag” is undefined
* E0020        identifier “GLEW_EXT_stencil_two_side” is undefined
* E0020        identifier “GLEW_EXT_stencil_wrap” is undefined
* E0020        identifier “GLEW_EXT_subtexture” is undefined
* E0020        identifier “GLEW_EXT_texture3D” is undefined
* E0020        identifier “GLEW_EXT_texture” is undefined
* E0020        identifier “GLEW_EXT_texture_array” is undefined
* E0020        identifier “GLEW_EXT_texture_buffer_object” is undefined
* E0020        identifier “GLEW_EXT_texture_compression_astc_decode_mode” is undefined
* E0020        identifier “GLEW_EXT_texture_compression_astc_decode_mode_rgb9e5” is undefined
* E0020        identifier “GLEW_EXT_texture_compression_bptc” is undefined
* E0020        identifier “GLEW_EXT_texture_compression_dxt1” is undefined
* E0020        identifier “GLEW_EXT_texture_compression_latc” is undefined
* E0020        identifier “GLEW_EXT_texture_compression_rgtc” is undefined
* E0020        identifier “GLEW_EXT_texture_compression_s3tc” is undefined
* E0020        identifier “GLEW_EXT_texture_cube_map” is undefined
* E0020        identifier “GLEW_EXT_texture_cube_map_array” is undefined
* E0020        identifier “GLEW_EXT_texture_edge_clamp” is undefined
* E0020        identifier “GLEW_EXT_texture_env” is undefined
* E0020        identifier “GLEW_EXT_texture_env_add” is undefined
* E0020        identifier “GLEW_EXT_texture_env_combine” is undefined
* E0020        identifier “GLEW_EXT_texture_env_dot3” is undefined
* E0020        identifier “GLEW_EXT_texture_filter_anisotropic” is undefined
* E0020        identifier “GLEW_EXT_texture_filter_minmax” is undefined
* E0020        identifier “GLEW_EXT_texture_format_BGRA8888” is undefined
* E0020        identifier “GLEW_EXT_texture_integer” is undefined
* E0020        identifier “GLEW_EXT_texture_lod_bias” is undefined
* E0020        identifier “GLEW_EXT_texture_mirror_clamp” is undefined
* E0020        identifier “GLEW_EXT_texture_norm16” is undefined
* E0020        identifier “GLEW_EXT_texture_object” is undefined
* E0020        identifier “GLEW_EXT_texture_perturb_normal” is undefined
* E0020        identifier “GLEW_EXT_texture_rectangle” is undefined
* E0020        identifier “GLEW_EXT_texture_rg” is undefined
* E0020        identifier “GLEW_EXT_texture_shared_exponent” is undefined
* E0020        identifier “GLEW_EXT_texture_snorm” is undefined
* E0020        identifier “GLEW_EXT_texture_sRGB” is undefined
* E0020        identifier “GLEW_EXT_texture_sRGB_decode” is undefined
* E0020        identifier “GLEW_EXT_texture_sRGB_R8” is undefined
* E0020        identifier “GLEW_EXT_texture_sRGB_RG8” is undefined
* E0020        identifier “GLEW_EXT_texture_storage” is undefined
* E0020        identifier “GLEW_EXT_texture_swizzle” is undefined
* E0020        identifier “GLEW_EXT_texture_type_2_10_10_10_REV” is undefined
* E0020        identifier “GLEW_EXT_texture_view” is undefined
* E0020        identifier “GLEW_EXT_timer_query” is undefined
* E0020        identifier “GLEW_EXT_transform_feedback” is undefined
* E0020        identifier “GLEW_EXT_unpack_subimage” is undefined
* E0020        identifier “GLEW_EXT_vertex_array” is undefined
* E0020        identifier “GLEW_EXT_vertex_array_bgra” is undefined
* E0020        identifier “GLEW_EXT_vertex_array_setXXX” is undefined
* E0020        identifier “GLEW_EXT_vertex_attrib_64bit” is undefined
* E0020        identifier “GLEW_EXT_vertex_shader” is undefined
* E0020        identifier “GLEW_EXT_vertex_weighting” is undefined
* E0020        identifier “GLEW_EXT_win32_keyed_mutex” is undefined
* E0020        identifier “GLEW_EXT_window_rectangles” is undefined
* E0020        identifier “GLEW_EXT_x11_sync_object” is undefined
* E0020        identifier “GLEW_EXT_YUV_target” is undefined
* E0020        identifier “GLEW_GET_FUN” is undefined
* E0020        identifier “GLEW_GET_VAR” is undefined
* E0020        identifier “GLEW_GREMEDY_frame_terminator” is undefined
* E0020        identifier “GLEW_GREMEDY_string_marker” is undefined
* E0020        identifier “GLEW_HP_convolution_border_modes” is undefined
* E0020        identifier “GLEW_HP_image_transform” is undefined
* E0020        identifier “GLEW_HP_occlusion_test” is undefined
* E0020        identifier “GLEW_HP_texture_lighting” is undefined
* E0020        identifier “GLEW_IBM_cull_vertex” is undefined
* E0020        identifier “GLEW_IBM_multimode_draw_arrays” is undefined
* E0020        identifier “GLEW_IBM_rasterpos_clip” is undefined
* E0020        identifier “GLEW_IBM_static_data” is undefined
* E0020        identifier “GLEW_IBM_texture_mirrored_repeat” is undefined
* E0020        identifier “GLEW_IBM_vertex_array_lists” is undefined
* E0020        identifier “GLEW_INGR_color_clamp” is undefined
* E0020        identifier “GLEW_INGR_interlace_read” is undefined
* E0020        identifier “GLEW_INTEL_conservative_rasterization” is undefined
* E0020        identifier “GLEW_INTEL_fragment_shader_ordering” is undefined
* E0020        identifier “GLEW_INTEL_framebuffer_CMAA” is undefined
* E0020        identifier “GLEW_INTEL_map_texture” is undefined
* E0020        identifier “GLEW_INTEL_parallel_arrays” is undefined
* E0020        identifier “GLEW_INTEL_performance_query” is undefined
* E0020        identifier “GLEW_INTEL_texture_scissor” is undefined
* E0020        identifier “GLEW_KHR_blend_equation_advanced” is undefined
* E0020        identifier “GLEW_KHR_blend_equation_advanced_coherent” is undefined
* E0020        identifier “GLEW_KHR_context_flush_control” is undefined
* E0020        identifier “GLEW_KHR_debug” is undefined
* E0020        identifier “GLEW_KHR_no_error” is undefined
* E0020        identifier “GLEW_KHR_parallel_shader_compile” is undefined
* E0020        identifier “GLEW_KHR_robust_buffer_access_behavior” is undefined
* E0020        identifier “GLEW_KHR_robustness” is undefined
* E0020        identifier “GLEW_KHR_texture_compression_astc_hdr” is undefined
* E0020        identifier “GLEW_KHR_texture_compression_astc_ldr” is undefined
* E0020        identifier “GLEW_KHR_texture_compression_astc_sliced_3d” is undefined
* E0020        identifier “GLEW_KTX_buffer_region” is undefined
* E0020        identifier “GLEW_MESA_pack_invert” is undefined
* E0020        identifier “GLEW_MESA_resize_buffers” is undefined
* E0020        identifier “GLEW_MESA_shader_integer_functions” is undefined
* E0020        identifier “GLEW_MESA_window_pos” is undefined
* E0020        identifier “GLEW_MESA_ycbcr_texture” is undefined
* E0020        identifier “GLEW_MESAX_texture_stack” is undefined
* E0020        identifier “GLEW_NO_ERROR” is undefined
* E0020        identifier “GLEW_NV_3dvision_settings” is undefined
* E0020        identifier “GLEW_NV_alpha_to_coverage_dither_control” is undefined
* E0020        identifier “GLEW_NV_bgr” is undefined
* E0020        identifier “GLEW_NV_bindless_multi_draw_indirect” is undefined
* E0020        identifier “GLEW_NV_bindless_multi_draw_indirect_count” is undefined
* E0020        identifier “GLEW_NV_bindless_texture” is undefined
* E0020        identifier “GLEW_NV_blend_equation_advanced” is undefined
* E0020        identifier “GLEW_NV_blend_equation_advanced_coherent” is undefined
* E0020        identifier “GLEW_NV_blend_minmax_factor” is undefined
* E0020        identifier “GLEW_NV_blend_square” is undefined
* E0020        identifier “GLEW_NV_clip_space_w_scaling” is undefined
* E0020        identifier “GLEW_NV_command_list” is undefined
* E0020        identifier “GLEW_NV_compute_program5” is undefined
* E0020        identifier “GLEW_NV_conditional_render” is undefined
* E0020        identifier “GLEW_NV_conservative_raster” is undefined
* E0020        identifier “GLEW_NV_conservative_raster_dilate” is undefined
* E0020        identifier “GLEW_NV_conservative_raster_pre_snap_triangles” is undefined
* E0020        identifier “GLEW_NV_copy_buffer” is undefined
* E0020        identifier “GLEW_NV_copy_depth_to_color” is undefined
* E0020        identifier “GLEW_NV_copy_image” is undefined
* E0020        identifier “GLEW_NV_deep_texture3D” is undefined
* E0020        identifier “GLEW_NV_depth_buffer_float” is undefined
* E0020        identifier “GLEW_NV_depth_clamp” is undefined
* E0020        identifier “GLEW_NV_depth_range_unclamped” is undefined
* E0020        identifier “GLEW_NV_draw_buffers” is undefined
* E0020        identifier “GLEW_NV_draw_instanced” is undefined
* E0020        identifier “GLEW_NV_draw_texture” is undefined
* E0020        identifier “GLEW_NV_draw_vulkan_image” is undefined
* E0020        identifier “GLEW_NV_EGL_stream_consumer_external” is undefined
* E0020        identifier “GLEW_NV_evaluators” is undefined
* E0020        identifier “GLEW_NV_explicit_attrib_location” is undefined
* E0020        identifier “GLEW_NV_explicit_multisample” is undefined
* E0020        identifier “GLEW_NV_fbo_color_attachments” is undefined
* E0020        identifier “GLEW_NV_fence” is undefined
* E0020        identifier “GLEW_NV_fill_rectangle” is undefined
* E0020        identifier “GLEW_NV_float_buffer” is undefined
* E0020        identifier “GLEW_NV_fog_distance” is undefined
* E0020        identifier “GLEW_NV_fragment_coverage_to_color” is undefined
* E0020        identifier “GLEW_NV_fragment_program2” is undefined
* E0020        identifier “GLEW_NV_fragment_program4” is undefined
* E0020        identifier “GLEW_NV_fragment_program” is undefined
* E0020        identifier “GLEW_NV_fragment_program_option” is undefined
* E0020        identifier “GLEW_NV_fragment_shader_interlock” is undefined
* E0020        identifier “GLEW_NV_framebuffer_blit” is undefined
* E0020        identifier “GLEW_NV_framebuffer_mixed_samples” is undefined
* E0020        identifier “GLEW_NV_framebuffer_multisample” is undefined
* E0020        identifier “GLEW_NV_framebuffer_multisample_coverage” is undefined
* E0020        identifier “GLEW_NV_generate_mipmap_sRGB” is undefined
* E0020        identifier “GLEW_NV_geometry_program4” is undefined
* E0020        identifier “GLEW_NV_geometry_shader4” is undefined
* E0020        identifier “GLEW_NV_geometry_shader_passthrough” is undefined
* E0020        identifier “GLEW_NV_gpu_multicast” is undefined
* E0020        identifier “GLEW_NV_gpu_program4” is undefined
* E0020        identifier “GLEW_NV_gpu_program5” is undefined
* E0020        identifier “GLEW_NV_gpu_program5_mem_extended” is undefined
* E0020        identifier “GLEW_NV_gpu_program_fp64” is undefined
* E0020        identifier “GLEW_NV_gpu_shader5” is undefined
* E0020        identifier “GLEW_NV_half_float” is undefined
* E0020        identifier “GLEW_NV_image_formats” is undefined
* E0020        identifier “GLEW_NV_instanced_arrays” is undefined
* E0020        identifier “GLEW_NV_internalformat_sample_query” is undefined
* E0020        identifier “GLEW_NV_light_max_exponent” is undefined
* E0020        identifier “GLEW_NV_multisample_coverage” is undefined
* E0020        identifier “GLEW_NV_multisample_filter_hint” is undefined
* E0020        identifier “GLEW_NV_non_square_matrices” is undefined
* E0020        identifier “GLEW_NV_occlusion_query” is undefined
* E0020        identifier “GLEW_NV_pack_subimage” is undefined
* E0020        identifier “GLEW_NV_packed_depth_stencil” is undefined
* E0020        identifier “GLEW_NV_packed_float” is undefined
* E0020        identifier “GLEW_NV_packed_float_linear” is undefined
* E0020        identifier “GLEW_NV_parameter_buffer_object2” is undefined
* E0020        identifier “GLEW_NV_parameter_buffer_object” is undefined
* E0020        identifier “GLEW_NV_path_rendering” is undefined
* E0020        identifier “GLEW_NV_path_rendering_shared_edge” is undefined
* E0020        identifier “GLEW_NV_pixel_buffer_object” is undefined
* E0020        identifier “GLEW_NV_pixel_data_range” is undefined
* E0020        identifier “GLEW_NV_platform_binary” is undefined
* E0020        identifier “GLEW_NV_point_sprite” is undefined
* E0020        identifier “GLEW_NV_polygon_mode” is undefined
* E0020        identifier “GLEW_NV_present_video” is undefined
* E0020        identifier “GLEW_NV_primitive_restart” is undefined
* E0020        identifier “GLEW_NV_read_depth” is undefined
* E0020        identifier “GLEW_NV_read_depth_stencil” is undefined
* E0020        identifier “GLEW_NV_read_stencil” is undefined
* E0020        identifier “GLEW_NV_register_combiners2” is undefined
* E0020        identifier “GLEW_NV_register_combiners” is undefined
* E0020        identifier “GLEW_NV_robustness_video_memory_purge” is undefined
* E0020        identifier “GLEW_NV_sample_locations” is undefined
* E0020        identifier “GLEW_NV_sample_mask_override_coverage” is undefined
* E0020        identifier “GLEW_NV_shader_atomic_counters” is undefined
* E0020        identifier “GLEW_NV_shader_atomic_float64” is undefined
* E0020        identifier “GLEW_NV_shader_atomic_float” is undefined
* E0020        identifier “GLEW_NV_shader_atomic_fp16_vector” is undefined
* E0020        identifier “GLEW_NV_shader_atomic_int64” is undefined
* E0020        identifier “GLEW_NV_shader_buffer_load” is undefined
* E0020        identifier “GLEW_NV_shader_noperspective_interpolation” is undefined
* E0020        identifier “GLEW_NV_shader_storage_buffer_object” is undefined
* E0020        identifier “GLEW_NV_shader_thread_group” is undefined
* E0020        identifier “GLEW_NV_shader_thread_shuffle” is undefined
* E0020        identifier “GLEW_NV_shadow_samplers_array” is undefined
* E0020        identifier “GLEW_NV_shadow_samplers_cube” is undefined
* E0020        identifier “GLEW_NV_sRGB_formats” is undefined
* E0020        identifier “GLEW_NV_stereo_view_rendering” is undefined
* E0020        identifier “GLEW_NV_tessellation_program5” is undefined
* E0020        identifier “GLEW_NV_texgen_emboss” is undefined
* E0020        identifier “GLEW_NV_texgen_reflection” is undefined
* E0020        identifier “GLEW_NV_texture_array” is undefined
* E0020        identifier “GLEW_NV_texture_barrier” is undefined
* E0020        identifier “GLEW_NV_texture_border_clamp” is undefined
* E0020        identifier “GLEW_NV_texture_compression_latc” is undefined
* E0020        identifier “GLEW_NV_texture_compression_s3tc” is undefined
* E0020        identifier “GLEW_NV_texture_compression_s3tc_update” is undefined
* E0020        identifier “GLEW_NV_texture_compression_vtc” is undefined
* E0020        identifier “GLEW_NV_texture_env_combine4” is undefined
* E0020        identifier “GLEW_NV_texture_expand_normal” is undefined
* E0020        identifier “GLEW_NV_texture_multisample” is undefined
* E0020        identifier “GLEW_NV_texture_npot_2D_mipmap” is undefined
* E0020        identifier “GLEW_NV_texture_rectangle” is undefined
* E0020        identifier “GLEW_NV_texture_rectangle_compressed” is undefined
* E0020        identifier “GLEW_NV_texture_shader2” is undefined
* E0020        identifier “GLEW_NV_texture_shader3” is undefined
* E0020        identifier “GLEW_NV_texture_shader” is undefined
* E0020        identifier “GLEW_NV_transform_feedback2” is undefined
* E0020        identifier “GLEW_NV_transform_feedback” is undefined
* E0020        identifier “GLEW_NV_uniform_buffer_unified_memory” is undefined
* E0020        identifier “GLEW_NV_vdpau_interop” is undefined
* E0020        identifier “GLEW_NV_vertex_array_range2” is undefined
* E0020        identifier “GLEW_NV_vertex_array_range” is undefined
* E0020        identifier “GLEW_NV_vertex_attrib_integer_64bit” is undefined
* E0020        identifier “GLEW_NV_vertex_buffer_unified_memory” is undefined
* E0020        identifier “GLEW_NV_vertex_program1_1” is undefined
* E0020        identifier “GLEW_NV_vertex_program2” is undefined
* E0020        identifier “GLEW_NV_vertex_program2_option” is undefined
* E0020        identifier “GLEW_NV_vertex_program3” is undefined
* E0020        identifier “GLEW_NV_vertex_program4” is undefined
* E0020        identifier “GLEW_NV_vertex_program” is undefined
* E0020        identifier “GLEW_NV_video_capture” is undefined
* E0020        identifier “GLEW_NV_viewport_array2” is undefined
* E0020        identifier “GLEW_NV_viewport_array” is undefined
* E0020        identifier “GLEW_NV_viewport_swizzle” is undefined
* E0020        identifier “GLEW_NVX_blend_equation_advanced_multi_draw_buffers” is undefined
* E0020        identifier “GLEW_NVX_conditional_render” is undefined
* E0020        identifier “GLEW_NVX_gpu_memory_info” is undefined
* E0020        identifier “GLEW_NVX_linked_gpu_multicast” is undefined
* E0020        identifier “GLEW_OES_byte_coordinates” is undefined
* E0020        identifier “GLEW_OK” is undefined
* E0020        identifier “GLEW_OML_interlace” is undefined
* E0020        identifier “GLEW_OML_resample” is undefined
* E0020        identifier “GLEW_OML_subsample” is undefined
* E0020        identifier “GLEW_OVR_multiview2” is undefined
* E0020        identifier “GLEW_OVR_multiview” is undefined
* E0020        identifier “GLEW_OVR_multiview_multisampled_render_to_texture” is undefined
* E0020        identifier “GLEW_PGI_misc_hints” is undefined
* E0020        identifier “GLEW_PGI_vertex_hints” is undefined
* E0020        identifier “GLEW_QCOM_alpha_test” is undefined
* E0020        identifier “GLEW_QCOM_binning_control” is undefined
* E0020        identifier “GLEW_QCOM_driver_control” is undefined
* E0020        identifier “GLEW_QCOM_extended_get2” is undefined
* E0020        identifier “GLEW_QCOM_extended_get” is undefined
* E0020        identifier “GLEW_QCOM_framebuffer_foveated” is undefined
* E0020        identifier “GLEW_QCOM_perfmon_global_mode” is undefined
* E0020        identifier “GLEW_QCOM_shader_framebuffer_fetch_noncoherent” is undefined
* E0020        identifier “GLEW_QCOM_tiled_rendering” is undefined
* E0020        identifier “GLEW_QCOM_writeonly_rendering” is undefined
* E0020        identifier “GLEW_REGAL_enable” is undefined
* E0020        identifier “GLEW_REGAL_error_string” is undefined
* E0020        identifier “GLEW_REGAL_ES1_0_compatibility” is undefined
* E0020        identifier “GLEW_REGAL_ES1_1_compatibility” is undefined
* E0020        identifier “GLEW_REGAL_extension_query” is undefined
* E0020        identifier “GLEW_REGAL_log” is undefined
* E0020        identifier “GLEW_REGAL_proc_address” is undefined
* E0020        identifier “GLEW_REND_screen_coordinates” is undefined
* E0020        identifier “GLEW_S3_s3tc” is undefined
* E0020        identifier “GLEW_SGI_color_matrix” is undefined
* E0020        identifier “GLEW_SGI_color_table” is undefined
* E0020        identifier “GLEW_SGI_complex” is undefined
* E0020        identifier “GLEW_SGI_complex_type” is undefined
* E0020        identifier “GLEW_SGI_fft” is undefined
* E0020        identifier “GLEW_SGI_texture_color_table” is undefined
* E0020        identifier “GLEW_SGIS_clip_band_hint” is undefined
* E0020        identifier “GLEW_SGIS_color_range” is undefined
* E0020        identifier “GLEW_SGIS_detail_texture” is undefined
* E0020        identifier “GLEW_SGIS_fog_function” is undefined
* E0020        identifier “GLEW_SGIS_generate_mipmap” is undefined
* E0020        identifier “GLEW_SGIS_line_texgen” is undefined
* E0020        identifier “GLEW_SGIS_multisample” is undefined
* E0020        identifier “GLEW_SGIS_multitexture” is undefined
* E0020        identifier “GLEW_SGIS_pixel_texture” is undefined
* E0020        identifier “GLEW_SGIS_point_line_texgen” is undefined
* E0020        identifier “GLEW_SGIS_shared_multisample” is undefined
* E0020        identifier “GLEW_SGIS_sharpen_texture” is undefined
* E0020        identifier “GLEW_SGIS_texture4D” is undefined
* E0020        identifier “GLEW_SGIS_texture_border_clamp” is undefined
* E0020        identifier “GLEW_SGIS_texture_edge_clamp” is undefined
* E0020        identifier “GLEW_SGIS_texture_filter4” is undefined
* E0020        identifier “GLEW_SGIS_texture_lod” is undefined
* E0020        identifier “GLEW_SGIS_texture_select” is undefined
* E0020        identifier “GLEW_SGIX_async” is undefined
* E0020        identifier “GLEW_SGIX_async_histogram” is undefined
* E0020        identifier “GLEW_SGIX_async_pixel” is undefined
* E0020        identifier “GLEW_SGIX_bali_g_instruments” is undefined
* E0020        identifier “GLEW_SGIX_bali_r_instruments” is undefined
* E0020        identifier “GLEW_SGIX_bali_timer_instruments” is undefined
* E0020        identifier “GLEW_SGIX_blend_alpha_minmax” is undefined
* E0020        identifier “GLEW_SGIX_blend_cadd” is undefined
* E0020        identifier “GLEW_SGIX_blend_cmultiply” is undefined
* E0020        identifier “GLEW_SGIX_calligraphic_fragment” is undefined
* E0020        identifier “GLEW_SGIX_clipmap” is undefined
* E0020        identifier “GLEW_SGIX_color_matrix_accuracy” is undefined
* E0020        identifier “GLEW_SGIX_color_table_index_mode” is undefined
* E0020        identifier “GLEW_SGIX_complex_polar” is undefined
* E0020        identifier “GLEW_SGIX_convolution_accuracy” is undefined
* E0020        identifier “GLEW_SGIX_cube_map” is undefined
* E0020        identifier “GLEW_SGIX_cylinder_texgen” is undefined
* E0020        identifier “GLEW_SGIX_datapipe” is undefined
* E0020        identifier “GLEW_SGIX_decimation” is undefined
* E0020        identifier “GLEW_SGIX_depth_pass_instrument” is undefined
* E0020        identifier “GLEW_SGIX_depth_texture” is undefined
* E0020        identifier “GLEW_SGIX_dvc” is undefined
* E0020        identifier “GLEW_SGIX_flush_raster” is undefined
* E0020        identifier “GLEW_SGIX_fog_blend” is undefined
* E0020        identifier “GLEW_SGIX_fog_factor_to_alpha” is undefined
* E0020        identifier “GLEW_SGIX_fog_layers” is undefined
* E0020        identifier “GLEW_SGIX_fog_offset” is undefined
* E0020        identifier “GLEW_SGIX_fog_patchy” is undefined
* E0020        identifier “GLEW_SGIX_fog_scale” is undefined
* E0020        identifier “GLEW_SGIX_fog_texture” is undefined
* E0020        identifier “GLEW_SGIX_fragment_lighting_space” is undefined
* E0020        identifier “GLEW_SGIX_fragment_specular_lighting” is undefined
* E0020        identifier “GLEW_SGIX_fragments_instrument” is undefined
* E0020        identifier “GLEW_SGIX_framezoom” is undefined
* E0020        identifier “GLEW_SGIX_icc_texture” is undefined
* E0020        identifier “GLEW_SGIX_igloo_interface” is undefined
* E0020        identifier “GLEW_SGIX_image_compression” is undefined
* E0020        identifier “GLEW_SGIX_impact_pixel_texture” is undefined
* E0020        identifier “GLEW_SGIX_instrument_error” is undefined
* E0020        identifier “GLEW_SGIX_interlace” is undefined
* E0020        identifier “GLEW_SGIX_ir_instrument1” is undefined
* E0020        identifier “GLEW_SGIX_line_quality_hint” is undefined
* E0020        identifier “GLEW_SGIX_list_priority” is undefined
* E0020        identifier “GLEW_SGIX_mpeg1” is undefined
* E0020        identifier “GLEW_SGIX_mpeg2” is undefined
* E0020        identifier “GLEW_SGIX_nonlinear_lighting_pervertex” is undefined
* E0020        identifier “GLEW_SGIX_nurbs_eval” is undefined
* E0020        identifier “GLEW_SGIX_occlusion_instrument” is undefined
* E0020        identifier “GLEW_SGIX_packed_6bytes” is undefined
* E0020        identifier “GLEW_SGIX_pixel_texture” is undefined
* E0020        identifier “GLEW_SGIX_pixel_texture_bits” is undefined
* E0020        identifier “GLEW_SGIX_pixel_texture_lod” is undefined
* E0020        identifier “GLEW_SGIX_pixel_tiles” is undefined
* E0020        identifier “GLEW_SGIX_polynomial_ffd” is undefined
* E0020        identifier “GLEW_SGIX_quad_mesh” is undefined
* E0020        identifier “GLEW_SGIX_reference_plane” is undefined
* E0020        identifier “GLEW_SGIX_resample” is undefined
* E0020        identifier “GLEW_SGIX_scalebias_hint” is undefined
* E0020        identifier “GLEW_SGIX_shadow” is undefined
* E0020        identifier “GLEW_SGIX_shadow_ambient” is undefined
* E0020        identifier “GLEW_SGIX_slim” is undefined
* E0020        identifier “GLEW_SGIX_spotlight_cutoff” is undefined
* E0020        identifier “GLEW_SGIX_sprite” is undefined
* E0020        identifier “GLEW_SGIX_subdiv_patch” is undefined
* E0020        identifier “GLEW_SGIX_subsample” is undefined
* E0020        identifier “GLEW_SGIX_tag_sample_buffer” is undefined
* E0020        identifier “GLEW_SGIX_texture_add_env” is undefined
* E0020        identifier “GLEW_SGIX_texture_coordinate_clamp” is undefined
* E0020        identifier “GLEW_SGIX_texture_lod_bias” is undefined
* E0020        identifier “GLEW_SGIX_texture_mipmap_anisotropic” is undefined
* E0020        identifier “GLEW_SGIX_texture_multi_buffer” is undefined
* E0020        identifier “GLEW_SGIX_texture_phase” is undefined
* E0020        identifier “GLEW_SGIX_texture_range” is undefined
* E0020        identifier “GLEW_SGIX_texture_scale_bias” is undefined
* E0020        identifier “GLEW_SGIX_texture_supersample” is undefined
* E0020        identifier “GLEW_SGIX_vector_ops” is undefined
* E0020        identifier “GLEW_SGIX_vertex_array_object” is undefined
* E0020        identifier “GLEW_SGIX_vertex_preclip” is undefined
* E0020        identifier “GLEW_SGIX_vertex_preclip_hint” is undefined
* E0020        identifier “GLEW_SGIX_ycrcb” is undefined
* E0020        identifier “GLEW_SGIX_ycrcb_subsample” is undefined
* E0020        identifier “GLEW_SGIX_ycrcba” is undefined
* E0020        identifier “GLEW_SUN_convolution_border_modes” is undefined
* E0020        identifier “GLEW_SUN_global_alpha” is undefined
* E0020        identifier “GLEW_SUN_mesh_array” is undefined
* E0020        identifier “GLEW_SUN_read_video_pixels” is undefined
* E0020        identifier “GLEW_SUN_slice_accum” is undefined
* E0020        identifier “GLEW_SUN_triangle_list” is undefined
* E0020        identifier “GLEW_SUN_vertex” is undefined
* E0020        identifier “GLEW_SUNX_constant_data” is undefined
* E0020        identifier “GLEW_VERSION” is undefined
* E0020        identifier “GLEW_VERSION_1_1” is undefined
* E0020        identifier “GLEW_VERSION_1_2” is undefined
* E0020        identifier “GLEW_VERSION_1_2_1” is undefined
* E0020        identifier “GLEW_VERSION_1_3” is undefined
* E0020        identifier “GLEW_VERSION_1_4” is undefined
* E0020        identifier “GLEW_VERSION_1_5” is undefined
* E0020        identifier “GLEW_VERSION_2_0” is undefined
* E0020        identifier “GLEW_VERSION_2_1” is undefined
* E0020        identifier “GLEW_VERSION_3_0” is undefined
* E0020        identifier “GLEW_VERSION_3_1” is undefined
* E0020        identifier “GLEW_VERSION_3_2” is undefined
* E0020        identifier “GLEW_VERSION_3_3” is undefined
* E0020        identifier “GLEW_VERSION_4_0” is undefined
* E0020        identifier “GLEW_VERSION_4_1” is undefined
* E0020        identifier “GLEW_VERSION_4_2” is undefined
* E0020        identifier “GLEW_VERSION_4_3” is undefined
* E0020        identifier “GLEW_VERSION_4_4” is undefined
* E0020        identifier “GLEW_VERSION_4_5” is undefined
* E0020        identifier “GLEW_VERSION_4_6” is undefined
* E0020        identifier “GLEW_VERSION_MAJOR” is undefined
* E0020        identifier “GLEW_VERSION_MICRO” is undefined
* E0020        identifier “GLEW_VERSION_MINOR” is undefined
* E0020        identifier “GLEW_WIN_phong_shading” is undefined
* E0020        identifier “GLEW_WIN_scene_markerXXX” is undefined
* E0020        identifier “GLEW_WIN_specular_fog” is undefined
* E0020        identifier “GLEW_WIN_swap_hint” is undefined
* C2065        ‘GLEW_3DFX_multisample’: undeclared identifier
* C2065        ‘GLEW_3DFX_tbuffer’: undeclared identifier
* C2065        ‘GLEW_3DFX_texture_compression_FXT1’: undeclared identifier
* C2065        ‘GLEW_AMD_blend_minmax_factor’: undeclared identifier
* C2065        ‘GLEW_AMD_compressed_3DC_texture’: undeclared identifier
* C2065        ‘GLEW_AMD_compressed_ATC_texture’: undeclared identifier
* C2065        ‘GLEW_AMD_conservative_depth’: undeclared identifier
* C2065        ‘GLEW_AMD_debug_output’: undeclared identifier
* C2065        ‘GLEW_AMD_depth_clamp_separate’: undeclared identifier
* C2065        ‘GLEW_AMD_draw_buffers_blend’: undeclared identifier
* C2065        ‘GLEW_AMD_framebuffer_sample_positions’: undeclared identifier
* C2065        ‘GLEW_AMD_gcn_shader’: undeclared identifier
* C2065        ‘GLEW_AMD_gpu_shader_half_float’: undeclared identifier
* C2065        ‘GLEW_AMD_gpu_shader_int16’: undeclared identifier
* C2065        ‘GLEW_AMD_gpu_shader_int64’: undeclared identifier
* C2065        ‘GLEW_AMD_interleaved_elements’: undeclared identifier
* C2065        ‘GLEW_AMD_multi_draw_indirect’: undeclared identifier
* C2065        ‘GLEW_AMD_name_gen_delete’: undeclared identifier
* C2065        ‘GLEW_AMD_occlusion_query_event’: undeclared identifier
* C2065        ‘GLEW_AMD_performance_monitor’: undeclared identifier
* C2065        ‘GLEW_AMD_pinned_memory’: undeclared identifier
* C2065        ‘GLEW_AMD_program_binary_Z400’: undeclared identifier
* C2065        ‘GLEW_AMD_query_buffer_object’: undeclared identifier
* C2065        ‘GLEW_AMD_sample_positions’: undeclared identifier
* C2065        ‘GLEW_AMD_seamless_cubemap_per_texture’: undeclared identifier
* C2065        ‘GLEW_AMD_shader_atomic_counter_ops’: undeclared identifier
* C2065        ‘GLEW_AMD_shader_ballot’: undeclared identifier
* C2065        ‘GLEW_AMD_shader_explicit_vertex_parameter’: undeclared identifier
* C2065        ‘GLEW_AMD_shader_stencil_export’: undeclared identifier
* C2065        ‘GLEW_AMD_shader_stencil_value_export’: undeclared identifier
* C2065        ‘GLEW_AMD_shader_trinary_minmax’: undeclared identifier
* C2065        ‘GLEW_AMD_sparse_texture’: undeclared identifier
* C2065        ‘GLEW_AMD_stencil_operation_extended’: undeclared identifier
* C2065        ‘GLEW_AMD_texture_gather_bias_lod’: undeclared identifier
* C2065        ‘GLEW_AMD_texture_texture4’: undeclared identifier
* C2065        ‘GLEW_AMD_transform_feedback3_lines_triangles’: undeclared identifier
* C2065        ‘GLEW_AMD_transform_feedback4’: undeclared identifier
* C2065        ‘GLEW_AMD_vertex_shader_layer’: undeclared identifier
* C2065        ‘GLEW_AMD_vertex_shader_tessellator’: undeclared identifier
* C2065        ‘GLEW_AMD_vertex_shader_viewport_index’: undeclared identifier
* C2065        ‘GLEW_ANDROID_extension_pack_es31a’: undeclared identifier
* C2065        ‘GLEW_ANGLE_depth_texture’: undeclared identifier
* C2065        ‘GLEW_ANGLE_framebuffer_blit’: undeclared identifier
* C2065        ‘GLEW_ANGLE_framebuffer_multisample’: undeclared identifier
* C2065        ‘GLEW_ANGLE_instanced_arrays’: undeclared identifier
* C2065        ‘GLEW_ANGLE_pack_reverse_row_order’: undeclared identifier
* C2065        ‘GLEW_ANGLE_program_binary’: undeclared identifier
* C2065        ‘GLEW_ANGLE_texture_compression_dxt1’: undeclared identifier
* C2065        ‘GLEW_ANGLE_texture_compression_dxt3’: undeclared identifier
* C2065        ‘GLEW_ANGLE_texture_compression_dxt5’: undeclared identifier
* C2065        ‘GLEW_ANGLE_texture_usage’: undeclared identifier
* C2065        ‘GLEW_ANGLE_timer_query’: undeclared identifier
* C2065        ‘GLEW_ANGLE_translated_shader_source’: undeclared identifier
* C2065        ‘GLEW_APPLE_aux_depth_stencil’: undeclared identifier
* C2065        ‘GLEW_APPLE_client_storage’: undeclared identifier
* C2065        ‘GLEW_APPLE_clip_distance’: undeclared identifier
* C2065        ‘GLEW_APPLE_color_buffer_packed_float’: undeclared identifier
* C2065        ‘GLEW_APPLE_copy_texture_levels’: undeclared identifier
* C2065        ‘GLEW_APPLE_element_array’: undeclared identifier
* C2065        ‘GLEW_APPLE_fence’: undeclared identifier
* C2065        ‘GLEW_APPLE_float_pixels’: undeclared identifier
* C2065        ‘GLEW_APPLE_flush_buffer_range’: undeclared identifier
* C2065        ‘GLEW_APPLE_framebuffer_multisample’: undeclared identifier
* C2065        ‘GLEW_APPLE_object_purgeable’: undeclared identifier
* C2065        ‘GLEW_APPLE_pixel_buffer’: undeclared identifier
* C2065        ‘GLEW_APPLE_rgb_422’: undeclared identifier
* C2065        ‘GLEW_APPLE_row_bytes’: undeclared identifier
* C2065        ‘GLEW_APPLE_specular_vector’: undeclared identifier
* C2065        ‘GLEW_APPLE_sync’: undeclared identifier
* C2065        ‘GLEW_APPLE_texture_2D_limited_npot’: undeclared identifier
* C2065        ‘GLEW_APPLE_texture_format_BGRA8888’: undeclared identifier
* C2065        ‘GLEW_APPLE_texture_max_level’: undeclared identifier
* C2065        ‘GLEW_APPLE_texture_packed_float’: undeclared identifier
* C2065        ‘GLEW_APPLE_texture_range’: undeclared identifier
* C2065        ‘GLEW_APPLE_transform_hint’: undeclared identifier
* C2065        ‘GLEW_APPLE_vertex_array_object’: undeclared identifier
* C2065        ‘GLEW_APPLE_vertex_array_range’: undeclared identifier
* C2065        ‘GLEW_APPLE_vertex_program_evaluators’: undeclared identifier
* C2065        ‘GLEW_APPLE_ycbcr_422’: undeclared identifier
* C2065        ‘GLEW_ARB_arrays_of_arrays’: undeclared identifier
* C2065        ‘GLEW_ARB_base_instance’: undeclared identifier
* C2065        ‘GLEW_ARB_bindless_texture’: undeclared identifier
* C2065        ‘GLEW_ARB_blend_func_extended’: undeclared identifier
* C2065        ‘GLEW_ARB_buffer_storage’: undeclared identifier
* C2065        ‘GLEW_ARB_cl_event’: undeclared identifier
* C2065        ‘GLEW_ARB_clear_buffer_object’: undeclared identifier
* C2065        ‘GLEW_ARB_clear_texture’: undeclared identifier
* C2065        ‘GLEW_ARB_clip_control’: undeclared identifier
* C2065        ‘GLEW_ARB_color_buffer_float’: undeclared identifier
* C2065        ‘GLEW_ARB_compatibility’: undeclared identifier
* C2065        ‘GLEW_ARB_compressed_texture_pixel_storage’: undeclared identifier
* C2065        ‘GLEW_ARB_compute_shader’: undeclared identifier
* C2065        ‘GLEW_ARB_compute_variable_group_size’: undeclared identifier
* C2065        ‘GLEW_ARB_conditional_render_inverted’: undeclared identifier
* C2065        ‘GLEW_ARB_conservative_depth’: undeclared identifier
* C2065        ‘GLEW_ARB_copy_buffer’: undeclared identifier
* C2065        ‘GLEW_ARB_copy_image’: undeclared identifier
* C2065        ‘GLEW_ARB_cull_distance’: undeclared identifier
* C2065        ‘GLEW_ARB_debug_output’: undeclared identifier
* C2065        ‘GLEW_ARB_depth_buffer_float’: undeclared identifier
* C2065        ‘GLEW_ARB_depth_clamp’: undeclared identifier
* C2065        ‘GLEW_ARB_depth_texture’: undeclared identifier
* C2065        ‘GLEW_ARB_derivative_control’: undeclared identifier
* C2065        ‘GLEW_ARB_direct_state_access’: undeclared identifier
* C2065        ‘GLEW_ARB_draw_buffers’: undeclared identifier
* C2065        ‘GLEW_ARB_draw_buffers_blend’: undeclared identifier
* C2065        ‘GLEW_ARB_draw_elements_base_vertex’: undeclared identifier
* C2065        ‘GLEW_ARB_draw_indirect’: undeclared identifier
* C2065        ‘GLEW_ARB_draw_instanced’: undeclared identifier
* C2065        ‘GLEW_ARB_enhanced_layouts’: undeclared identifier
* C2065        ‘GLEW_ARB_ES2_compatibility’: undeclared identifier
* C2065        ‘GLEW_ARB_ES3_1_compatibility’: undeclared identifier
* C2065        ‘GLEW_ARB_ES3_2_compatibility’: undeclared identifier
* C2065        ‘GLEW_ARB_ES3_compatibility’: undeclared identifier
* C2065        ‘GLEW_ARB_explicit_attrib_location’: undeclared identifier
* C2065        ‘GLEW_ARB_explicit_uniform_location’: undeclared identifier
* C2065        ‘GLEW_ARB_fragment_coord_conventions’: undeclared identifier
* C2065        ‘GLEW_ARB_fragment_layer_viewport’: undeclared identifier
* C2065        ‘GLEW_ARB_fragment_program’: undeclared identifier
* C2065        ‘GLEW_ARB_fragment_program_shadow’: undeclared identifier
* C2065        ‘GLEW_ARB_fragment_shader’: undeclared identifier
* C2065        ‘GLEW_ARB_fragment_shader_interlock’: undeclared identifier
* C2065        ‘GLEW_ARB_framebuffer_no_attachments’: undeclared identifier
* C2065        ‘GLEW_ARB_framebuffer_object’: undeclared identifier
* C2065        ‘GLEW_ARB_framebuffer_sRGB’: undeclared identifier
* C2065        ‘GLEW_ARB_geometry_shader4’: undeclared identifier
* C2065        ‘GLEW_ARB_get_program_binary’: undeclared identifier
* C2065        ‘GLEW_ARB_get_texture_sub_image’: undeclared identifier
* C2065        ‘GLEW_ARB_gl_spirv’: undeclared identifier
* C2065        ‘GLEW_ARB_gpu_shader5’: undeclared identifier
* C2065        ‘GLEW_ARB_gpu_shader_fp64’: undeclared identifier
* C2065        ‘GLEW_ARB_gpu_shader_int64’: undeclared identifier
* C2065        ‘GLEW_ARB_half_float_pixel’: undeclared identifier
* C2065        ‘GLEW_ARB_half_float_vertex’: undeclared identifier
* C2065        ‘GLEW_ARB_imaging’: undeclared identifier
* C2065        ‘GLEW_ARB_indirect_parameters’: undeclared identifier
* C2065        ‘GLEW_ARB_instanced_arrays’: undeclared identifier
* C2065        ‘GLEW_ARB_internalformat_query2’: undeclared identifier
* C2065        ‘GLEW_ARB_internalformat_query’: undeclared identifier
* C2065        ‘GLEW_ARB_invalidate_subdata’: undeclared identifier
* C2065        ‘GLEW_ARB_map_buffer_alignment’: undeclared identifier
* C2065        ‘GLEW_ARB_map_buffer_range’: undeclared identifier
* C2065        ‘GLEW_ARB_matrix_palette’: undeclared identifier
* C2065        ‘GLEW_ARB_multi_bind’: undeclared identifier
* C2065        ‘GLEW_ARB_multi_draw_indirect’: undeclared identifier
* C2065        ‘GLEW_ARB_multisample’: undeclared identifier
* C2065        ‘GLEW_ARB_multitexture’: undeclared identifier
* C2065        ‘GLEW_ARB_occlusion_query2’: undeclared identifier
* C2065        ‘GLEW_ARB_occlusion_query’: undeclared identifier
* C2065        ‘GLEW_ARB_parallel_shader_compile’: undeclared identifier
* C2065        ‘GLEW_ARB_pipeline_statistics_query’: undeclared identifier
* C2065        ‘GLEW_ARB_pixel_buffer_object’: undeclared identifier
* C2065        ‘GLEW_ARB_point_parameters’: undeclared identifier
* C2065        ‘GLEW_ARB_point_sprite’: undeclared identifier
* C2065        ‘GLEW_ARB_polygon_offset_clamp’: undeclared identifier
* C2065        ‘GLEW_ARB_post_depth_coverage’: undeclared identifier
* C2065        ‘GLEW_ARB_program_interface_query’: undeclared identifier
* C2065        ‘GLEW_ARB_provoking_vertex’: undeclared identifier
* C2065        ‘GLEW_ARB_query_buffer_object’: undeclared identifier
* C2065        ‘GLEW_ARB_robust_buffer_access_behavior’: undeclared identifier
* C2065        ‘GLEW_ARB_robustness’: undeclared identifier
* C2065        ‘GLEW_ARB_robustness_application_isolation’: undeclared identifier
* C2065        ‘GLEW_ARB_robustness_share_group_isolation’: undeclared identifier
* C2065        ‘GLEW_ARB_sample_locations’: undeclared identifier
* C2065        ‘GLEW_ARB_sample_shading’: undeclared identifier
* C2065        ‘GLEW_ARB_sampler_objects’: undeclared identifier
* C2065        ‘GLEW_ARB_seamless_cube_map’: undeclared identifier
* C2065        ‘GLEW_ARB_seamless_cubemap_per_texture’: undeclared identifier
* C2065        ‘GLEW_ARB_separate_shader_objects’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_atomic_counter_ops’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_atomic_counters’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_ballot’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_bit_encoding’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_clock’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_draw_parameters’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_group_vote’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_image_load_store’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_image_size’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_objects’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_precision’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_stencil_export’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_storage_buffer_object’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_subroutine’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_texture_image_samples’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_texture_lod’: undeclared identifier
* C2065        ‘GLEW_ARB_shader_viewport_layer_array’: undeclared identifier
* C2065        ‘GLEW_ARB_shading_language_100’: undeclared identifier
* C2065        ‘GLEW_ARB_shading_language_420pack’: undeclared identifier
* C2065        ‘GLEW_ARB_shading_language_include’: undeclared identifier
* C2065        ‘GLEW_ARB_shading_language_packing’: undeclared identifier
* C2065        ‘GLEW_ARB_shadow’: undeclared identifier
* C2065        ‘GLEW_ARB_shadow_ambient’: undeclared identifier
* C2065        ‘GLEW_ARB_sparse_buffer’: undeclared identifier
* C2065        ‘GLEW_ARB_sparse_texture2’: undeclared identifier
* C2065        ‘GLEW_ARB_sparse_texture’: undeclared identifier
* C2065        ‘GLEW_ARB_sparse_texture_clamp’: undeclared identifier
* C2065        ‘GLEW_ARB_spirv_extensions’: undeclared identifier
* C2065        ‘GLEW_ARB_stencil_texturing’: undeclared identifier
* C2065        ‘GLEW_ARB_sync’: undeclared identifier
* C2065        ‘GLEW_ARB_tessellation_shader’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_barrier’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_border_clamp’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_buffer_object’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_buffer_object_rgb32’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_buffer_range’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_compression’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_compression_bptc’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_compression_rgtc’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_cube_map’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_cube_map_array’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_env_add’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_env_combine’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_env_crossbar’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_env_dot3’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_filter_anisotropic’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_filter_minmax’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_float’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_gather’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_mirror_clamp_to_edge’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_mirrored_repeat’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_multisample’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_non_power_of_two’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_query_levels’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_query_lod’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_rectangle’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_rg’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_rgb10_a2ui’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_stencil8’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_storage’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_storage_multisample’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_swizzle’: undeclared identifier
* C2065        ‘GLEW_ARB_texture_view’: undeclared identifier
* C2065        ‘GLEW_ARB_timer_query’: undeclared identifier
* C2065        ‘GLEW_ARB_transform_feedback2’: undeclared identifier
* C2065        ‘GLEW_ARB_transform_feedback3’: undeclared identifier
* C2065        ‘GLEW_ARB_transform_feedback_instanced’: undeclared identifier
* C2065        ‘GLEW_ARB_transform_feedback_overflow_query’: undeclared identifier
* C2065        ‘GLEW_ARB_transpose_matrix’: undeclared identifier
* C2065        ‘GLEW_ARB_uniform_buffer_object’: undeclared identifier
* C2065        ‘GLEW_ARB_vertex_array_bgra’: undeclared identifier
* C2065        ‘GLEW_ARB_vertex_array_object’: undeclared identifier
* C2065        ‘GLEW_ARB_vertex_attrib_64bit’: undeclared identifier
* C2065        ‘GLEW_ARB_vertex_attrib_binding’: undeclared identifier
* C2065        ‘GLEW_ARB_vertex_blend’: undeclared identifier
* C2065        ‘GLEW_ARB_vertex_buffer_object’: undeclared identifier
* C2065        ‘GLEW_ARB_vertex_program’: undeclared identifier
* C2065        ‘GLEW_ARB_vertex_shader’: undeclared identifier
* C2065        ‘GLEW_ARB_vertex_type_2_10_10_10_rev’: undeclared identifier
* C2065        ‘GLEW_ARB_vertex_type_10f_11f_11f_rev’: undeclared identifier
* C2065        ‘GLEW_ARB_viewport_array’: undeclared identifier
* C2065        ‘GLEW_ARB_window_pos’: undeclared identifier
* C2065        ‘GLEW_ARM_mali_program_binary’: undeclared identifier
* C2065        ‘GLEW_ARM_mali_shader_binary’: undeclared identifier
* C2065        ‘GLEW_ARM_rgba8’: undeclared identifier
* C2065        ‘GLEW_ARM_shader_framebuffer_fetch’: undeclared identifier
* C2065        ‘GLEW_ARM_shader_framebuffer_fetch_depth_stencil’: undeclared identifier
* C2065        ‘GLEW_ATI_draw_buffers’: undeclared identifier
* C2065        ‘GLEW_ATI_element_array’: undeclared identifier
* C2065        ‘GLEW_ATI_envmap_bumpmap’: undeclared identifier
* C2065        ‘GLEW_ATI_fragment_shader’: undeclared identifier
* C2065        ‘GLEW_ATI_map_object_buffer’: undeclared identifier
* C2065        ‘GLEW_ATI_meminfo’: undeclared identifier
* C2065        ‘GLEW_ATI_pn_triangles’: undeclared identifier
* C2065        ‘GLEW_ATI_separate_stencil’: undeclared identifier
* C2065        ‘GLEW_ATI_shader_texture_lod’: undeclared identifier
* C2065        ‘GLEW_ATI_text_fragment_shader’: undeclared identifier
* C2065        ‘GLEW_ATI_texture_compression_3dc’: undeclared identifier
* C2065        ‘GLEW_ATI_texture_env_combine3’: undeclared identifier
* C2065        ‘GLEW_ATI_texture_float’: undeclared identifier
* C2065        ‘GLEW_ATI_texture_mirror_once’: undeclared identifier
* C2065        ‘GLEW_ATI_vertex_array_object’: undeclared identifier
* C2065        ‘GLEW_ATI_vertex_attrib_array_object’: undeclared identifier
* C2065        ‘GLEW_ATI_vertex_streams’: undeclared identifier
* C2065        ‘GLEW_ATIX_point_sprites’: undeclared identifier
* C2065        ‘GLEW_ATIX_texture_env_combine3’: undeclared identifier
* C2065        ‘GLEW_ATIX_texture_env_route’: undeclared identifier
* C2065        ‘GLEW_ATIX_vertex_shader_output_point_size’: undeclared identifier
* C2065        ‘GLEW_EGL_KHR_context_flush_control’: undeclared identifier
* C2065        ‘GLEW_EGL_NV_robustness_video_memory_purge’: undeclared identifier
* C2065        ‘GLEW_ERROR_GL_VERSION_10_ONLY’: undeclared identifier
* C2065        ‘GLEW_ERROR_GLX_VERSION_11_ONLY’: undeclared identifier
* C2065        ‘GLEW_ERROR_NO_GL_VERSION’: undeclared identifier
* C2065        ‘GLEW_ERROR_NO_GLX_DISPLAY’: undeclared identifier
* C2065        ‘GLEW_EXT_422_pixels’: undeclared identifier
* C2065        ‘GLEW_EXT_abgr’: undeclared identifier
* C2065        ‘GLEW_EXT_base_instance’: undeclared identifier
* C2065        ‘GLEW_EXT_bgra’: undeclared identifier
* C2065        ‘GLEW_EXT_bindable_uniform’: undeclared identifier
* C2065        ‘GLEW_EXT_blend_color’: undeclared identifier
* C2065        ‘GLEW_EXT_blend_equation_separate’: undeclared identifier
* C2065        ‘GLEW_EXT_blend_func_extended’: undeclared identifier
* C2065        ‘GLEW_EXT_blend_func_separate’: undeclared identifier
* C2065        ‘GLEW_EXT_blend_logic_op’: undeclared identifier
* C2065        ‘GLEW_EXT_blend_minmax’: undeclared identifier
* C2065        ‘GLEW_EXT_blend_subtract’: undeclared identifier
* C2065        ‘GLEW_EXT_buffer_storage’: undeclared identifier
* C2065        ‘GLEW_EXT_Cg_shader’: undeclared identifier
* C2065        ‘GLEW_EXT_clear_texture’: undeclared identifier
* C2065        ‘GLEW_EXT_clip_cull_distance’: undeclared identifier
* C2065        ‘GLEW_EXT_clip_volume_hint’: undeclared identifier
* C2065        ‘GLEW_EXT_cmyka’: undeclared identifier
* C2065        ‘GLEW_EXT_color_buffer_float’: undeclared identifier
* C2065        ‘GLEW_EXT_color_buffer_half_float’: undeclared identifier
* C2065        ‘GLEW_EXT_color_subtable’: undeclared identifier
* C2065        ‘GLEW_EXT_compiled_vertex_array’: undeclared identifier
* C2065        ‘GLEW_EXT_compressed_ETC1_RGB8_sub_texture’: undeclared identifier
* C2065        ‘GLEW_EXT_conservative_depth’: undeclared identifier
* C2065        ‘GLEW_EXT_convolution’: undeclared identifier
* C2065        ‘GLEW_EXT_coordinate_frame’: undeclared identifier
* C2065        ‘GLEW_EXT_copy_image’: undeclared identifier
* C2065        ‘GLEW_EXT_copy_texture’: undeclared identifier
* C2065        ‘GLEW_EXT_cull_vertex’: undeclared identifier
* C2065        ‘GLEW_EXT_debug_label’: undeclared identifier
* C2065        ‘GLEW_EXT_debug_marker’: undeclared identifier
* C2065        ‘GLEW_EXT_depth_bounds_test’: undeclared identifier
* C2065        ‘GLEW_EXT_direct_state_access’: undeclared identifier
* C2065        ‘GLEW_EXT_discard_framebuffer’: undeclared identifier
* C2065        ‘GLEW_EXT_draw_buffers2’: undeclared identifier
* C2065        ‘GLEW_EXT_draw_buffers’: undeclared identifier
* C2065        ‘GLEW_EXT_draw_buffers_indexed’: undeclared identifier
* C2065        ‘GLEW_EXT_draw_elements_base_vertex’: undeclared identifier
* C2065        ‘GLEW_EXT_draw_instanced’: undeclared identifier
* C2065        ‘GLEW_EXT_draw_range_elements’: undeclared identifier
* C2065        ‘GLEW_EXT_EGL_image_array’: undeclared identifier
* C2065        ‘GLEW_EXT_external_buffer’: undeclared identifier
* C2065        ‘GLEW_EXT_float_blend’: undeclared identifier
* C2065        ‘GLEW_EXT_fog_coord’: undeclared identifier
* C2065        ‘GLEW_EXT_frag_depth’: undeclared identifier
* C2065        ‘GLEW_EXT_fragment_lighting’: undeclared identifier
* C2065        ‘GLEW_EXT_framebuffer_blit’: undeclared identifier
* C2065        ‘GLEW_EXT_framebuffer_multisample’: undeclared identifier
* C2065        ‘GLEW_EXT_framebuffer_multisample_blit_scaled’: undeclared identifier
* C2065        ‘GLEW_EXT_framebuffer_object’: undeclared identifier
* C2065        ‘GLEW_EXT_framebuffer_sRGB’: undeclared identifier
* C2065        ‘GLEW_EXT_geometry_point_size’: undeclared identifier
* C2065        ‘GLEW_EXT_geometry_shader4’: undeclared identifier
* C2065        ‘GLEW_EXT_geometry_shader’: undeclared identifier
* C2065        ‘GLEW_EXT_gpu_program_parameters’: undeclared identifier
* C2065        ‘GLEW_EXT_gpu_shader4’: undeclared identifier
* C2065        ‘GLEW_EXT_gpu_shader5’: undeclared identifier
* C2065        ‘GLEW_EXT_histogram’: undeclared identifier
* C2065        ‘GLEW_EXT_index_array_formats’: undeclared identifier
* C2065        ‘GLEW_EXT_index_func’: undeclared identifier
* C2065        ‘GLEW_EXT_index_material’: undeclared identifier
* C2065        ‘GLEW_EXT_index_texture’: undeclared identifier
* C2065        ‘GLEW_EXT_instanced_arrays’: undeclared identifier
* C2065        ‘GLEW_EXT_light_texture’: undeclared identifier
* C2065        ‘GLEW_EXT_map_buffer_range’: undeclared identifier
* C2065        ‘GLEW_EXT_memory_object’: undeclared identifier
* C2065        ‘GLEW_EXT_memory_object_fd’: undeclared identifier
* C2065        ‘GLEW_EXT_memory_object_win32’: undeclared identifier
* C2065        ‘GLEW_EXT_misc_attribute’: undeclared identifier
* C2065        ‘GLEW_EXT_multi_draw_arrays’: undeclared identifier
* C2065        ‘GLEW_EXT_multi_draw_indirect’: undeclared identifier
* C2065        ‘GLEW_EXT_multiple_textures’: undeclared identifier
* C2065        ‘GLEW_EXT_multisample’: undeclared identifier
* C2065        ‘GLEW_EXT_multisample_compatibility’: undeclared identifier
* C2065        ‘GLEW_EXT_multisampled_render_to_texture2’: undeclared identifier
* C2065        ‘GLEW_EXT_multisampled_render_to_texture’: undeclared identifier
* C2065        ‘GLEW_EXT_multiview_draw_buffers’: undeclared identifier
* C2065        ‘GLEW_EXT_packed_depth_stencil’: undeclared identifier
* C2065        ‘GLEW_EXT_packed_float’: undeclared identifier
* C2065        ‘GLEW_EXT_packed_pixels’: undeclared identifier
* C2065        ‘GLEW_EXT_paletted_texture’: undeclared identifier
* C2065        ‘GLEW_EXT_pixel_buffer_object’: undeclared identifier
* C2065        ‘GLEW_EXT_pixel_transform’: undeclared identifier
* C2065        ‘GLEW_EXT_pixel_transform_color_table’: undeclared identifier
* C2065        ‘GLEW_EXT_point_parameters’: undeclared identifier
* C2065        ‘GLEW_EXT_polygon_offset’: undeclared identifier
* C2065        ‘GLEW_EXT_polygon_offset_clamp’: undeclared identifier
* C2065        ‘GLEW_EXT_post_depth_coverage’: undeclared identifier
* C2065        ‘GLEW_EXT_provoking_vertex’: undeclared identifier
* C2065        ‘GLEW_EXT_pvrtc_sRGB’: undeclared identifier
* C2065        ‘GLEW_EXT_raster_multisample’: undeclared identifier
* C2065        ‘GLEW_EXT_read_format_bgra’: undeclared identifier
* C2065        ‘GLEW_EXT_render_snorm’: undeclared identifier
* C2065        ‘GLEW_EXT_rescale_normal’: undeclared identifier
* C2065        ‘GLEW_EXT_scene_marker’: undeclared identifier
* C2065        ‘GLEW_EXT_secondary_color’: undeclared identifier
* C2065        ‘GLEW_EXT_semaphore’: undeclared identifier
* C2065        ‘GLEW_EXT_semaphore_fd’: undeclared identifier
* C2065        ‘GLEW_EXT_semaphore_win32’: undeclared identifier
* C2065        ‘GLEW_EXT_separate_shader_objects’: undeclared identifier
* C2065        ‘GLEW_EXT_separate_specular_color’: undeclared identifier
* C2065        ‘GLEW_EXT_shader_framebuffer_fetch’: undeclared identifier
* C2065        ‘GLEW_EXT_shader_group_vote’: undeclared identifier
* C2065        ‘GLEW_EXT_shader_image_load_formatted’: undeclared identifier
* C2065        ‘GLEW_EXT_shader_image_load_store’: undeclared identifier
* C2065        ‘GLEW_EXT_shader_implicit_conversions’: undeclared identifier
* C2065        ‘GLEW_EXT_shader_integer_mix’: undeclared identifier
* C2065        ‘GLEW_EXT_shader_io_blocks’: undeclared identifier
* C2065        ‘GLEW_EXT_shader_non_constant_global_initializers’: undeclared identifier
* C2065        ‘GLEW_EXT_shader_pixel_local_storage2’: undeclared identifier
* C2065        ‘GLEW_EXT_shader_pixel_local_storage’: undeclared identifier
* C2065        ‘GLEW_EXT_shader_texture_lod’: undeclared identifier
* C2065        ‘GLEW_EXT_shadow_funcs’: undeclared identifier
* C2065        ‘GLEW_EXT_shadow_samplers’: undeclared identifier
* C2065        ‘GLEW_EXT_shared_texture_palette’: undeclared identifier
* C2065        ‘GLEW_EXT_sparse_texture2’: undeclared identifier
* C2065        ‘GLEW_EXT_sparse_texture’: undeclared identifier
* C2065        ‘GLEW_EXT_sRGB’: undeclared identifier
* C2065        ‘GLEW_EXT_sRGB_write_control’: undeclared identifier
* C2065        ‘GLEW_EXT_stencil_clear_tag’: undeclared identifier
* C2065        ‘GLEW_EXT_stencil_two_side’: undeclared identifier
* C2065        ‘GLEW_EXT_stencil_wrap’: undeclared identifier
* C2065        ‘GLEW_EXT_subtexture’: undeclared identifier
* C2065        ‘GLEW_EXT_texture3D’: undeclared identifier
* C2065        ‘GLEW_EXT_texture’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_array’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_buffer_object’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_compression_astc_decode_mode’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_compression_astc_decode_mode_rgb9e5’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_compression_bptc’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_compression_dxt1’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_compression_latc’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_compression_rgtc’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_compression_s3tc’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_cube_map’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_cube_map_array’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_edge_clamp’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_env’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_env_add’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_env_combine’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_env_dot3’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_filter_anisotropic’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_filter_minmax’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_format_BGRA8888’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_integer’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_lod_bias’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_mirror_clamp’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_norm16’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_object’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_perturb_normal’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_rectangle’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_rg’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_shared_exponent’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_snorm’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_sRGB’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_sRGB_decode’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_sRGB_R8’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_sRGB_RG8’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_storage’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_swizzle’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_type_2_10_10_10_REV’: undeclared identifier
* C2065        ‘GLEW_EXT_texture_view’: undeclared identifier
* C2065        ‘GLEW_EXT_timer_query’: undeclared identifier
* C2065        ‘GLEW_EXT_transform_feedback’: undeclared identifier
* C2065        ‘GLEW_EXT_unpack_subimage’: undeclared identifier
* C2065        ‘GLEW_EXT_vertex_array’: undeclared identifier
* C2065        ‘GLEW_EXT_vertex_array_bgra’: undeclared identifier
* C2065        ‘GLEW_EXT_vertex_array_setXXX’: undeclared identifier
* C2065        ‘GLEW_EXT_vertex_attrib_64bit’: undeclared identifier
* C2065        ‘GLEW_EXT_vertex_shader’: undeclared identifier
* C2065        ‘GLEW_EXT_vertex_weighting’: undeclared identifier
* C2065        ‘GLEW_EXT_win32_keyed_mutex’: undeclared identifier
* C2065        ‘GLEW_EXT_window_rectangles’: undeclared identifier
* C2065        ‘GLEW_EXT_x11_sync_object’: undeclared identifier
* C2065        ‘GLEW_EXT_YUV_target’: undeclared identifier
* C2065        ‘GLEW_GET_FUN’: undeclared identifier
* C2065        ‘GLEW_GREMEDY_frame_terminator’: undeclared identifier
* C2065        ‘GLEW_GREMEDY_string_marker’: undeclared identifier
* C2065        ‘GLEW_HP_convolution_border_modes’: undeclared identifier
* C2065        ‘GLEW_HP_image_transform’: undeclared identifier
* C2065        ‘GLEW_HP_occlusion_test’: undeclared identifier
* C2065        ‘GLEW_HP_texture_lighting’: undeclared identifier
* C2065        ‘GLEW_IBM_cull_vertex’: undeclared identifier
* C2065        ‘GLEW_IBM_multimode_draw_arrays’: undeclared identifier
* C2065        ‘GLEW_IBM_rasterpos_clip’: undeclared identifier
* C2065        ‘GLEW_IBM_static_data’: undeclared identifier
* C2065        ‘GLEW_IBM_texture_mirrored_repeat’: undeclared identifier
* C2065        ‘GLEW_IBM_vertex_array_lists’: undeclared identifier
* C2065        ‘GLEW_INGR_color_clamp’: undeclared identifier
* C2065        ‘GLEW_INGR_interlace_read’: undeclared identifier
* C2065        ‘GLEW_INTEL_conservative_rasterization’: undeclared identifier
* C2065        ‘GLEW_INTEL_fragment_shader_ordering’: undeclared identifier
* C2065        ‘GLEW_INTEL_framebuffer_CMAA’: undeclared identifier
* C2065        ‘GLEW_INTEL_map_texture’: undeclared identifier
* C2065        ‘GLEW_INTEL_parallel_arrays’: undeclared identifier
* C2065        ‘GLEW_INTEL_performance_query’: undeclared identifier
* C2065        ‘GLEW_INTEL_texture_scissor’: undeclared identifier
* C2065        ‘GLEW_KHR_blend_equation_advanced’: undeclared identifier
* C2065        ‘GLEW_KHR_blend_equation_advanced_coherent’: undeclared identifier
* C2065        ‘GLEW_KHR_context_flush_control’: undeclared identifier
* C2065        ‘GLEW_KHR_debug’: undeclared identifier
* C2065        ‘GLEW_KHR_no_error’: undeclared identifier
* C2065        ‘GLEW_KHR_parallel_shader_compile’: undeclared identifier
* C2065        ‘GLEW_KHR_robust_buffer_access_behavior’: undeclared identifier
* C2065        ‘GLEW_KHR_robustness’: undeclared identifier
* C2065        ‘GLEW_KHR_texture_compression_astc_hdr’: undeclared identifier
* C2065        ‘GLEW_KHR_texture_compression_astc_ldr’: undeclared identifier
* C2065        ‘GLEW_KHR_texture_compression_astc_sliced_3d’: undeclared identifier
* C2065        ‘GLEW_KTX_buffer_region’: undeclared identifier
* C2065        ‘GLEW_MESA_pack_invert’: undeclared identifier
* C2065        ‘GLEW_MESA_resize_buffers’: undeclared identifier
* C2065        ‘GLEW_MESA_shader_integer_functions’: undeclared identifier
* C2065        ‘GLEW_MESA_window_pos’: undeclared identifier
* C2065        ‘GLEW_MESA_ycbcr_texture’: undeclared identifier
* C2065        ‘GLEW_MESAX_texture_stack’: undeclared identifier
* C2065        ‘GLEW_NO_ERROR’: undeclared identifier
* C2065        ‘GLEW_NV_3dvision_settings’: undeclared identifier
* C2065        ‘GLEW_NV_alpha_to_coverage_dither_control’: undeclared identifier
* C2065        ‘GLEW_NV_bgr’: undeclared identifier
* C2065        ‘GLEW_NV_bindless_multi_draw_indirect’: undeclared identifier
* C2065        ‘GLEW_NV_bindless_multi_draw_indirect_count’: undeclared identifier
* C2065        ‘GLEW_NV_bindless_texture’: undeclared identifier
* C2065        ‘GLEW_NV_blend_equation_advanced’: undeclared identifier
* C2065        ‘GLEW_NV_blend_equation_advanced_coherent’: undeclared identifier
* C2065        ‘GLEW_NV_blend_minmax_factor’: undeclared identifier
* C2065        ‘GLEW_NV_blend_square’: undeclared identifier
* C2065        ‘GLEW_NV_clip_space_w_scaling’: undeclared identifier
* C2065        ‘GLEW_NV_command_list’: undeclared identifier
* C2065        ‘GLEW_NV_compute_program5’: undeclared identifier
* C2065        ‘GLEW_NV_conditional_render’: undeclared identifier
* C2065        ‘GLEW_NV_conservative_raster’: undeclared identifier
* C2065        ‘GLEW_NV_conservative_raster_dilate’: undeclared identifier
* C2065        ‘GLEW_NV_conservative_raster_pre_snap_triangles’: undeclared identifier
* C2065        ‘GLEW_NV_copy_buffer’: undeclared identifier
* C2065        ‘GLEW_NV_copy_depth_to_color’: undeclared identifier
* C2065        ‘GLEW_NV_copy_image’: undeclared identifier
* C2065        ‘GLEW_NV_deep_texture3D’: undeclared identifier
* C2065        ‘GLEW_NV_depth_buffer_float’: undeclared identifier
* C2065        ‘GLEW_NV_depth_clamp’: undeclared identifier
* C2065        ‘GLEW_NV_depth_range_unclamped’: undeclared identifier
* C2065        ‘GLEW_NV_draw_buffers’: undeclared identifier
* C2065        ‘GLEW_NV_draw_instanced’: undeclared identifier
* C2065        ‘GLEW_NV_draw_texture’: undeclared identifier
* C2065        ‘GLEW_NV_draw_vulkan_image’: undeclared identifier
* C2065        ‘GLEW_NV_EGL_stream_consumer_external’: undeclared identifier
* C2065        ‘GLEW_NV_evaluators’: undeclared identifier
* C2065        ‘GLEW_NV_explicit_attrib_location’: undeclared identifier
* C2065        ‘GLEW_NV_explicit_multisample’: undeclared identifier
* C2065        ‘GLEW_NV_fbo_color_attachments’: undeclared identifier
* C2065        ‘GLEW_NV_fence’: undeclared identifier
* C2065        ‘GLEW_NV_fill_rectangle’: undeclared identifier
* C2065        ‘GLEW_NV_float_buffer’: undeclared identifier
* C2065        ‘GLEW_NV_fog_distance’: undeclared identifier
* C2065        ‘GLEW_NV_fragment_coverage_to_color’: undeclared identifier
* C2065        ‘GLEW_NV_fragment_program2’: undeclared identifier
* C2065        ‘GLEW_NV_fragment_program4’: undeclared identifier
* C2065        ‘GLEW_NV_fragment_program’: undeclared identifier
* C2065        ‘GLEW_NV_fragment_program_option’: undeclared identifier
* C2065        ‘GLEW_NV_fragment_shader_interlock’: undeclared identifier
* C2065        ‘GLEW_NV_framebuffer_blit’: undeclared identifier
* C2065        ‘GLEW_NV_framebuffer_mixed_samples’: undeclared identifier
* C2065        ‘GLEW_NV_framebuffer_multisample’: undeclared identifier
* C2065        ‘GLEW_NV_framebuffer_multisample_coverage’: undeclared identifier
* C2065        ‘GLEW_NV_generate_mipmap_sRGB’: undeclared identifier
* C2065        ‘GLEW_NV_geometry_program4’: undeclared identifier
* C2065        ‘GLEW_NV_geometry_shader4’: undeclared identifier
* C2065        ‘GLEW_NV_geometry_shader_passthrough’: undeclared identifier
* C2065        ‘GLEW_NV_gpu_multicast’: undeclared identifier
* C2065        ‘GLEW_NV_gpu_program4’: undeclared identifier
* C2065        ‘GLEW_NV_gpu_program5’: undeclared identifier
* C2065        ‘GLEW_NV_gpu_program5_mem_extended’: undeclared identifier
* C2065        ‘GLEW_NV_gpu_program_fp64’: undeclared identifier
* C2065        ‘GLEW_NV_gpu_shader5’: undeclared identifier
* C2065        ‘GLEW_NV_half_float’: undeclared identifier
* C2065        ‘GLEW_NV_image_formats’: undeclared identifier
* C2065        ‘GLEW_NV_instanced_arrays’: undeclared identifier
* C2065        ‘GLEW_NV_internalformat_sample_query’: undeclared identifier
* C2065        ‘GLEW_NV_light_max_exponent’: undeclared identifier
* C2065        ‘GLEW_NV_multisample_coverage’: undeclared identifier
* C2065        ‘GLEW_NV_multisample_filter_hint’: undeclared identifier
* C2065        ‘GLEW_NV_non_square_matrices’: undeclared identifier
* C2065        ‘GLEW_NV_occlusion_query’: undeclared identifier
* C2065        ‘GLEW_NV_pack_subimage’: undeclared identifier
* C2065        ‘GLEW_NV_packed_depth_stencil’: undeclared identifier
* C2065        ‘GLEW_NV_packed_float’: undeclared identifier
* C2065        ‘GLEW_NV_packed_float_linear’: undeclared identifier
* C2065        ‘GLEW_NV_parameter_buffer_object2’: undeclared identifier
* C2065        ‘GLEW_NV_parameter_buffer_object’: undeclared identifier
* C2065        ‘GLEW_NV_path_rendering’: undeclared identifier
* C2065        ‘GLEW_NV_path_rendering_shared_edge’: undeclared identifier
* C2065        ‘GLEW_NV_pixel_buffer_object’: undeclared identifier
* C2065        ‘GLEW_NV_pixel_data_range’: undeclared identifier
* C2065        ‘GLEW_NV_platform_binary’: undeclared identifier
* C2065        ‘GLEW_NV_point_sprite’: undeclared identifier
* C2065        ‘GLEW_NV_polygon_mode’: undeclared identifier
* C2065        ‘GLEW_NV_present_video’: undeclared identifier
* C2065        ‘GLEW_NV_primitive_restart’: undeclared identifier
* C2065        ‘GLEW_NV_read_depth’: undeclared identifier
* C2065        ‘GLEW_NV_read_depth_stencil’: undeclared identifier
* C2065        ‘GLEW_NV_read_stencil’: undeclared identifier
* C2065        ‘GLEW_NV_register_combiners2’: undeclared identifier
* C2065        ‘GLEW_NV_register_combiners’: undeclared identifier
* C2065        ‘GLEW_NV_robustness_video_memory_purge’: undeclared identifier
* C2065        ‘GLEW_NV_sample_locations’: undeclared identifier
* C2065        ‘GLEW_NV_sample_mask_override_coverage’: undeclared identifier
* C2065        ‘GLEW_NV_shader_atomic_counters’: undeclared identifier
* C2065        ‘GLEW_NV_shader_atomic_float64’: undeclared identifier
* C2065        ‘GLEW_NV_shader_atomic_float’: undeclared identifier
* C2065        ‘GLEW_NV_shader_atomic_fp16_vector’: undeclared identifier
* C2065        ‘GLEW_NV_shader_atomic_int64’: undeclared identifier
* C2065        ‘GLEW_NV_shader_buffer_load’: undeclared identifier
* C2065        ‘GLEW_NV_shader_noperspective_interpolation’: undeclared identifier
* C2065        ‘GLEW_NV_shader_storage_buffer_object’: undeclared identifier
* C2065        ‘GLEW_NV_shader_thread_group’: undeclared identifier
* C2065        ‘GLEW_NV_shader_thread_shuffle’: undeclared identifier
* C2065        ‘GLEW_NV_shadow_samplers_array’: undeclared identifier
* C2065        ‘GLEW_NV_shadow_samplers_cube’: undeclared identifier
* C2065        ‘GLEW_NV_sRGB_formats’: undeclared identifier
* C2065        ‘GLEW_NV_stereo_view_rendering’: undeclared identifier
* C2065        ‘GLEW_NV_tessellation_program5’: undeclared identifier
* C2065        ‘GLEW_NV_texgen_emboss’: undeclared identifier
* C2065        ‘GLEW_NV_texgen_reflection’: undeclared identifier
* C2065        ‘GLEW_NV_texture_array’: undeclared identifier
* C2065        ‘GLEW_NV_texture_barrier’: undeclared identifier
* C2065        ‘GLEW_NV_texture_border_clamp’: undeclared identifier
* C2065        ‘GLEW_NV_texture_compression_latc’: undeclared identifier
* C2065        ‘GLEW_NV_texture_compression_s3tc’: undeclared identifier
* C2065        ‘GLEW_NV_texture_compression_s3tc_update’: undeclared identifier
* C2065        ‘GLEW_NV_texture_compression_vtc’: undeclared identifier
* C2065        ‘GLEW_NV_texture_env_combine4’: undeclared identifier
* C2065        ‘GLEW_NV_texture_expand_normal’: undeclared identifier
* C2065        ‘GLEW_NV_texture_multisample’: undeclared identifier
* C2065        ‘GLEW_NV_texture_npot_2D_mipmap’: undeclared identifier
* C2065        ‘GLEW_NV_texture_rectangle’: undeclared identifier
* C2065        ‘GLEW_NV_texture_rectangle_compressed’: undeclared identifier
* C2065        ‘GLEW_NV_texture_shader2’: undeclared identifier
* C2065        ‘GLEW_NV_texture_shader3’: undeclared identifier
* C2065        ‘GLEW_NV_texture_shader’: undeclared identifier
* C2065        ‘GLEW_NV_transform_feedback2’: undeclared identifier
* C2065        ‘GLEW_NV_transform_feedback’: undeclared identifier
* C2065        ‘GLEW_NV_uniform_buffer_unified_memory’: undeclared identifier
* C2065        ‘GLEW_NV_vdpau_interop’: undeclared identifier
* C2065        ‘GLEW_NV_vertex_array_range2’: undeclared identifier
* C2065        ‘GLEW_NV_vertex_array_range’: undeclared identifier
* C2065        ‘GLEW_NV_vertex_attrib_integer_64bit’: undeclared identifier
* C2065        ‘GLEW_NV_vertex_buffer_unified_memory’: undeclared identifier
* C2065        ‘GLEW_NV_vertex_program1_1’: undeclared identifier
* C2065        ‘GLEW_NV_vertex_program2’: undeclared identifier
* C2065        ‘GLEW_NV_vertex_program2_option’: undeclared identifier
* C2065        ‘GLEW_NV_vertex_program3’: undeclared identifier
* C2065        ‘GLEW_NV_vertex_program4’: undeclared identifier
* C2065        ‘GLEW_NV_vertex_program’: undeclared identifier
* C2065        ‘GLEW_NV_video_capture’: undeclared identifier
* C2065        ‘GLEW_NV_viewport_array2’: undeclared identifier
* C2065        ‘GLEW_NV_viewport_array’: undeclared identifier
* C2065        ‘GLEW_NV_viewport_swizzle’: undeclared identifier
* C2065        ‘GLEW_NVX_blend_equation_advanced_multi_draw_buffers’: undeclared identifier
* C2065        ‘GLEW_NVX_conditional_render’: undeclared identifier
* C2065        ‘GLEW_NVX_gpu_memory_info’: undeclared identifier
* C2065        ‘GLEW_NVX_linked_gpu_multicast’: undeclared identifier
* C2065        ‘GLEW_OES_byte_coordinates’: undeclared identifier
* C2065        ‘GLEW_OK’: undeclared identifier
* C2065        ‘GLEW_OML_interlace’: undeclared identifier
* C2065        ‘GLEW_OML_resample’: undeclared identifier
* C2065        ‘GLEW_OML_subsample’: undeclared identifier
* C2065        ‘GLEW_OVR_multiview2’: undeclared identifier
* C2065        ‘GLEW_OVR_multiview’: undeclared identifier
* C2065        ‘GLEW_OVR_multiview_multisampled_render_to_texture’: undeclared identifier
* C2065        ‘GLEW_PGI_misc_hints’: undeclared identifier
* C2065        ‘GLEW_PGI_vertex_hints’: undeclared identifier
* C2065        ‘GLEW_QCOM_alpha_test’: undeclared identifier
* C2065        ‘GLEW_QCOM_binning_control’: undeclared identifier
* C2065        ‘GLEW_QCOM_driver_control’: undeclared identifier
* C2065        ‘GLEW_QCOM_extended_get2’: undeclared identifier
* C2065        ‘GLEW_QCOM_extended_get’: undeclared identifier
* C2065        ‘GLEW_QCOM_framebuffer_foveated’: undeclared identifier
* C2065        ‘GLEW_QCOM_perfmon_global_mode’: undeclared identifier
* C2065        ‘GLEW_QCOM_shader_framebuffer_fetch_noncoherent’: undeclared identifier
* C2065        ‘GLEW_QCOM_tiled_rendering’: undeclared identifier
* C2065        ‘GLEW_QCOM_writeonly_rendering’: undeclared identifier
* C2065        ‘GLEW_REGAL_enable’: undeclared identifier
* C2065        ‘GLEW_REGAL_error_string’: undeclared identifier
* C2065        ‘GLEW_REGAL_ES1_0_compatibility’: undeclared identifier
* C2065        ‘GLEW_REGAL_ES1_1_compatibility’: undeclared identifier
* C2065        ‘GLEW_REGAL_extension_query’: undeclared identifier
* C2065        ‘GLEW_REGAL_log’: undeclared identifier
* C2065        ‘GLEW_REGAL_proc_address’: undeclared identifier
* C2065        ‘GLEW_REND_screen_coordinates’: undeclared identifier
* C2065        ‘GLEW_S3_s3tc’: undeclared identifier
* C2065        ‘GLEW_SGI_color_matrix’: undeclared identifier
* C2065        ‘GLEW_SGI_color_table’: undeclared identifier
* C2065        ‘GLEW_SGI_complex’: undeclared identifier
* C2065        ‘GLEW_SGI_complex_type’: undeclared identifier
* C2065        ‘GLEW_SGI_fft’: undeclared identifier
* C2065        ‘GLEW_SGI_texture_color_table’: undeclared identifier
* C2065        ‘GLEW_SGIS_clip_band_hint’: undeclared identifier
* C2065        ‘GLEW_SGIS_color_range’: undeclared identifier
* C2065        ‘GLEW_SGIS_detail_texture’: undeclared identifier
* C2065        ‘GLEW_SGIS_fog_function’: undeclared identifier
* C2065        ‘GLEW_SGIS_generate_mipmap’: undeclared identifier
* C2065        ‘GLEW_SGIS_line_texgen’: undeclared identifier
* C2065        ‘GLEW_SGIS_multisample’: undeclared identifier
* C2065        ‘GLEW_SGIS_multitexture’: undeclared identifier
* C2065        ‘GLEW_SGIS_pixel_texture’: undeclared identifier
* C2065        ‘GLEW_SGIS_point_line_texgen’: undeclared identifier
* C2065        ‘GLEW_SGIS_shared_multisample’: undeclared identifier
* C2065        ‘GLEW_SGIS_sharpen_texture’: undeclared identifier
* C2065        ‘GLEW_SGIS_texture4D’: undeclared identifier
* C2065        ‘GLEW_SGIS_texture_border_clamp’: undeclared identifier
* C2065        ‘GLEW_SGIS_texture_edge_clamp’: undeclared identifier
* C2065        ‘GLEW_SGIS_texture_filter4’: undeclared identifier
* C2065        ‘GLEW_SGIS_texture_lod’: undeclared identifier
* C2065        ‘GLEW_SGIS_texture_select’: undeclared identifier
* C2065        ‘GLEW_SGIX_async’: undeclared identifier
* C2065        ‘GLEW_SGIX_async_histogram’: undeclared identifier
* C2065        ‘GLEW_SGIX_async_pixel’: undeclared identifier
* C2065        ‘GLEW_SGIX_bali_g_instruments’: undeclared identifier
* C2065        ‘GLEW_SGIX_bali_r_instruments’: undeclared identifier
* C2065        ‘GLEW_SGIX_bali_timer_instruments’: undeclared identifier
* C2065        ‘GLEW_SGIX_blend_alpha_minmax’: undeclared identifier
* C2065        ‘GLEW_SGIX_blend_cadd’: undeclared identifier
* C2065        ‘GLEW_SGIX_blend_cmultiply’: undeclared identifier
* C2065        ‘GLEW_SGIX_calligraphic_fragment’: undeclared identifier
* C2065        ‘GLEW_SGIX_clipmap’: undeclared identifier
* C2065        ‘GLEW_SGIX_color_matrix_accuracy’: undeclared identifier
* C2065        ‘GLEW_SGIX_color_table_index_mode’: undeclared identifier
* C2065        ‘GLEW_SGIX_complex_polar’: undeclared identifier
* C2065        ‘GLEW_SGIX_convolution_accuracy’: undeclared identifier
* C2065        ‘GLEW_SGIX_cube_map’: undeclared identifier
* C2065        ‘GLEW_SGIX_cylinder_texgen’: undeclared identifier
* C2065        ‘GLEW_SGIX_datapipe’: undeclared identifier
* C2065        ‘GLEW_SGIX_decimation’: undeclared identifier
* C2065        ‘GLEW_SGIX_depth_pass_instrument’: undeclared identifier
* C2065        ‘GLEW_SGIX_depth_texture’: undeclared identifier
* C2065        ‘GLEW_SGIX_dvc’: undeclared identifier
* C2065        ‘GLEW_SGIX_flush_raster’: undeclared identifier
* C2065        ‘GLEW_SGIX_fog_blend’: undeclared identifier
* C2065        ‘GLEW_SGIX_fog_factor_to_alpha’: undeclared identifier
* C2065        ‘GLEW_SGIX_fog_layers’: undeclared identifier
* C2065        ‘GLEW_SGIX_fog_offset’: undeclared identifier
* C2065        ‘GLEW_SGIX_fog_patchy’: undeclared identifier
* C2065        ‘GLEW_SGIX_fog_scale’: undeclared identifier
* C2065        ‘GLEW_SGIX_fog_texture’: undeclared identifier
* C2065        ‘GLEW_SGIX_fragment_lighting_space’: undeclared identifier
* C2065        ‘GLEW_SGIX_fragment_specular_lighting’: undeclared identifier
* C2065        ‘GLEW_SGIX_fragments_instrument’: undeclared identifier
* C2065        ‘GLEW_SGIX_framezoom’: undeclared identifier
* C2065        ‘GLEW_SGIX_icc_texture’: undeclared identifier
* C2065        ‘GLEW_SGIX_igloo_interface’: undeclared identifier
* C2065        ‘GLEW_SGIX_image_compression’: undeclared identifier
* C2065        ‘GLEW_SGIX_impact_pixel_texture’: undeclared identifier
* C2065        ‘GLEW_SGIX_instrument_error’: undeclared identifier
* C2065        ‘GLEW_SGIX_interlace’: undeclared identifier
* C2065        ‘GLEW_SGIX_ir_instrument1’: undeclared identifier
* C2065        ‘GLEW_SGIX_line_quality_hint’: undeclared identifier
* C2065        ‘GLEW_SGIX_list_priority’: undeclared identifier
* C2065        ‘GLEW_SGIX_mpeg1’: undeclared identifier
* C2065        ‘GLEW_SGIX_mpeg2’: undeclared identifier
* C2065        ‘GLEW_SGIX_nonlinear_lighting_pervertex’: undeclared identifier
* C2065        ‘GLEW_SGIX_nurbs_eval’: undeclared identifier
* C2065        ‘GLEW_SGIX_occlusion_instrument’: undeclared identifier
* C2065        ‘GLEW_SGIX_packed_6bytes’: undeclared identifier
* C2065        ‘GLEW_SGIX_pixel_texture’: undeclared identifier
* C2065        ‘GLEW_SGIX_pixel_texture_bits’: undeclared identifier
* C2065        ‘GLEW_SGIX_pixel_texture_lod’: undeclared identifier
* C2065        ‘GLEW_SGIX_pixel_tiles’: undeclared identifier
* C2065        ‘GLEW_SGIX_polynomial_ffd’: undeclared identifier
* C2065        ‘GLEW_SGIX_quad_mesh’: undeclared identifier
* C2065        ‘GLEW_SGIX_reference_plane’: undeclared identifier
* C2065        ‘GLEW_SGIX_resample’: undeclared identifier
* C2065        ‘GLEW_SGIX_scalebias_hint’: undeclared identifier
* C2065        ‘GLEW_SGIX_shadow’: undeclared identifier
* C2065        ‘GLEW_SGIX_shadow_ambient’: undeclared identifier
* C2065        ‘GLEW_SGIX_slim’: undeclared identifier
* C2065        ‘GLEW_SGIX_spotlight_cutoff’: undeclared identifier
* C2065        ‘GLEW_SGIX_sprite’: undeclared identifier
* C2065        ‘GLEW_SGIX_subdiv_patch’: undeclared identifier
* C2065        ‘GLEW_SGIX_subsample’: undeclared identifier
* C2065        ‘GLEW_SGIX_tag_sample_buffer’: undeclared identifier
* C2065        ‘GLEW_SGIX_texture_add_env’: undeclared identifier
* C2065        ‘GLEW_SGIX_texture_coordinate_clamp’: undeclared identifier
* C2065        ‘GLEW_SGIX_texture_lod_bias’: undeclared identifier
* C2065        ‘GLEW_SGIX_texture_mipmap_anisotropic’: undeclared identifier
* C2065        ‘GLEW_SGIX_texture_multi_buffer’: undeclared identifier
* C2065        ‘GLEW_SGIX_texture_phase’: undeclared identifier
* C2065        ‘GLEW_SGIX_texture_range’: undeclared identifier
* C2065        ‘GLEW_SGIX_texture_scale_bias’: undeclared identifier
* C2065        ‘GLEW_SGIX_texture_supersample’: undeclared identifier
* C2065        ‘GLEW_SGIX_vector_ops’: undeclared identifier
* C2065        ‘GLEW_SGIX_vertex_array_object’: undeclared identifier
* C2065        ‘GLEW_SGIX_vertex_preclip’: undeclared identifier
* C2065        ‘GLEW_SGIX_vertex_preclip_hint’: undeclared identifier
* C2065        ‘GLEW_SGIX_ycrcb’: undeclared identifier
* C2065        ‘GLEW_SGIX_ycrcb_subsample’: undeclared identifier
* C2065        ‘GLEW_SGIX_ycrcba’: undeclared identifier
* C2065        ‘GLEW_SUN_convolution_border_modes’: undeclared identifier
* C2065        ‘GLEW_SUN_global_alpha’: undeclared identifier
* C2065        ‘GLEW_SUN_mesh_array’: undeclared identifier
* C2065        ‘GLEW_SUN_read_video_pixels’: undeclared identifier
* C2065        ‘GLEW_SUN_slice_accum’: undeclared identifier
* C2065        ‘GLEW_SUN_triangle_list’: undeclared identifier
* C2065        ‘GLEW_SUN_vertex’: undeclared identifier
* C2065        ‘GLEW_SUNX_constant_data’: undeclared identifier
* C2065        ‘GLEW_VERSION’: undeclared identifier
* C2065        ‘GLEW_VERSION_1_1’: undeclared identifier
* C2065        ‘GLEW_VERSION_1_2’: undeclared identifier
* C2065        ‘GLEW_VERSION_1_2_1’: undeclared identifier
* C2065        ‘GLEW_VERSION_1_3’: undeclared identifier
* C2065        ‘GLEW_VERSION_1_4’: undeclared identifier
* C2065        ‘GLEW_VERSION_1_5’: undeclared identifier
* C2065        ‘GLEW_VERSION_2_0’: undeclared identifier
* C2065        ‘GLEW_VERSION_2_1’: undeclared identifier
* C2065        ‘GLEW_VERSION_3_0’: undeclared identifier
* C2065        ‘GLEW_VERSION_3_1’: undeclared identifier
* C2065        ‘GLEW_VERSION_3_2’: undeclared identifier
* C2065        ‘GLEW_VERSION_3_3’: undeclared identifier
* C2065        ‘GLEW_VERSION_4_0’: undeclared identifier
* C2065        ‘GLEW_VERSION_4_1’: undeclared identifier
* C2065        ‘GLEW_VERSION_4_2’: undeclared identifier
* C2065        ‘GLEW_VERSION_4_3’: undeclared identifier
* C2065        ‘GLEW_VERSION_4_4’: undeclared identifier
* C2065        ‘GLEW_VERSION_4_5’: undeclared identifier
* C2065        ‘GLEW_VERSION_4_6’: undeclared identifier
* C2065        ‘GLEW_VERSION_MAJOR’: undeclared identifier
* C2065        ‘GLEW_VERSION_MICRO’: undeclared identifier
* C2065        ‘GLEW_VERSION_MINOR’: undeclared identifier
* C2065        ‘GLEW_WIN_phong_shading’: undeclared identifier
* C2065        ‘GLEW_WIN_scene_markerXXX’: undeclared identifier
* C2065        ‘GLEW_WIN_specular_fog’: undeclared identifier
* C2065        ‘GLEW_WIN_swap_hint’: undeclared identifier
* C3861        ‘GLEW_GET_FUN’: identifier not found
* C3861        ‘GLEW_GET_VAR’: identifier not found

Python Error Strings:

* AttributeError: module ‘pxr.Glf’ has no attribute ‘GlewInit’

Other Breaking Changes

Schemas

pluginInfo.json

plugInfo json now requires schemaKind field

Without it, schemas may silently fail to load.

For more information on schemaKind, see: [Breaking Change: Schema Kind]

TODO: more investigation / details

https://nvidia.slack.com/archives/C04190ZMT6U/p1677673185286159

https://nvidia.slack.com/archives/C04190ZMT6U/p1678264560240499

Python Error Strings:

* ‘ApplyAPI: Provided schema type ‘<SCHEMA_NAME>’ is not a single-apply API schema type.’

Non-Breaking Changes

Imaging

Hdx

Hdx TaskController

Added HdxTaskController SetPresentationOutput

It seems that when SetPresentationOutput was originally added in 22.05, calling it from UsdImagingGLEngine / omni.hydra.pxr’s SimpleUsdGLEngine.cpp may have been required, but in 22.08 the functionality was moved to HgiInteropOpenGL

Reference Commits:

* Adding SetPresentationOutput to HdxPresentTask, HdxTaskController.
* Adding UsdImagingGLEngine::SetPresentationOutput.
* [UsdImagingGL] Removed most direct use of GL from UsdImagingGL… Also, we no longer explicitly set the current draw framebuffer binding as the presentation output in the task controller since the fallback behavior in HgiInteropOpenGL is to present to the current draw framebuffer.

Upgrading assets and test files

The previous sections cover most of the changes you need to perform to your code base, i.e. C++, Python files, as well as compilation and interpretation errors. After following the previous fixes you may still find that your assets or test files (i.e. your USDs) have stopped working.

We have implemented forward compatibility tests in Omni Asset Validation. This is an extension implemented in Kit, at the moment of writing this document (03/23/2023) the latest version is 0.3.2. Please refer to the documentation on how to quickly use it with the graphical user interface.

For the scope of this document, please select the Rules of the category USD Schema. Those rules will help you out to fix all your documents. Below you will find some of the common problem:

UsdGeomSubsetChecker

Problems

* GeomSubset has a material binding but no valid family name attribute.

See

* UsdGeom.Subset

Resolution

* Enable USD Schema / UsdGeomSubsetChecker.
* Adds the family name attribute.

UsdLuxSchemaChecker

Problems

* UsdLux attribute has been renamed to USD 21.02 and should be prefixed with ‘inputs:’.

See

* All properties now prefixed with “inputs:”

Resolution

* Enable USD Schema / UsdLuxSchemaChecker.
* Asset Validator will create a new attribute with the prefix “inputs:” for backward and forward compatibility.

UsdMaterialBindingApi

Problems

* Prim has a material binding but does not have the MaterialBindingApi.

See

* Material bindings require UsdShadeMaterialBindingAPI to be applied

Resolution

* Enable USD Schema / UsdMaterialBindingApi.
* Asset Validator will apply UsdShadeMaterialBindingAPI to your prim.

UsdDanglingMaterialBindingApi

Problems

* Prim has a material binding but the material binding is not found in the stage. The stage may not render properly. Example: https://nvidia-omniverse.atlassian.net/browse/OM-87439

See

* Material bindings require UsdShadeMaterialBindingAPI to be applied

Resolution

* Enable USD Schema / UsdDanglingMaterialBindingApi.
* Asset Validator will unbind all bindings to your prim.

Dumping Ground

A place for extra notes / incomplete items that we don’t want to forget

Schemas removed

  • UsdLuxLight

  • UsdLuxLightPortal

  • UsdMdlMdlAPI

  • UsdRenderSettingsAPI

  • UsdRiLightAPI

  • UsdRiLightFilterAPI

  • UsdRiLightPortalAPI

  • UsdRiPxrAovLight

  • UsdRiPxrBarnLightFilter

  • UsdRiPxrCookieLightFilter

  • UsdRiPxrEnvDayLight

  • UsdRiPxrIntMultLightFilter

  • UsdRiPxrRampLightFilter

  • UsdRiPxrRodLightFilter

  • UsdRiRiLightFilterAPI

  • UsdRiRisBxdf

  • UsdRiRisIntegrator

  • UsdRiRisObject

  • UsdRiRisOslPattern

  • UsdRiRisPattern

  • UsdRiRslShader

  • UsdRiTextureAPI

Schemas added

  • UsdGeomPlane

  • UsdGeomVisibilityAPI

  • UsdHydraGenerativeProceduralAPI

  • UsdLuxBoundableLightBase

  • UsdLuxLightAPI

  • UsdLuxLightListAPI

  • UsdLuxMeshLightAPI

  • UsdLuxNonboundableLightBase

  • UsdLuxPluginLight

  • UsdLuxPluginLightFilter

  • UsdLuxPortalLight

  • UsdLuxVolumeLightAPI

  • UsdMdlAPIMdlAPI

  • UsdPhysicsArticulationRootAPI

  • UsdPhysicsCollisionAPI

  • UsdPhysicsCollisionGroup

  • UsdPhysicsDistanceJoint

  • UsdPhysicsDriveAPI

  • UsdPhysicsFilteredPairsAPI

  • UsdPhysicsFixedJoint

  • UsdPhysicsJoint

  • UsdPhysicsMassAPI

  • UsdPhysicsMaterialAPI

  • UsdPhysicsMeshCollisionAPI

  • UsdPhysicsPrismaticJoint

  • UsdPhysicsRevoluteJoint

  • UsdPhysicsRigidBodyAPI

  • UsdPhysicsScene

  • UsdPhysicsSphericalJoint

  • UsdRenderDenoisePass

  • UsdRenderPass

  • UsdShadeNodeDefAPI