All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
translatorMaterial.h
Go to the documentation of this file.
1 //
2 // Copyright 2016 Pixar
3 //
4 // Licensed under the Apache License, Version 2.0 (the "Apache License")
5 // with the following modification; you may not use this file except in
6 // compliance with the Apache License and the following modification to it:
7 // Section 6. Trademarks. is deleted and replaced with:
8 //
9 // 6. Trademarks. This License does not grant permission to use the trade
10 // names, trademarks, service marks, or product names of the Licensor
11 // and its affiliates, except as required to comply with Section 4(c) of
12 // the License and to reproduce the content of the NOTICE file.
13 //
14 // You may obtain a copy of the Apache License at
15 //
16 // http://www.apache.org/licenses/LICENSE-2.0
17 //
18 // Unless required by applicable law or agreed to in writing, software
19 // distributed under the Apache License with the above modification is
20 // distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 // KIND, either express or implied. See the Apache License for the specific
22 // language governing permissions and limitations under the Apache License.
23 //
24 #ifndef PXRUSDMAYA_TRANSLATOR_MATERIAL_H
25 #define PXRUSDMAYA_TRANSLATOR_MATERIAL_H
26 
28 
29 #include "pxr/pxr.h"
30 #include "usdMaya/api.h"
32 #include "usdMaya/util.h"
34 
35 #include "pxr/base/tf/token.h"
36 #include "pxr/usd/sdf/path.h"
37 #include "pxr/usd/usdGeom/gprim.h"
38 #include "pxr/usd/usdShade/material.h"
39 
40 #include <maya/MObject.h>
41 
42 
43 PXR_NAMESPACE_OPEN_SCOPE
44 
45 
48 {
52  PXRUSDMAYA_API
53  static MObject Read(
54  const TfToken& shadingMode,
55  const UsdShadeMaterial& material,
56  const UsdGeomGprim& boundPrim,
57  UsdMayaPrimReaderContext* context);
58 
63  PXRUSDMAYA_API
64  static bool AssignMaterial(
65  const TfToken& shadingMode,
66  const UsdGeomGprim& prim,
67  MObject shapeObj,
68  UsdMayaPrimReaderContext* context);
69 
72  PXRUSDMAYA_API
73  static void ExportShadingEngines(
74  UsdMayaWriteJobContext& writeJobContext,
75  const UsdMayaUtil::MDagPathMap<SdfPath>& dagPathToUsdMap);
76 };
77 
78 
79 PXR_NAMESPACE_CLOSE_SCOPE
80 
81 
82 #endif
Provides helper functions for reading UsdShadeMaterial.
Provides basic functionality and access to shared data for UsdMayaPrimWriters.
std::map< MDagPath, V, _CmpDag > MDagPathMap
Mapping of DAG paths to an arbitrary type.
Definition: util.h:97
static PXRUSDMAYA_API void ExportShadingEngines(UsdMayaWriteJobContext &writeJobContext, const UsdMayaUtil::MDagPathMap< SdfPath > &dagPathToUsdMap)
Finds shadingEngines in the Maya scene and exports them to the USD stage contained in writeJobContext...
Token for efficient comparison, assignment, and hashing of known strings.
Definition: token.h:89
static PXRUSDMAYA_API MObject Read(const TfToken &shadingMode, const UsdShadeMaterial &material, const UsdGeomGprim &boundPrim, UsdMayaPrimReaderContext *context)
Reads material according to shadingMode .
Base class for all geometric primitives.
Definition: gprim.h:66
A Material provides a container into which multiple &quot;render targets&quot; can add data that defines a &quot;sha...
Definition: material.h:111
This class provides an interface for reader plugins to communicate state back to the core usd maya lo...
static PXRUSDMAYA_API bool AssignMaterial(const TfToken &shadingMode, const UsdGeomGprim &prim, MObject shapeObj, UsdMayaPrimReaderContext *context)
Given a prim, assigns a material to it according to shadingMode.