Raven Engine v0.1
Loading...
Searching...
No Matches
GraphicEnums.h File Reference

Defines core graphics-related enums used across the rendering system. More...

Namespaces

namespace  Raven

Enumerations

enum class  Raven::VSyncModes : u8 { Raven::VSyncModes::Off = 0 , Raven::VSyncModes::On = 1 }
 Specifies vertical synchronization modes for frame presentation. More...
enum class  Raven::ImageFormat : u8 {
  Raven::ImageFormat::RGBA8 , Raven::ImageFormat::RGBA8_UNORM , Raven::ImageFormat::BGRA8_SRGB , Raven::ImageFormat::BGRA8_UNORM ,
  Raven::ImageFormat::RGBA16F , Raven::ImageFormat::RGBA32F , Raven::ImageFormat::DEPTH32STENCIL8
}
 Defines formats for images and textures. More...
enum class  Raven::ColorSpace : u8 { Raven::ColorSpace::SRGB_NONLINEAR , Raven::ColorSpace::DisplayP3 , Raven::ColorSpace::AdobeRGB , Raven::ColorSpace::Rec2020 }
 Enumerates color spaces used in rendering. More...
enum class  Raven::ImageUsage : u8 {
  Raven::ImageUsage::ColorAttachment = 1 << 0 , Raven::ImageUsage::DepthStencilAttachment = 1 << 1 , Raven::ImageUsage::Sampled = 1 << 2 , Raven::ImageUsage::Storage = 1 << 3 ,
  Raven::ImageUsage::TransferSrc = 1 << 4 , Raven::ImageUsage::TransferDst = 1 << 5 , Raven::ImageUsage::Texture = 1 << 6 , Raven::ImageUsage::HostRead = 1 << 7
}
 Flags describing intended usage of images. More...
enum class  Raven::ImageLayout {
  Raven::ImageLayout::Undefined = 0 , Raven::ImageLayout::General = 1 , Raven::ImageLayout::ColorAttachmentOptimal = 2 , Raven::ImageLayout::DepthStencilAttachmentOptimal = 3 ,
  Raven::ImageLayout::DepthStencilReadOnlyOptimal = 4 , Raven::ImageLayout::ShaderReadOnlyOptimal = 5 , Raven::ImageLayout::TransferSrcOptimal = 6 , Raven::ImageLayout::TransferDstOptimal = 7 ,
  Raven::ImageLayout::PreInitialized = 8
}
 Specifies image layouts for Vulkan synchronization. More...
enum class  Raven::CompositeAlpha : u8 { Raven::CompositeAlpha::Opaque , Raven::CompositeAlpha::PreMultiplied , Raven::CompositeAlpha::PostMultiplied , Raven::CompositeAlpha::Inherit }
 Alpha compositing modes for swapchain images. More...
enum class  Raven::ShaderStage : u8 { Raven::ShaderStage::Vertex , Raven::ShaderStage::Fragment }
 Shader stages relevant for pipeline configuration. More...
enum class  Raven::PrimitiveTopology : u8 {
  Raven::PrimitiveTopology::None = 0 , Raven::PrimitiveTopology::Points , Raven::PrimitiveTopology::Lines , Raven::PrimitiveTopology::Triangles ,
  Raven::PrimitiveTopology::LineStrip , Raven::PrimitiveTopology::TriangleStrip , Raven::PrimitiveTopology::TriangleFan
}
 Defines the type of primitives to assemble from vertex data. More...
enum class  Raven::DepthCompareOperator : u8 {
  Raven::DepthCompareOperator::None = 0 , Raven::DepthCompareOperator::Never , Raven::DepthCompareOperator::NotEqual , Raven::DepthCompareOperator::Less ,
  Raven::DepthCompareOperator::LessOrEqual , Raven::DepthCompareOperator::Greater , Raven::DepthCompareOperator::GreaterOrEqual , Raven::DepthCompareOperator::Equal ,
  Raven::DepthCompareOperator::Alyways
}
 Comparison operators for depth testing. More...

Functions

constexpr VSyncModes Raven::ToVSyncMode (u8 value)
 Converts raw byte value to a valid VSyncModes enum.
ImageUsage Raven::operator| (ImageUsage a, ImageUsage b)
 Bitwise OR operator for ImageUsage flags.
ImageUsage Raven::operator& (ImageUsage a, ImageUsage b)
 Bitwise AND operator for ImageUsage flags.

Detailed Description

Defines core graphics-related enums used across the rendering system.

This header declares enums representing synchronization modes, image formats, color spaces, usage flags, layouts, blending modes, shader stages, primitive topologies, and depth comparison operators used in the Raven rendering engine.