Blender V4.3
usd_attribute_utils.hh File Reference
#include "BLI_color.hh"
#include "BLI_generic_virtual_array.hh"
#include "BLI_math_quaternion_types.hh"
#include "BLI_math_vector_types.hh"
#include "BLI_span.hh"
#include "BLI_virtual_array.hh"
#include "BKE_attribute.hh"
#include "DNA_customdata_types.h"
#include <pxr/base/gf/quatf.h>
#include <pxr/base/gf/vec2f.h>
#include <pxr/base/gf/vec3f.h>
#include <pxr/base/vt/array.h>
#include <pxr/usd/sdf/types.h>
#include <pxr/usd/sdf/valueTypeName.h>
#include <pxr/usd/usd/timeCode.h>
#include <pxr/usd/usdGeom/primvar.h>
#include <pxr/usd/usdUtils/sparseValueWriter.h>
#include <cstdint>
#include <optional>
#include <type_traits>

Go to the source code of this file.

Classes

struct  blender::io::usd::detail::is_layout_compatible< T, U >
 
struct  blender::io::usd::detail::is_layout_compatible< float2, pxr::GfVec2f >
 
struct  blender::io::usd::detail::is_layout_compatible< float3, pxr::GfVec3f >
 
struct  blender::io::usd::detail::is_layout_compatible< pxr::GfVec2f, float2 >
 
struct  blender::io::usd::detail::is_layout_compatible< pxr::GfVec3f, float3 >
 

Namespaces

namespace  usdtokens
 
namespace  blender
 
namespace  blender::io
 
namespace  blender::io::usd
 
namespace  blender::io::usd::detail
 

Functions

const pxr::TfToken usdtokens::displayColor ("displayColor", pxr::TfToken::Immortal)
 
template<typename From , typename To >
To blender::io::usd::detail::convert_value (const From value)
 
template<>
pxr::GfVec2f blender::io::usd::detail::convert_value (const float2 value)
 
template<>
pxr::GfVec3f blender::io::usd::detail::convert_value (const float3 value)
 
template<>
pxr::GfVec3f blender::io::usd::detail::convert_value (const ColorGeometry4f value)
 
template<>
pxr::GfVec4f blender::io::usd::detail::convert_value (const ColorGeometry4f value)
 
template<>
pxr::GfVec3f blender::io::usd::detail::convert_value (const ColorGeometry4b value)
 
template<>
pxr::GfVec4f blender::io::usd::detail::convert_value (const ColorGeometry4b value)
 
template<>
pxr::GfQuatf blender::io::usd::detail::convert_value (const math::Quaternion value)
 
template<>
float2 blender::io::usd::detail::convert_value (const pxr::GfVec2f value)
 
template<>
float3 blender::io::usd::detail::convert_value (const pxr::GfVec3f value)
 
template<>
ColorGeometry4f blender::io::usd::detail::convert_value (const pxr::GfVec3f value)
 
template<>
ColorGeometry4f blender::io::usd::detail::convert_value (const pxr::GfVec4f value)
 
template<>
math::Quaternion blender::io::usd::detail::convert_value (const pxr::GfQuatf value)
 
std::optional< pxr::SdfValueTypeName > blender::io::usd::convert_blender_type_to_usd (const eCustomDataType blender_type, bool use_color3f_type)
 
std::optional< eCustomDataTypeblender::io::usd::convert_usd_type_to_blender (const pxr::SdfValueTypeName usd_type)
 
template<typename BlenderT , typename USDT >
void blender::io::usd::copy_blender_buffer_to_primvar (const VArray< BlenderT > &buffer, const pxr::UsdTimeCode timecode, const pxr::UsdGeomPrimvar &primvar, pxr::UsdUtilsSparseValueWriter &value_writer)
 
void blender::io::usd::copy_blender_attribute_to_primvar (const GVArray &attribute, const eCustomDataType data_type, const pxr::UsdTimeCode timecode, const pxr::UsdGeomPrimvar &primvar, pxr::UsdUtilsSparseValueWriter &value_writer)
 
template<typename T >
pxr::VtArray< Tblender::io::usd::get_primvar_array (const pxr::UsdGeomPrimvar &primvar, const pxr::UsdTimeCode timecode)
 
template<typename USDT , typename BlenderT >
void blender::io::usd::copy_primvar_to_blender_buffer (const pxr::UsdGeomPrimvar &primvar, const pxr::UsdTimeCode timecode, const OffsetIndices< int > faces, MutableSpan< BlenderT > attribute)
 
void blender::io::usd::copy_primvar_to_blender_attribute (const pxr::UsdGeomPrimvar &primvar, const pxr::UsdTimeCode timecode, const eCustomDataType data_type, const bke::AttrDomain domain, const OffsetIndices< int > face_indices, bke::MutableAttributeAccessor attributes)