ModelIO Namespace
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Classes for manipulating 3D assets.
Classes
MDLAnimatedMatrix4x4 | |
MDLAnimatedQuaternionArray | |
MDLAnimatedScalar | |
MDLAnimatedScalarArray | |
MDLAnimatedValue | |
MDLAnimatedVector2 | |
MDLAnimatedVector3 | |
MDLAnimatedVector3Array | |
MDLAnimatedVector4 | |
MDLAnimationBindComponent | |
MDLAreaLight |
A basic high-performance light for illuminating scenes from a lit shape. |
MDLAsset |
A container that stores 3D assets as an indexed collection of MDLObject trees. |
MDLBundleAssetResolver | |
MDLCamera |
A point of view that looks into a 3D scence, and that can simulate certain aspects of a physical camera. |
MDLCheckerboardTexture |
Procedurally generates a checkerboard texture on demand, and caches the result. |
MDLColorSwatchTexture |
Texture that contains a gradient between two colors. |
MDLLight |
Base class for light sources. |
MDLLightProbe |
A light source that defines the color and intensity of its light in all directions. |
MDLLightProbeIrradianceDataSource | |
MDLLightProbeIrradianceDataSource_Extensions |
Extension methods to the IMDLLightProbeIrradianceDataSource interface to support all the methods from the MDLLightProbeIrradianceDataSource protocol. |
MDLMaterial |
Defines how a surface should appear when rendered. |
MDLMaterialProperty |
Defines a specific parameter that controls the rendering of a material surface. |
MDLMaterialPropertyConnection | |
MDLMaterialPropertyGraph | |
MDLMaterialPropertyNode | |
MDLMatrix4x4Array | |
MDLMesh |
A collection of MDLSubmesh objects that, together, define the geometric and material properties for rendering a 3D object. |
MDLMeshBuffer_Extensions |
Extension methods to the IMDLMeshBuffer interface to support all the methods from the IMDLMeshBuffer protocol. |
MDLMeshBufferData |
Provides storage for vertex and index data for a MDLMesh object. |
MDLMeshBufferDataAllocator |
An implementation of IMDLMeshBufferAllocator that allocates mesh buffer data space within main memory, not GPU memory. |
MDLMeshBufferMap |
Class that provides temporary access to mesh data in shared memory. |
MDLMeshBufferZone_Extensions |
Extension methods to the IMDLMeshBufferZone interface to support all the methods from the IMDLMeshBufferZone protocol. |
MDLMeshBufferZoneDefault |
A default implementation of a IMDLMeshBufferZone. |
MDLNoiseTexture |
Class that generates a texture that consists of random color or direction noise. |
MDLNormalMapTexture |
Class that generates a texture that contains surface normal data. |
MDLObject |
Base class for objects in a MDLAsset. |
MDLObjectContainer |
A default implementation of the abstract IMDLObjectContainerComponent class. |
MDLObjectContainerComponent_Extensions |
Extension methods to the IMDLObjectContainerComponent interface to support all the methods from the IMDLObjectContainerComponent protocol. |
MDLPackedJointAnimation | |
MDLPathAssetResolver | |
MDLPhotometricLight |
Represents a light that is derived from photometric data. |
MDLPhysicallyPlausibleLight |
Represents a light that plausibly attenutates and can represent black-body incandescence. |
MDLPhysicallyPlausibleScatteringFunction |
Represents a bidirectional reflectance distribution function to use when rendering a MDLMaterialTextureWrapMode. |
MDLRelativeAssetResolver | |
MDLScatteringFunction |
Represents a Bidirectional Reflectance Distribution Funcion (BRDF) that defines a material's response to lighting conditions. |
MDLSkeleton | |
MDLSkyCubeTexture |
A texture that represents a realistic sunlit sky. |
MDLStereoscopicCamera |
A camera that can be used to render stereoscopic views of a scene. |
MDLSubmesh |
Indexes and identifies a portion of an MDLMesh, and contains material information about the indexed portion. |
MDLSubmeshTopology |
Describes the topology of the vertices that are indexed by a submesh's index buffers. |
MDLTexture |
Represents texel data for surface rendering. |
MDLTextureFilter |
Describes filtering modes for rendering by sampling a texture. |
MDLTextureSampler |
Represents a texture and sampling parameters to use when rendering the texture. |
MDLTransform |
Represents static and animated coordinate transformations. |
MDLTransformComponent_Extensions |
Extension methods to the IMDLTransformComponent interface to support all the methods from the IMDLTransformComponent protocol. |
MDLTransformMatrixOp | |
MDLTransformRotateOp | |
MDLTransformRotateXOp | |
MDLTransformRotateYOp | |
MDLTransformRotateZOp | |
MDLTransformScaleOp | |
MDLTransformStack | |
MDLTransformTranslateOp | |
MDLUrlTexture |
Encapsulates on-demand loading of a texture at a URL. |
MDLVertexAttribute |
Describes the physical layout and semantic content of vertex data in an index buffer. |
MDLVertexAttributeData |
Provides convenient access to vertex data for a specific MDLMesh object. |
MDLVertexAttributes |
Contains valid vertex attribute names. |
MDLVertexBufferLayout |
Describes the layout of vertices in a mesh buffer object. |
MDLVertexDescriptor |
Describes the format of vertices in a mesh buffer. |
MDLVertexFormatExtensions |
Extension methods for MDLVertexFormat. |
MDLVoxelArray |
Models a 3D object as a collection of volumetric elements, called voxels. |
Structs
MDLAxisAlignedBoundingBox |
A bounding box whose axes are aligned with its coordinate system. |
MDLVoxelIndexExtent |
Provides the extent of voxel data. |
MDLVoxelIndexExtent2 |
Interfaces
IMDLAssetResolver | |
IMDLComponent |
Interface representing the required methods (if any) of the protocol IMDLComponent. |
IMDLJointAnimation | |
IMDLLightProbeIrradianceDataSource |
Interface representing the required methods (if any) of the protocol MDLLightProbeIrradianceDataSource. |
IMDLMeshBuffer |
Interface representing the required methods (if any) of the protocol IMDLMeshBuffer. |
IMDLMeshBufferAllocator |
Interface representing the required methods (if any) of the protocol MDLMeshBufferDataAllocator. |
IMDLMeshBufferZone |
Interface representing the required methods (if any) of the protocol IMDLMeshBufferZone. |
IMDLNamed |
Interface whose implementers define a Name property. |
IMDLObjectContainerComponent |
Interface representing the required methods (if any) of the protocol IMDLObjectContainerComponent. |
IMDLTransformComponent |
Interface representing the required methods (if any) of the protocol IMDLTransformComponent. |
IMDLTransformOp |
Enums
MDLAnimatedValueInterpolation | |
MDLCameraProjection |
Enumerates camera projections. |
MDLDataPrecision | |
MDLGeometryType |
Enumerates the geometric primitives to use for rendering. |
MDLIndexBitDepth |
Enumerates bit depths for MDLSubmesh index buffers. |
MDLLightType |
Enumerates the types of MDLLight. |
MDLMaterialFace | |
MDLMaterialMipMapFilterMode |
Enumerates values that control texture sampling between mipmap levels. |
MDLMaterialPropertyType |
Enumerates material property types. |
MDLMaterialSemantic |
Enumerates the semantics of an MDLMaterialProperty. |
MDLMaterialTextureFilterMode |
Enumerates values that control how to sample between texels. |
MDLMaterialTextureWrapMode |
Enumerates procedures for handling texture coordinates outside of the range |
MDLMesh.MDLMeshVectorType | |
MDLMeshBufferType |
Enumerates mesh buffer data types. |
MDLNoiseTextureType | |
MDLProbePlacement | |
MDLTextureChannelEncoding |
Enumerates values that specify data types and sizes for texel channels. |
MDLTransformOpRotationOrder | |
MDLVertexFormat |
Enumerates vertex data descriptions. |
Delegates
MDLObjectHandler |
Remarks
The Model I/O framework allows the developer to load and use 3D assets in the following formats:
Format |
Alembic |
Wavefront |
Polygons (.ply) |
Triangles (.stl) |
Additionally, developers can export to triangle (.stl) and wavefront formats.