public static H1PixelFormat ConvertToPixelFormat(H1VertexElementType vertexElementType) { H1PixelFormat pixelFormat = new H1PixelFormat(); switch (vertexElementType) { case H1VertexElementType.Float2: pixelFormat = H1PixelFormat.R32G32_FLOAT; break; case H1VertexElementType.Float3: pixelFormat = H1PixelFormat.R32G32B32_FLOAT; break; case H1VertexElementType.Float4: pixelFormat = H1PixelFormat.R32G32B32A32_FLOAT; break; case H1VertexElementType.Int4: pixelFormat = H1PixelFormat.R32G32B32A32_SINT; break; } return(pixelFormat); }
public H1VertexStreamComponent(H1VertexStreamSematicType type, H1VertexElementType elementType, int offset) { m_VertexStreamComponentType = type; m_VertexElementType = elementType; m_Stride = Convert.ToInt32(H1RHIDefinitionHelper.ElementTypeToSize(elementType)); m_Offset = offset; }
public H1VertexStream(String name, String semanticName, int semanticIndex, H1VertexElementType elementType, int stride, int offset, H1VertexBuffer vertexBufferRef) { m_Name = name; m_SemanticName = semanticName; m_SemanticIndex = semanticIndex; m_ElementType = elementType; m_Stride = Convert.ToUInt32(stride); m_Offset = Convert.ToUInt32(offset); m_VertexBufferRef = vertexBufferRef; }
public static uint ElementTypeToSize(H1VertexElementType vertexElementType) { uint size = 0; switch (vertexElementType) { case H1VertexElementType.Float2: size = sizeof(float) * 2; break; case H1VertexElementType.Float3: size = sizeof(float) * 3; break; case H1VertexElementType.Float4: size = sizeof(float) * 4; break; } return(size); }
// @TODO - need to separate layout for platform-dependent // converted to directx 12 friendly format from H1VertexElementType public static SharpDX.DXGI.Format ConvertToFormat(H1VertexElementType vertexElementType) { SharpDX.DXGI.Format format = new SharpDX.DXGI.Format(); switch (vertexElementType) { case H1VertexElementType.Float2: format = SharpDX.DXGI.Format.R32G32_Float; break; case H1VertexElementType.Float3: format = SharpDX.DXGI.Format.R32G32B32_Float; break; case H1VertexElementType.Float4: format = SharpDX.DXGI.Format.R32G32B32A32_Float; break; case H1VertexElementType.Int4: format = SharpDX.DXGI.Format.R32G32B32A32_SInt; break; } return(format); }