Namespaces | |
namespace | anim |
namespace | console |
namespace | detail |
namespace | drawable |
namespace | event |
namespace | input |
namespace | ndc |
namespace | shape |
namespace | tweak |
namespace | util |
namespace | uv |
namespace | viewport |
namespace | window |
Classes | |
class | AssetLoader |
Set of AssetTypeLoaders mapped to their corrseponding AssetTypes. More... | |
class | AudioBufferLoader |
class | BasicRandom |
Stateful random number generator. More... | |
class | Context |
Central API for most of the engine / framework. More... | |
struct | ContextCreateInfo |
Context creation parameters. More... | |
class | Error |
class | FileDataLoader |
Concrete IDataLoader that uses the filesystem. More... | |
class | FlipbookAnimationLoader |
class | FontLoader |
struct | FrameStats |
struct | FullscreenInfo |
Fullscreen window parameters. More... | |
class | IAsset |
Interface for asset types. More... | |
class | IAssetTypeLoader |
Interface for a particular AssetType loader. More... | |
class | IAssetTypeLoaderCommon |
class | IAudioBuffer |
Opaque interface for an Audio Buffer. More... | |
class | IAudioMixer |
Opaque audio mixer interface. More... | |
class | IDataLoader |
Interface for loading bytes from a data source (usually the filesystem). More... | |
class | IDrawable |
Interface for drawable types. More... | |
class | IDrawPrimitive |
Interface for drawable primitives. More... | |
class | IFont |
Opaque interface for a Font. More... | |
class | IFontAtlas |
Opaque interface for a Font Atlas. More... | |
class | IGeometry |
Interface for drawable geometry. More... | |
struct | InputTextParams |
Input Text creation parameters. More... | |
class | InstancedDrawPrimitive |
Base class for Draw Primitives using a vector of Render Instances. More... | |
class | IRenderer |
class | IRenderPass |
Opaque interface for 2D render pass, owns a multi-sampled color RenderTarget. More... | |
class | IResource |
Interface for all shared resources in the engine. More... | |
class | IResourceFactory |
Factory for IResource derived types. More... | |
class | IShader |
Opaque interface for a Shader program. More... | |
class | ITexture |
Concrete drawable Texture. More... | |
class | ITextureBase |
Interface for drawable texture. More... | |
class | ITileSheet |
Texture with a TileSet. More... | |
class | ITweakable |
Interface for concrete Tweakables. More... | |
class | LineInput |
Interactive text input for a single line. More... | |
class | nvec2 |
Normalized 2D vector. More... | |
struct | PipelineFixedState |
struct | Primitive |
Draw primitive. More... | |
struct | RenderInstance |
Instance data for instanced rendering. More... | |
struct | RenderStats |
class | RenderTexture |
Wraps a RenderTarget as a texture. More... | |
class | ServiceLocator |
class | ShaderLoader |
class | SingleDrawPrimitive |
Base class for Draw Primitives using a single Render Instance. More... | |
class | TextBuffer |
Wall of text as a single Primitive. More... | |
class | TextGeometry |
Drawable geometry for text. More... | |
class | TextureLoader |
struct | TextureSampler |
Texture Sampler metadata. More... | |
struct | Tile |
Tile in a sprite sheet. More... | |
class | TileSet |
Sorted set of Tiles. More... | |
class | TileSetLoader |
class | TileSheetLoader |
struct | Transform |
2D transformation. More... | |
class | TransformAnimationLoader |
class | Tweakable |
Tweakable wrapper over a Type value. More... | |
class | Unprojector |
class | Uri |
struct | UserDrawData |
struct | Vertex |
Drawable vertex. More... | |
struct | VertexArray |
Drawable vertex array. More... | |
struct | WindowInfo |
Windowed window parameters. More... | |
Typedefs | |
using | TransformAnimation = anim::Animation< Transform > |
using | FlipbookAnimation = anim::Animation< TileId > |
using | TransformAnimator = anim::Animator< Transform, anim::TransformSampler > |
using | FlipbookAnimator = anim::Animator< TileId, anim::FlipbookSampler > |
using | WindowCreateInfo = std::variant< WindowInfo, FullscreenInfo > |
Window creation parameters. | |
using | Event = event::Event |
using | Random = BasicRandom< std::mt19937 > |
using | Viewport = std::variant< viewport::Dynamic, viewport::Letterbox > |
Enumerations | |
enum class | PlatformFlag : std::uint8_t { None = 0 , ForceX11 , NoLibdecor } |
Platform flags (GLFW init hints). More... | |
enum class | WindowFlag : std::uint8_t { None = 0 , Decorated = 1 << 0 , Resizeable = 1 << 1 , Visible = 1 << 2 , Maximized = 1 << 3 , FocusOnShow = 1 << 4 , ScaleToMonitor = 1 << 5 , ScaleFramebuffer = 1 << 6 } |
Window creation flags (GLFW window hints). More... | |
enum struct | TextHeight : std::uint8_t { Min = 8 , Default = 40 , Max = 200 } |
Strongly typed integer for text height. More... | |
enum struct | TileId : std::int32_t { None = 0 } |
Unique identifier for a Tile. More... | |
enum class | Vsync : std::int8_t { Strict , Adaptive , MultiBuffer , Off , COUNT_ } |
Functions | |
auto | get_json_type_name (dj::Json const &json) -> std::string_view |
void | set_json_type_name (dj::Json &json, std::string_view type_name) |
auto | json_type_name_match (dj::Json const &json, std::string_view type_name) -> bool |
template<typename Type > | |
auto | is_json_type (dj::Json const &json, Type const &) -> bool |
template<typename Type > | |
auto | is_json_type (dj::Json const &json) -> bool |
template<typename Type > | |
void | set_json_type (dj::Json &json, Type const &) |
template<typename Type > | |
void | set_json_type (dj::Json &json) |
template<typename Type , glm::length_t Length> | |
void | from_json (dj::Json const &json, glm::vec< Length, Type > &vec) |
template<typename Type , glm::length_t Length> | |
void | to_json (dj::Json &json, glm::vec< Length, Type > const &vec) |
template<typename Type > | |
void | from_json (dj::Json const &json, kvf::Rect< Type > &rect) |
template<typename Type > | |
void | to_json (dj::Json &json, kvf::Rect< Type > const &rect) |
void | from_json (dj::Json const &json, Uri &uri) |
void | to_json (dj::Json &json, Uri const &uri) |
void | from_json (dj::Json const &json, kvf::Seconds &seconds) |
void | to_json (dj::Json &json, kvf::Seconds const &seconds) |
void | from_json (dj::Json const &json, TileId &tile_id) |
void | to_json (dj::Json &json, TileId const &tile_id) |
void | from_json (dj::Json const &json, Tile &tile) |
void | to_json (dj::Json &json, Tile const &tile) |
void | from_json (dj::Json const &json, Transform &transform) |
void | to_json (dj::Json &json, Transform const &transform) |
void | from_json (dj::Json const &json, TileSet &tile_set) |
void | to_json (dj::Json &json, TileSet const &tile_set) |
void | from_json (dj::Json const &json, anim::Keyframe< Transform > &keyframe) |
void | to_json (dj::Json &json, anim::Keyframe< Transform > const &keyframe) |
void | from_json (dj::Json const &json, anim::Timeline< Transform > &timeline) |
void | to_json (dj::Json &json, anim::Timeline< Transform > const &timeline) |
void | from_json (dj::Json const &json, anim::Animation< Transform > &animation) |
void | to_json (dj::Json &json, anim::Animation< Transform > const &animation) |
void | from_json (dj::Json const &json, anim::Keyframe< TileId > &keyframe) |
void | to_json (dj::Json &json, anim::Keyframe< TileId > const &keyframe) |
void | from_json (dj::Json const &json, anim::Timeline< TileId > &timeline) |
void | to_json (dj::Json &json, anim::Timeline< TileId > const &timeline) |
void | from_json (dj::Json const &json, anim::Animation< TileId > &animation) |
void | to_json (dj::Json &json, anim::Animation< TileId > const &animation) |
constexpr auto | uv_to_world (kvf::UvRect const &uv, glm::vec2 const target_size) -> kvf::Rect<> |
constexpr auto | world_to_uv (kvf::Rect<> const &rect) -> kvf::UvRect |
auto | vertex_bounds (std::span< Vertex const > vertices, glm::mat4 const &model) -> kvf::Rect<> |
constexpr auto | parse_vsync (std::string_view const in) -> std::optional< Vsync > |
Variables | |
constexpr auto | default_window_flags_v = WindowFlag::Decorated | WindowFlag::Resizeable | WindowFlag::Visible |
Default Window creation flags. | |
template<typename Type > | |
constexpr auto | json_type_name_v = std::string_view{} |
template<> | |
constexpr auto | json_type_name_v< IShader > = std::string_view{"Shader"} |
template<> | |
constexpr auto | json_type_name_v< TileSet > = std::string_view{"TileSet"} |
template<> | |
constexpr auto | json_type_name_v< ITexture > = std::string_view{"Texture"} |
template<> | |
constexpr auto | json_type_name_v< ITileSheet > = std::string_view{"TileSheet"} |
constexpr auto | right_v = glm::vec2{1.0f, 0.0f} |
constexpr auto | up_v = glm::vec2{0.0f, 1.0f} |
constexpr auto | vsync_str_v = klib::EnumArray<Vsync, std::string_view>{"strict", "adaptive", "multi", "off"} |
using le::Event = typedef event::Event |
using le::FlipbookAnimation = typedef anim::Animation<TileId> |
using le::FlipbookAnimator = typedef anim::Animator<TileId, anim::FlipbookSampler> |
using le::Random = typedef BasicRandom<std::mt19937> |
using le::TransformAnimation = typedef anim::Animation<Transform> |
using le::TransformAnimator = typedef anim::Animator<Transform, anim::TransformSampler> |
using le::Viewport = typedef std::variant<viewport::Dynamic, viewport::Letterbox> |
using le::WindowCreateInfo = typedef std::variant<WindowInfo, FullscreenInfo> |
Window creation parameters.
|
strong |
|
strong |
|
strong |
Unique identifier for a Tile.
Enumerator | |
---|---|
None |
|
strong |
|
strong |
Window creation flags (GLFW window hints).
void le::from_json | ( | dj::Json const & | json, |
anim::Animation< TileId > & | animation | ||
) |
void le::from_json | ( | dj::Json const & | json, |
anim::Animation< Transform > & | animation | ||
) |
void le::from_json | ( | dj::Json const & | json, |
anim::Keyframe< TileId > & | keyframe | ||
) |
void le::from_json | ( | dj::Json const & | json, |
anim::Keyframe< Transform > & | keyframe | ||
) |
void le::from_json | ( | dj::Json const & | json, |
anim::Timeline< TileId > & | timeline | ||
) |
void le::from_json | ( | dj::Json const & | json, |
anim::Timeline< Transform > & | timeline | ||
) |
void le::from_json | ( | dj::Json const & | json, |
glm::vec< Length, Type > & | vec | ||
) |
void le::from_json | ( | dj::Json const & | json, |
kvf::Rect< Type > & | rect | ||
) |
void le::from_json | ( | dj::Json const & | json, |
kvf::Seconds & | seconds | ||
) |
void le::from_json | ( | dj::Json const & | json, |
Tile & | tile | ||
) |
void le::from_json | ( | dj::Json const & | json, |
TileId & | tile_id | ||
) |
void le::from_json | ( | dj::Json const & | json, |
TileSet & | tile_set | ||
) |
void le::from_json | ( | dj::Json const & | json, |
Transform & | transform | ||
) |
void le::from_json | ( | dj::Json const & | json, |
Uri & | uri | ||
) |
auto le::get_json_type_name | ( | dj::Json const & | json | ) | -> std::string_view |
auto le::is_json_type | ( | dj::Json const & | json | ) | -> bool |
auto le::is_json_type | ( | dj::Json const & | json, |
Type const & | |||
) | -> bool |
auto le::json_type_name_match | ( | dj::Json const & | json, |
std::string_view | type_name | ||
) | -> bool |
|
constexpr |
void le::set_json_type | ( | dj::Json & | json | ) |
void le::set_json_type | ( | dj::Json & | json, |
Type const & | |||
) |
void le::set_json_type_name | ( | dj::Json & | json, |
std::string_view | type_name | ||
) |
void le::to_json | ( | dj::Json & | json, |
anim::Animation< TileId > const & | animation | ||
) |
void le::to_json | ( | dj::Json & | json, |
anim::Animation< Transform > const & | animation | ||
) |
void le::to_json | ( | dj::Json & | json, |
anim::Keyframe< TileId > const & | keyframe | ||
) |
void le::to_json | ( | dj::Json & | json, |
anim::Keyframe< Transform > const & | keyframe | ||
) |
void le::to_json | ( | dj::Json & | json, |
anim::Timeline< TileId > const & | timeline | ||
) |
void le::to_json | ( | dj::Json & | json, |
anim::Timeline< Transform > const & | timeline | ||
) |
void le::to_json | ( | dj::Json & | json, |
glm::vec< Length, Type > const & | vec | ||
) |
void le::to_json | ( | dj::Json & | json, |
kvf::Rect< Type > const & | rect | ||
) |
void le::to_json | ( | dj::Json & | json, |
kvf::Seconds const & | seconds | ||
) |
void le::to_json | ( | dj::Json & | json, |
Tile const & | tile | ||
) |
void le::to_json | ( | dj::Json & | json, |
TileId const & | tile_id | ||
) |
void le::to_json | ( | dj::Json & | json, |
TileSet const & | tile_set | ||
) |
void le::to_json | ( | dj::Json & | json, |
Transform const & | transform | ||
) |
void le::to_json | ( | dj::Json & | json, |
Uri const & | uri | ||
) |
|
constexpr |
auto le::vertex_bounds | ( | std::span< Vertex const > | vertices, |
glm::mat4 const & | model | ||
) | -> kvf::Rect<> |
|
constexpr |
|
inlineconstexpr |
Default Window creation flags.
|
constexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |