Share via


MDLMesh Class

Definition

A collection of MDLSubmesh objects that, together, define the geometric and material properties for rendering a 3D object.

[Foundation.Register("MDLMesh", true)]
public class MDLMesh : ModelIO.MDLObject
[<Foundation.Register("MDLMesh", true)>]
type MDLMesh = class
    inherit MDLObject
Inheritance
Attributes

Constructors

Name Description
MDLMesh()

Creates a new MDLMesh with default values.

MDLMesh(IMDLMeshBuffer, UIntPtr, MDLVertexDescriptor, MDLSubmesh[])
MDLMesh(IMDLMeshBuffer[], UIntPtr, MDLVertexDescriptor, MDLSubmesh[])
MDLMesh(IMDLMeshBufferAllocator)

Creates a new Model IO mesh with the specified buffer allocator.

MDLMesh(NativeHandle)

A constructor used when creating managed representations of unmanaged objects. Called by the runtime.

MDLMesh(NSObjectFlag)

Constructor to call on derived classes to skip initialization and merely allocate the object.

Properties

Name Description
AccessibilityAttributedUserInputLabels (Inherited from NSObject)
AccessibilityRespondsToUserInteraction (Inherited from NSObject)
AccessibilityTextualContext (Inherited from NSObject)
AccessibilityUserInputLabels (Inherited from NSObject)
Allocator
AnisotropyVertexData

Gets the visual anisotropy of the surface, if present. This data is associated with the Anisotropy key.

BinormalVertexData

Gets the binormal data at each vertex. These data are associated with the Binormal key.

BitangentVertexData

Gets the bitangent vectors for each vertex. These data are associated with the Bitangent key.

BoundingBox

Gets the smallest box that contains all of the vertices in the mesh.

Children

Gets or sets the list of the objects of type MDLObject that belong to this MDLObject.

(Inherited from MDLObject)
Class (Inherited from NSObject)
ClassHandle

The Objective-C class handle for this class.

ColorVertexData

Gets color data for each vertex. These data are associated with the Color key.

Components

Gets the array of components that belong to this Model I/O object.

(Inherited from MDLObject)
DebugDescription (Inherited from NSObject)
Description (Inherited from NSObject)
EdgeCreaseVertexData

Gets data that describe which edges that should not be modified when subdividing the surface. These data are associated with the EdgeCrease key.

ExposedBindings (Inherited from NSObject)
Handle

Handle (pointer) to the unmanaged object representation.

(Inherited from NSObject)
Hidden

Gets or sets a Boolean value that controls whether the Model IO object is hidden.

(Inherited from MDLObject)
Instance (Inherited from MDLObject)
IsDirectBinding (Inherited from NSObject)
IsProxy (Inherited from NSObject)
JointIndicesVertexData

Gets bone and joint indices. These data are associated with the JointIndices key.

JointWeightsVertexData

Gets bone and joint weight information that is used to render a mesh that is associated with a skeleton. These data are associated with the JointWeights key.

Name

Gets or sets the descriptive name of the named object.

(Inherited from MDLObject)
NormalVertexData

Gets normal vectors for the mesh vertices. These data are associated with the Normal key.

OcclusionValueVertexData

Gets occlusion data for the mesh vertices. These data are associated with the OcclusionValue key.

Parent

Gets or sets this MDLObject object's parent, or null if this is a top-level object.

(Inherited from MDLObject)
Path (Inherited from MDLObject)
PositionVertexData

Gets the positions of the mesh vertices. These data are associated with the Position key.

RetainCount (Inherited from NSObject)
Self (Inherited from NSObject)
ShadingBasisUVertexData

Gets the U basis vectors that are used for shading. These data are associated with the ShadingBasisU key.

ShadingBasisVVertexData

Gets the V basis vectors that are used for shading. These data are associated with the ShadingBasisV key.

SubdivisionStencilVertexData

Gets the data that decide which neighboring vertices are used for subdivision calculations. These data are associated with the SubdivisionStencil key.

Submeshes

Gets the array of submeshes for this mesh.

Superclass (Inherited from NSObject)
SuperHandle

Handle used to represent the methods in the base class for this NSObject.

