Castor3D 0.16.0
Multiplatform 3D engine
|
#include <PanelOverlay.hpp>
Public Types | |
enum class | ComputeBindingIdx { eCamera , eOverlays , eVertex } |
Public Member Functions | |
C3D_API | PanelOverlay () |
Constructor. | |
C3D_API void | accept (OverlayVisitor &visitor) const override |
Draws the overlay. | |
C3D_API uint32_t | getCount (bool) const |
Public Member Functions inherited from castor3d::OverlayCategory | |
CU_DeclareVector (Vertex, Vertex) | |
C3D_API | OverlayCategory (OverlayType type) |
Constructor. | |
virtual C3D_API | ~OverlayCategory () noexcept=default |
Destructor. | |
C3D_API void | update (OverlayRenderer const &renderer) |
Updates the overlay position, size... | |
C3D_API void | reset () |
Marks this cetegory as clean. | |
virtual C3D_API void | setMaterial (MaterialObs material) |
Sets the material. | |
C3D_API castor::String const & | getOverlayName () const |
Retrieves the overlay name. | |
C3D_API castor::Position | getAbsolutePosition (castor::Size const &size) const |
Retrieves the absolute overlay position, in pixels. | |
C3D_API castor::Size | getAbsoluteSize (castor::Size const &size) const |
Retrieves the absolute overlay size, in pixels. | |
C3D_API castor::Point2d | getRenderRatio (castor::Size const &size) const |
C3D_API castor::Point2d | getAbsolutePosition () const |
Retrieves the absolute overlay position. | |
C3D_API castor::Point2d | getAbsoluteSize () const |
Retrieves the absolute overlay size. | |
C3D_API bool | isSizeChanged () const |
C3D_API bool | isPositionChanged () const |
C3D_API castor::Size | computePixelSize () const |
Retrieves the overlay size. | |
C3D_API castor::Position | computePixelPosition () const |
Retrieves the overlay position. | |
C3D_API castor::Point4d | computeScissorRect () const |
Updates the scissor for this overlay. | |
virtual C3D_API bool | isChanged () const noexcept |
bool | hasAnyChange () const noexcept |
castor::Point4d const & | getDisplayRect () const noexcept |
castor::Point2d const & | getRelativeSize () const noexcept |
castor::Point2d const & | getRelativePosition () const noexcept |
OverlayType | getType () const noexcept |
bool | isVisible () const noexcept |
bool | isDisplayable () const noexcept |
MaterialObs | getMaterial () const noexcept |
uint32_t | getIndex () const noexcept |
uint32_t | getLevel () const noexcept |
Overlay const & | getOverlay () const noexcept |
Overlay & | getOverlay () noexcept |
castor::Point4d const & | getUV () const noexcept |
bool | hasPixelPosition () const noexcept |
bool | hasPixelSize () const noexcept |
castor::Position const & | getPixelPosition () const noexcept |
castor::Size const & | getPixelSize () const noexcept |
void | setRelativePosition (castor::Point2d const &value) noexcept |
void | setRelativeSize (castor::Point2d const &value) noexcept |
void | setPixelPosition (castor::Position const &value) noexcept |
void | setPixelSize (castor::Size const &value) noexcept |
void | setOverlay (Overlay *value) noexcept |
void | setVisible (bool value) noexcept |
void | setOrder (uint32_t level, uint32_t index) noexcept |
void | setUV (castor::Point4d const &value) noexcept |
Static Public Member Functions | |
static C3D_API OverlayCategoryUPtr | create () |
Creation function, used by the factory. | |
static C3D_API ashes::PipelineShaderStageCreateInfo | createProgram (RenderDevice const &device) |
Creates the shader program used to compute the overlay's vertices. | |
Additional Inherited Members | |
Protected Member Functions inherited from castor3d::OverlayCategory | |
C3D_API void | updatePosition (OverlayRenderer const &renderer) |
Updates the overlay position, taking care of wanted pixel position. | |
C3D_API void | updateSize (OverlayRenderer const &renderer) |
Updates the overlay size, taking care of wanted pixel size. | |
C3D_API void | updateClientArea () |
Updates the overlay size, taking care of wanted pixel size. | |
C3D_API castor::Point2d | getParentSize () const |
C3D_API bool | isFullyCropped () const |
Protected Attributes inherited from castor3d::OverlayCategory | |
Overlay * | m_overlay { nullptr } |
castor::Point2d | m_relPosition |
castor::Point2d | m_relSize |
std::optional< castor::Position > | m_pxPosition |
std::optional< castor::Size > | m_pxSize |
castor::Size | m_computeSize |
bool | m_visible { true } |
bool | m_displayable { false } |
MaterialObs | m_material {} |
uint32_t | m_index { 0 } |
uint32_t | m_level { 0 } |
OverlayType | m_type |
bool | m_sizeChanged { true } |
bool | m_positionChanged { true } |
castor::Point4d | m_uv { 0.0, 0.0, 1.0, 1.0 } |
castor::Point4d | m_displayRect {} |
|
strong |
C3D_API castor3d::PanelOverlay::PanelOverlay | ( | ) |
Constructor.
|
overridevirtual |
Draws the overlay.
Implements castor3d::OverlayCategory.
|
static |
Creation function, used by the factory.
|
static |
Creates the shader program used to compute the overlay's vertices.
C3D_API uint32_t castor3d::PanelOverlay::getCount | ( | bool | ) | const |