TachyonUI 0.1.0
High-performance UI for building tools.
Loading...
Searching...
No Matches
gui_render_primitives.h File Reference
#include <gui_core/gui_base_types.h>
#include <gui_core/graphics/gui_image.h>
#include <stdint.h>
#include <stddef.h>

Go to the source code of this file.

Classes

struct  tachyon::glsl_float4
struct  tachyon::Box
struct  tachyon::Glyph
struct  tachyon::Dot
struct  tachyon::Line
struct  tachyon::Triangle
struct  tachyon::Quad
struct  tachyon::Circle
 A circle outline: the ring lineWidth wide around center at radius, its color and dashes running clockwise from the right (+x towards +y), as LineStyle sets them. More...
struct  tachyon::Occluder
 Depth only: marks pos/size as covered by opaque content drawn after it, so what was drawn before under it is skipped (its fragments fail the depth test early). More...
struct  tachyon::PrimitiveSpec
struct  tachyon::GPUDrawPushConstants

Namespaces

namespace  tachyon

Typedefs

using tachyon::DeviceAddress = uint64_t
 Shader-visible buffer address.

Enumerations

enum class  tachyon::PrimitiveKind : uint8_t {
  tachyon::PrimitiveKind::Box = 0 , tachyon::PrimitiveKind::Glyph , tachyon::PrimitiveKind::Dot , tachyon::PrimitiveKind::Line ,
  tachyon::PrimitiveKind::Triangle , tachyon::PrimitiveKind::Quad , tachyon::PrimitiveKind::Circle , tachyon::PrimitiveKind::Occluder ,
  tachyon::PrimitiveKind::Count
}
enum class  tachyon::PrimitiveShape : uint8_t { tachyon::PrimitiveShape::Quad , tachyon::PrimitiveShape::Triangle }
 The vertices a primitive's vertex shader is run for; gl_VertexIndex divided by their count is the primitive, the remainder the corner. More...

Variables

constexpr float tachyon::kPrimitiveDepthStep = 1.0f / float(1 << 22)
 The depth between two primitives drawn one after the other; past the depth range all are at the nearest depth.
constexpr size_t tachyon::kPrimitiveKindCount = size_t(PrimitiveKind::Count)
constexpr PrimitiveSpec tachyon::kPrimitiveSpecs [kPrimitiveKindCount]
 Push-constant slot order matches the GLSL push block (box, glyph, dot, line, triangle).