(Inherited from NSObject)
TangentVertexData

Gets the vertex tangent data. These data are associated with the Tangent key.

TextureCoordinateVertexData

Gets the coordinate system for texture operations on vertices. These data are associated with the TextureCoordinate key.

Transform

Gets or sets the possibly time-dependent transform that establishes this MDLObject object's coordinate system in relation to its parent's coordinate system.

(Inherited from MDLObject)
VertexBuffers

Gets the buffers that contain the vertex data for the mesh.

VertexCount

Gets the number of vertices in the entire mesh.

VertexDescriptor

Gets or sets the description of the in-memory layout of vertices in a mesh.

Zone (Inherited from NSObject)

Methods

Name Description
AddAttribute(String, MDLVertexFormat, String, NSData, IntPtr, Double)
AddAttribute(String, MDLVertexFormat, String, NSData, IntPtr)

Adds a vertex attribute and a corresponding empty vertex buffer.

AddAttribute(String, MDLVertexFormat)

Adds the format attribute, indexed by the keyword name.

AddChild(MDLObject)

Adds child to this MDLObject object's Children property, creating Children, if necessary.

(Inherited from MDLObject)
AddNormals(String, Single)

Generates surface normals for a mesh, interpolating between adjacent faces when the dot product of their unit normals is greater than creaseThreshold.

AddObserver(NSObject, NSString, NSKeyValueObservingOptions, IntPtr) (Inherited from NSObject)
AddObserver(NSObject, String, NSKeyValueObservingOptions, IntPtr) (Inherited from NSObject)
AddObserver(NSString, NSKeyValueObservingOptions, Action<NSObservedChange>)

Registers an object for being observed externally using an arbitrary method.

(Inherited from NSObject)
AddObserver(String, NSKeyValueObservingOptions, Action<NSObservedChange>)

Registers an object for being observed externally using an arbitrary method.

(Inherited from NSObject)
AddOrthTanBasis(String, String, String)
AddTangentBasis(String, String, String)

Reads texture coordinates from the buffer that is specified by textureCoordinateAttributeName, calculates tangents and bitangents, and stores them in the specified buffers.

AddTangentBasisWithNormals(String, String, String)

Reads surface normals from the buffer that is specified by textureCoordinateAttributeName, calculates tangents and bitangents, and stores them in the specified buffers.

AddUnwrappedTextureCoordinates(String)
AwakeFromNib() (Inherited from NSObject)
BeginInvokeOnMainThread(Action) (Inherited from NSObject)
BeginInvokeOnMainThread(Selector, NSObject)

Invokes asynchrously the specified code on the main UI thread.

(Inherited from NSObject)
Bind(NSString, NSObject, String, NSBindingOptions) (Inherited from NSObject)
Bind(NSString, NSObject, String, NSDictionary) (Inherited from NSObject)
CommitEditing() (Inherited from NSObject)
CommitEditing(NSObject, Selector, IntPtr) (Inherited from NSObject)
ConformsToProtocol(NativeHandle) (Inherited from NSObject)
Copy() (Inherited from NSObject)
CreateBox(Vector3, NVector3i, MDLGeometryType, Boolean, IMDLMeshBufferAllocator, MDLMesh+MDLMeshVectorType)

Creates a right rectangular box from the vector, with the specified number of segments and geometry kind.

CreateBox(Vector3, NVector3i, MDLGeometryType, Boolean, IMDLMeshBufferAllocator)
CreateCapsule(Single, Vector2, UIntPtr, UIntPtr, UIntPtr, MDLGeometryType, Boolean, IMDLMeshBufferAllocator)

Creates a capsule from the width and radii, with the specified number of segments and geometry kind.

CreateCapsule(Vector3, NVector2i, MDLGeometryType, Boolean, Int32, IMDLMeshBufferAllocator)
CreateCone(Vector3, NVector2i, MDLGeometryType, Boolean, Boolean, IMDLMeshBufferAllocator)
CreateCylinder(Vector3, NVector2i, Boolean, Boolean, Boolean, MDLGeometryType, IMDLMeshBufferAllocator)

Creates a cylinder from the specified parameters.

