|
Cogs.Core
|
#include <TexAtlasComponent.h>
Static Public Member Functions | |
| static void | registerType () |
Static Public Member Functions inherited from Cogs::ComponentModel::Component | |
| static COGSFOUNDATION_API void | registerType () |
| Register the Component type in the global type database. | |
| static COGSFOUNDATION_API Reflection::TypeId | getComponentTypeId (const StringView &name) |
| Get the type id of the component type with the given name. | |
Public Attributes | |
| std::string | path |
| Path to tile hierarcy root. | |
| std::vector< MaterialHandle > | materials |
| Materials that use this atlas. | |
| std::vector< glm::dvec2 > | coefficients |
| Coefficients that specifies the projection. | |
| float | elevation = 0.f |
| Elevation of map to be used for culling and lod'ing. Keep as precise as possible. | |
| TexAtlasProjection | projection = TexAtlasProjection::WorldSpaceBilinear |
| Projection to use. | |
| glm::dvec2 | domainMin = glm::dvec2(0.0) |
| Specifies the lower-left corner of the domain that is mapped. | |
| glm::dvec2 | domainMax = glm::dvec2(1.0) |
| Specifies the upper-right corner of the domain that is mapped. | |
| glm::dvec2 | domainExtentsMin = glm::dvec2(0.0) |
| Specifies the lower-left corner of the domain. Values in domain units. | |
| glm::dvec2 | domainExtentsMax = glm::dvec2(0.0) |
| Specifies the upper-right corner of the domain. Values in domain units. | |
| uint32_t | minLevel = 0 |
| Minimum level to use. | |
| uint32_t | maxLevel = 8 |
| Maximum level to use. | |
| uint32_t | index = 0 |
| Which atlas this is when a material has multiple atlases. | |
| float | tolerance = 1.f / 2048.f |
| Specifies how big a texel should ideally be if screen has size 1. | |
| uint32_t | maxItemCount = 512 |
| Maximum number of tiles to use simultaneously. | |
| uint32_t | timeout = 30 |
| Time before timing out a fetch, in seconds. Set to zero to disable. | |
| uint32_t | minRetryDelay = 2 |
| Minimum delay before retrying a failed fetch in seconds. The delay will double with each successive failed fetch attempt for a tile. Set to zero to disable. | |
| bool | restrictBetweenNearAndFar = true |
| Restrict visible tiles to the interval between near and far, otherwise all tiles from eye to the inifinity is considered visible. | |
| bool | debugBox = false |
| Render wireframe box that outlines texture position in world. | |
Additional Inherited Members | |
Public Member Functions inherited from Cogs::ComponentModel::Component | |
| class Entity * | getContainer () const |
| Get the container currently owning this component instance. | |
| void | setContainer (class Entity *container) |
| Set the container owning this component instance. | |
| template<typename ComponentType > | |
| ComponentType * | getComponent () const |
| COGSFOUNDATION_API Component * | getComponent (const Reflection::Name &name) const |
| COGSFOUNDATION_API Component * | getComponent (const Reflection::TypeId &id) const |
| template<typename ComponentType > | |
| ComponentHandle | getComponentHandle () const |
| COGSFOUNDATION_API ComponentHandle | getComponentHandle (const Reflection::Name &name) const |
| COGSFOUNDATION_API ComponentHandle | getComponentHandle (const Reflection::TypeId &id) const |
| void | setActive () |
| Sets the component to the ComponentFlags::Active state. | |
| bool | isActive () const |
| Gets if the component is currently set to the ComponentFlags::Active state. | |
| void | setChanged () |
| Sets the component to the ComponentFlags::Changed state with carry. | |
| void | setChangedTransient () |
| Sets the component to the ComponentFlags::Changed state without carry. | |
| void | setFieldChanged (const Reflection::FieldId fieldId) |
| Sets the component to the ComponentFlags::Changed state without carry. | |
| template<typename ClassType , typename FieldType > | |
| void | setFieldChanged (FieldType ClassType::*field) |
| Sets a flag indicating that the given field has changed. | |
| void | setFieldChangedTransient (const Reflection::FieldId fieldId) |
| Sets the component to the ComponentFlags::Changed state without carry. | |
| bool | hasChanged () const |
| bool | hasAnyfieldChanged () const |
| Gets if any fields have been changed. | |
| bool | hasFieldChanged (const Reflection::FieldId fieldId) const |
| Gets if the field with the given id on this component instance has changed. | |
| template<typename ClassType , typename FieldType > | |
| bool | hasFieldChanged (FieldType ClassType::*field) const |
| Gets if the given field has changed. | |
| void | resetCarryChanged () |
| Reset the CarryChanged flag. Called at start of redraw. See ComponentFlags::CarryChanged. | |
| void | resetChanged () |
| Resets the changed state of the component, respecting any carry state set. | |
| template<typename ClassType , typename FieldType > | |
| Reflection::FieldId | getFieldId (FieldType ClassType::*field) const |
| Gets field ID of the given field. | |
| void | resetFieldsChanged () |
| Resets the state of all changed field flags. | |
| void | resetFieldChanged (const Reflection::FieldId fieldId) |
| Resets the changed state of the given fieldId. | |
| template<typename ClassType , typename FieldType > | |
| void | resetFieldChanged (FieldType ClassType::*field) |
| Resets the changed state of the given field. | |
| constexpr void | setFlags (const uint32_t flags) |
| Override all flags of the Component, setting the given flags. | |
| constexpr void | setFlag (const uint32_t flag) |
| Set the given flags. Does not override the currently set flags. | |
| constexpr void | unsetFlag (const uint32_t flag) |
| Unset the given flag. Does not remove the status of other than the given flags. | |
| constexpr bool | isSet (const uint32_t flag) const |
| Checks if the given flag is set. Requires exact bit match if test of several bits. | |
| constexpr void | setTypeId (const Reflection::TypeId typeId) |
| Set the Reflection::TypeId of the component. | |
| constexpr Reflection::TypeId | getTypeId () const |
| Get the Reflection::TypeId of the component. | |
| COGSFOUNDATION_API const Reflection::Type & | getType () const |
| Get the full Reflection::Type of the component. | |
| constexpr void | setIndex (const ComponentIndex index) |
| Set the components pool index. For internal use only. | |
| constexpr ComponentIndex | getIndex () const |
| Get the components pool index. For internal use only. | |
| constexpr void | setGeneration (uint16_t generation) |
| Sets the component generation. | |
| constexpr uint16_t | getGeneration () const |
| Gets the component generation. | |
| size_t | hash (size_t hashValue=Cogs::hash()) const |
| Calculates a hash of this component's members. | |
Manage a texture atlas that can be accessed in materials
See TexAtlas.md for a thorough description.
Definition at line 22 of file TexAtlasComponent.h.
|
static |
Definition at line 8 of file TexAtlasComponent.cpp.
| std::vector<glm::dvec2> Cogs::Core::TexAtlasComponent::coefficients |
Coefficients that specifies the projection.
Definition at line 27 of file TexAtlasComponent.h.
| bool Cogs::Core::TexAtlasComponent::debugBox = false |
Render wireframe box that outlines texture position in world.
Definition at line 42 of file TexAtlasComponent.h.
| glm::dvec2 Cogs::Core::TexAtlasComponent::domainExtentsMax = glm::dvec2(0.0) |
Specifies the upper-right corner of the domain. Values in domain units.
Definition at line 33 of file TexAtlasComponent.h.
| glm::dvec2 Cogs::Core::TexAtlasComponent::domainExtentsMin = glm::dvec2(0.0) |
Specifies the lower-left corner of the domain. Values in domain units.
Definition at line 32 of file TexAtlasComponent.h.
| glm::dvec2 Cogs::Core::TexAtlasComponent::domainMax = glm::dvec2(1.0) |
Specifies the upper-right corner of the domain that is mapped.
Definition at line 31 of file TexAtlasComponent.h.
| glm::dvec2 Cogs::Core::TexAtlasComponent::domainMin = glm::dvec2(0.0) |
Specifies the lower-left corner of the domain that is mapped.
Definition at line 30 of file TexAtlasComponent.h.
| float Cogs::Core::TexAtlasComponent::elevation = 0.f |
Elevation of map to be used for culling and lod'ing. Keep as precise as possible.
Definition at line 28 of file TexAtlasComponent.h.
| uint32_t Cogs::Core::TexAtlasComponent::index = 0 |
Which atlas this is when a material has multiple atlases.
Definition at line 36 of file TexAtlasComponent.h.
| std::vector<MaterialHandle> Cogs::Core::TexAtlasComponent::materials |
Materials that use this atlas.
Definition at line 26 of file TexAtlasComponent.h.
| uint32_t Cogs::Core::TexAtlasComponent::maxItemCount = 512 |
Maximum number of tiles to use simultaneously.
Definition at line 38 of file TexAtlasComponent.h.
| uint32_t Cogs::Core::TexAtlasComponent::maxLevel = 8 |
Maximum level to use.
Definition at line 35 of file TexAtlasComponent.h.
| uint32_t Cogs::Core::TexAtlasComponent::minLevel = 0 |
Minimum level to use.
Definition at line 34 of file TexAtlasComponent.h.
| uint32_t Cogs::Core::TexAtlasComponent::minRetryDelay = 2 |
Minimum delay before retrying a failed fetch in seconds. The delay will double with each successive failed fetch attempt for a tile. Set to zero to disable.
Definition at line 40 of file TexAtlasComponent.h.
| std::string Cogs::Core::TexAtlasComponent::path |
Path to tile hierarcy root.
Definition at line 25 of file TexAtlasComponent.h.
| TexAtlasProjection Cogs::Core::TexAtlasComponent::projection = TexAtlasProjection::WorldSpaceBilinear |
Projection to use.
Definition at line 29 of file TexAtlasComponent.h.
| bool Cogs::Core::TexAtlasComponent::restrictBetweenNearAndFar = true |
Restrict visible tiles to the interval between near and far, otherwise all tiles from eye to the inifinity is considered visible.
Definition at line 41 of file TexAtlasComponent.h.
| uint32_t Cogs::Core::TexAtlasComponent::timeout = 30 |
Time before timing out a fetch, in seconds. Set to zero to disable.
Definition at line 39 of file TexAtlasComponent.h.
| float Cogs::Core::TexAtlasComponent::tolerance = 1.f / 2048.f |
Specifies how big a texel should ideally be if screen has size 1.
Definition at line 37 of file TexAtlasComponent.h.