Class CDmePolygonMesh
Namespace: ValveResourceFormat.IO.ContentFormats.ValveMap
Assembly: ValveResourceFormat.dll
Hammer's editable mesh, stored as a half edge mesh with parallel index arrays and data streams.
[CamelCaseProperties]
public class CDmePolygonMesh : MapNode, IDictionary<string, object?>, ICollection<KeyValuePair<string, object?>>, IEnumerable<KeyValuePair<string, object?>>, IDictionary, ICollection, IEnumerable, IEquatable<Element>Inheritance
object ← AttributeList ← Element ← MapNode ← CDmePolygonMesh
Implements
IDictionary<string, object?>, ICollection<KeyValuePair<string, object?>>, IEnumerable<KeyValuePair<string, object?>>, IDictionary, ICollection, IEnumerable, IEquatable<Element>
Inherited Members
MapNode.Origin, MapNode.Angles, MapNode.Scales, MapNode.NodeID, MapNode.ReferenceID, MapNode.Children, MapNode.EditorOnly, MapNode.ForceHidden, MapNode.TransformLocked, MapNode.VariableTargetKeys, MapNode.VariableNames, Element.GetPropertyDerivedAttributeList(), Element.Get<T>(string), Element.GetArray<T>(string), Element.Contains(string), Element.ToString(), Element.ContainsKey(string), Element.Equals(Element?), Element.ID, Element.Name, Element.ClassName, Element.Stub, Element.Owner, Element.this[string], AttributeList.Attribute_ChangeLock, AttributeList.Add(string, object?), AttributeList.GetPropertyDerivedAttributeList(), AttributeList.GetOverrideType(string), AttributeList.SetOverrideType(string, AttributeList.OverrideType?), AttributeList.Remove(string), AttributeList.TryGetValue(string, out object?), AttributeList.ContainsKey(string), AttributeList.RemoveAt(int), AttributeList.IndexOf(string), AttributeList.Clear(), AttributeList.GetAllAttributesForSerialization(), AttributeList.GetEnumerator(), AttributeList.OnPropertyChanged(string), AttributeList.OnCollectionChanged(NotifyCollectionChangedEventArgs), AttributeList.Owner, AttributeList.Keys, AttributeList.Values, AttributeList.this[string], AttributeList.this[int], AttributeList.Count, AttributeList.IsFixedSize, AttributeList.IsReadOnly, AttributeList.IsSynchronized, AttributeList.SyncRoot, AttributeList.PropertyChanged, AttributeList.CollectionChanged
Properties
EdgeData
Stores edge data such as soft or hard normals.
public CDmePolygonMeshDataArray EdgeData { get; }Property Value
EdgeDataIndices
Per half-edge index to the streams.
public IntArray EdgeDataIndices { get; }Property Value
IntArray
EdgeFaceIndices
Per half-edge index to the adjacent face. -1 if void (open edge).
public IntArray EdgeFaceIndices { get; }Property Value
IntArray
EdgeNextIndices
Index to the next edge in the loop, in counter-clockwise order.
public IntArray EdgeNextIndices { get; }Property Value
IntArray
EdgeOppositeIndices
Index to the opposite/twin edge.
public IntArray EdgeOppositeIndices { get; }Property Value
IntArray
EdgeVertexDataIndices
Per half-edge index to the streams.
public IntArray EdgeVertexDataIndices { get; }Property Value
IntArray
EdgeVertexIndices
The destination vertex of this edge.
public IntArray EdgeVertexIndices { get; }Property Value
IntArray
FaceData
Stores face data such as texture scale, UV offset, material, lightmap bias.
public CDmePolygonMeshDataArray FaceData { get; }Property Value
FaceDataIndices
Per face index to the streams.
public IntArray FaceDataIndices { get; }Property Value
IntArray
FaceEdgeIndices
Per face index to one of the inner edges encapsulating this face.
public IntArray FaceEdgeIndices { get; }Property Value
IntArray
FaceVertexData
Stores vertex uv, normal, tangent, etc. Two per vertex (for each half?).
public CDmePolygonMeshDataArray FaceVertexData { get; }Property Value
Materials
List of material names. Indexed by the 'meshindex' stream.
public StringArray Materials { get; }Property Value
StringArray
SubdivisionData
Stores the subdivision level of each half-edge.
public CDmePolygonMeshSubdivisionData SubdivisionData { get; }Property Value
CDmePolygonMeshSubdivisionData
VertexData
Stores vertex positions.
public CDmePolygonMeshDataArray VertexData { get; }Property Value
VertexDataIndices
Index to the streams.
public IntArray VertexDataIndices { get; }Property Value
IntArray
VertexEdgeIndices
Index to one of the edges stemming from this vertex.
public IntArray VertexEdgeIndices { get; }Property Value
IntArray