CreateCylindroid(Single, Vector2, UIntPtr, UIntPtr, MDLGeometryType, Boolean, IMDLMeshBufferAllocator)
CreateEllipsoid(Vector3, UIntPtr, UIntPtr, MDLGeometryType, Boolean, Boolean, IMDLMeshBufferAllocator)
CreateEllipticalCone(Single, Vector2, UIntPtr, UIntPtr, MDLGeometryType, Boolean, IMDLMeshBufferAllocator)
CreateHemisphere(Vector3, NVector2i, MDLGeometryType, Boolean, Boolean, IMDLMeshBufferAllocator)
CreateIcosahedron(Single, Boolean, IMDLMeshBufferAllocator)

Creates a regular icosohedron with the specified radius.

CreateIcosahedron(Single, Boolean, MDLGeometryType, IMDLMeshBufferAllocator)

Creates a regular icosahedron from the specified parameters.

CreateIcosahedron(Vector3, Boolean, MDLGeometryType, IMDLMeshBufferAllocator)

Creates a regular icosahedron from the specified parameters.

CreatePlane(Vector2, NVector2i, MDLGeometryType, IMDLMeshBufferAllocator)
CreatePlane(Vector3, NVector2i, MDLGeometryType, IMDLMeshBufferAllocator)

Creates a planar region centered at the origin, aligned with the X-Z plane, with the specified dimensions.

CreateSphere(Vector3, NVector2i, MDLGeometryType, Boolean, IMDLMeshBufferAllocator)
CreateSubdividedMesh(MDLMesh, Int32, UInt32, IMDLMeshBufferAllocator)
CreateSubdividedMesh(MDLMesh, UIntPtr, UIntPtr)

Subdivides the indexed submesh within the specified mesh, the specified number of times.

DangerousAutorelease()

Calls the 'autorelease' selector on this object.

(Inherited from NSObject)
DangerousRelease()

Calls the 'release' selector on this object.

(Inherited from NSObject)
DangerousRetain()

Calls the 'retain' selector on this object.

(Inherited from NSObject)
DidChange(NSKeyValueChange, NSIndexSet, NSString) (Inherited from NSObject)
DidChange(NSString, NSKeyValueSetMutationKind, NSSet) (Inherited from NSObject)
DidChangeValue(String) (Inherited from NSObject)
Dispose()

Releases the resources used by the NSObject object.

(Inherited from NSObject)
Dispose(Boolean) (Inherited from MDLObject)
DoesNotRecognizeSelector(Selector) (Inherited from NSObject)
EnumerateChildObjects(Class, MDLObject, MDLObjectHandler, Boolean)

Runs the provided handler on each component in root's object hierarchy that matches the specified objectClass.

(Inherited from MDLObject)
Equals(NSObject) (Inherited from NSObject)
Equals(Object) (Inherited from NSObject)
FlipTextureCoordinates(String)
FromGeometry(SCNGeometry, IMDLMeshBufferAllocator)
FromGeometry(SCNGeometry)
GenerateAmbientOcclusionTexture(NVector2i, IntPtr, Single, MDLObject[], String, String)
GenerateAmbientOcclusionTexture(Single, Single, MDLObject[], String, String)

Generates a texture that is used to simulate the occlusion of ambient light from recesses in the mesh.

GenerateAmbientOcclusionVertexColors(IntPtr, Single, MDLObject[], String)
GenerateAmbientOcclusionVertexColors(Single, Single, MDLObject[], String)

Generates vertex color data that is used to simulate the occlusion of ambient light from recesses in the mesh.

GenerateLightMapTexture(NVector2i, MDLLight[], MDLObject[], String, String)
GenerateLightMapTexture(Single, MDLLight[], MDLObject[], String, String)

Generates a map that represents the computed result of shading from the specified lights, obstructed by the specified objects.

GenerateLightMapVertexColors(MDLLight[], MDLObject[], String)

Generates vertex color data that represent the computed result of shading from the specified lights, obstructed by the specified objects.

GetBindingInfo(NSString) (Inherited from NSObject)
GetBindingOptionDescriptions(NSString) (Inherited from NSObject)
GetBindingValueClass(NSString) (Inherited from NSObject)
GetBoundingBox(Double)

Returns the bounding box of the Model IO object at the specified time.

(Inherited from MDLObject)
GetComponent(Protocol)

Gets this object's component that conforms to protocol.

(Inherited from MDLObject)
GetComponent(Type)

Gets this object's component that matches the supplied type.

(Inherited from MDLObject)
GetDictionaryOfValuesFromKeys(NSString[]) (Inherited from NSObject)
GetHashCode()

Generates a hash code for the current instance.

(Inherited from NSObject)
GetMethodForSelector(Selector) (Inherited from NSObject)
GetNativeHash() (Inherited from NSObject)
GetObject(String)

Returns the Model IO object at the specified path.

(Inherited from MDLObject)
GetVertexAttributeData(String, MDLVertexFormat)
Init() (Inherited from NSObject)
InitializeHandle(NativeHandle, String) (Inherited from NSObject)
InitializeHandle(NativeHandle) (Inherited from NSObject)
Invoke(Action, Double) (Inherited from NSObject)
Invoke(Action, TimeSpan) (Inherited from NSObject)
InvokeOnMainThread(Action) (Inherited from NSObject)
InvokeOnMainThread(Selector, NSObject)

Invokes synchrously the specified code on the main UI thread.

(Inherited from NSObject)
IsEqual(NSObject) (Inherited from NSObject)
IsKindOfClass(Class) (Inherited from NSObject)
IsMemberOfClass(Class) (Inherited from NSObject)
MakeVerticesUnique()

Developers should not use this deprecated method. Developers should use the 'NSError' overload.

MakeVerticesUnique(NSError)
MarkDirty()

Promotes a regular peer object (IsDirectBinding is true) into a toggleref object.

(Inherited from NSObject)
MutableCopy() (Inherited from NSObject)
ObjectDidEndEditing(NSObject) (Inherited from NSObject)
ObserveValue(NSString, NSObject, NSDictionary, IntPtr) (Inherited from NSObject)
PerformSelector(Selector, NSObject, Double, NSString[]) (Inherited from NSObject)
PerformSelector(Selector, NSObject, Double) (Inherited from NSObject)
PerformSelector(Selector, NSObject, NSObject) (Inherited from NSObject)
PerformSelector(Selector, NSObject) (Inherited from NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean, NSString[]) (Inherited from NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean) (Inherited from NSObject)
PerformSelector(Selector) (Inherited from NSObject)
PrepareForInterfaceBuilder() (Inherited from NSObject)
RemoveAttribute(String)
RemoveObserver(NSObject, NSString, IntPtr) (Inherited from NSObject)
RemoveObserver(NSObject, NSString) (Inherited from NSObject)
RemoveObserver(NSObject, String, IntPtr) (Inherited from NSObject)
RemoveObserver(NSObject, String) (Inherited from NSObject)
ReplaceAttribute(String, MDLVertexAttributeData)
RespondsToSelector(Selector) (Inherited from NSObject)
SetComponent(IMDLComponent, Protocol)

Associates component with this MDLOBject for the specified protocol.

(Inherited from MDLObject)
SetComponent(IMDLComponent, Type)

Makes component the object to provide for the specified type.

(Inherited from MDLObject)
SetNilValueForKey(NSString) (Inherited from NSObject)
SetValueForKey(NSObject, NSString) (Inherited from NSObject)
SetValueForKeyPath(NativeHandle, NSString) (Inherited from NSObject)
SetValueForKeyPath(NSObject, NSString) (Inherited from NSObject)
SetValueForUndefinedKey(NSObject, NSString) (Inherited from NSObject)
SetValuesForKeysWithDictionary(NSDictionary) (Inherited from NSObject)
ToString()

Returns a string representation of the value of the current instance.

(Inherited from NSObject)
Unbind(NSString) (Inherited from NSObject)
UpdateAttribute(String, MDLVertexAttributeData)
ValueForKey(NSString) (Inherited from NSObject)
ValueForKeyPath(NSString) (Inherited from NSObject)
ValueForUndefinedKey(NSString) (Inherited from NSObject)
WillChange(NSKeyValueChange, NSIndexSet, NSString) (Inherited from NSObject)
WillChange(NSString, NSKeyValueSetMutationKind, NSSet) (Inherited from NSObject)
WillChangeValue(String) (Inherited from NSObject)

Extension Methods

Name Description
ObjectDidBeginEditing(NSObject, INSEditor)
ObjectDidEndEditing(NSObject, INSEditor)
GetValidModes(NSObject, NSFontPanel)
ValidateToolbarItem(NSObject, NSToolbarItem)
BrowserAccessibilityDeleteTextAtCursor(NSObject, IntPtr)
BrowserAccessibilityInsertTextAtCursor(NSObject, String)
GetAccessibilityLineEndPositionFromCurrentSelection(NSObject)
GetAccessibilityLineRangeForPosition(NSObject, IntPtr)
GetAccessibilityLineStartPositionFromCurrentSelection(NSObject)
GetBrowserAccessibilityAttributedValue(NSObject, NSRange)
GetBrowserAccessibilityContainerType(NSObject)
GetBrowserAccessibilityCurrentStatus(NSObject)
GetBrowserAccessibilityHasDomFocus(NSObject)
GetBrowserAccessibilityIsRequired(NSObject)
GetBrowserAccessibilityPressedState(NSObject)
GetBrowserAccessibilityRoleDescription(NSObject)
GetBrowserAccessibilitySelectedTextRange(NSObject)
GetBrowserAccessibilitySortDirection(NSObject)
GetBrowserAccessibilityValue(NSObject, NSRange)
SetBrowserAccessibilityContainerType(NSObject, BEAccessibilityContainerType)
SetBrowserAccessibilityCurrentStatus(NSObject, String)
SetBrowserAccessibilityHasDomFocus(NSObject, Boolean)
SetBrowserAccessibilityIsRequired(NSObject, Boolean)
SetBrowserAccessibilityPressedState(NSObject, BEAccessibilityPressedState)
SetBrowserAccessibilityRoleDescription(NSObject, String)
SetBrowserAccessibilitySelectedTextRange(NSObject, NSRange)
SetBrowserAccessibilitySortDirection(NSObject, String)
ProvideImageData(NSObject, IntPtr, UIntPtr, UIntPtr, UIntPtr, UIntPtr, UIntPtr, NSObject)
ProvideImageToMTLTexture(NSObject, IMTLTexture, IMTLCommandBuffer, UIntPtr, UIntPtr, UIntPtr, UIntPtr, NSObject)
SetSharedObservers(NSObject, NSKeyValueSharedObserversSnapshot)
GetDebugDescription(INSObjectProtocol)
GetHandle(INativeObject)
GetNonNullHandle(INativeObject, String)
AcceptsPreviewPanelControl(NSObject, QLPreviewPanel)
BeginPreviewPanelControl(NSObject, QLPreviewPanel)
EndPreviewPanelControl(NSObject, QLPreviewPanel)
GetAccessibilityCustomRotors(NSObject)

Gets the array of UIAccessibilityCustomRotor objects appropriate for this object.

SetAccessibilityCustomRotors(NSObject, UIAccessibilityCustomRotor[])

Sets the array of UIAccessibilityCustomRotor objects appropriate for this object.

AccessibilityHitTest(NSObject, CGPoint, UIEvent)
GetAccessibilityNextTextNavigationElement(NSObject)
GetAccessibilityNextTextNavigationElementBlock(NSObject)
GetAccessibilityPreviousTextNavigationElement(NSObject)
GetAccessibilityPreviousTextNavigationElementBlock(NSObject)
SetAccessibilityNextTextNavigationElement(NSObject, NSObject)
SetAccessibilityNextTextNavigationElementBlock(NSObject, AXObjectReturnBlock)
SetAccessibilityPreviousTextNavigationElement(NSObject, NSObject)
SetAccessibilityPreviousTextNavigationElementBlock(NSObject, AXObjectReturnBlock)
GetAccessibilityTextInputResponder(NSObject)
GetAccessibilityTextInputResponderHandler(NSObject)
SetAccessibilityTextInputResponder(NSObject, IUITextInput)
SetAccessibilityTextInputResponderHandler(NSObject, UITextInputReturnHandler)

Applies to

See also