Ocular Engine
Ocular::Graphics::DepthTexture Class Reference

A special texture that stores high precision depth information for each pixel. More...

#include <DepthTexture.hpp>

Inheritance diagram for Ocular::Graphics::DepthTexture:
Ocular::Graphics::Texture2D Ocular::Graphics::Texture Ocular::Core::Resource Ocular::Graphics::D3D11DepthTexture

Public Member Functions

 DepthTexture (TextureDescriptor const &descriptor)
 
virtual void unload ()
 
virtual void apply ()
 
virtual void refresh ()
 
- Public Member Functions inherited from Ocular::Graphics::Texture2D
 Texture2D (TextureDescriptor const &descriptor)
 
Core::Color getPixel (uint32_t x, uint32_t y) const
 
bool setPixel (uint32_t x, uint32_t y, Core::Color const &color)
 
bool getPixels (std::vector< Core::Color > &pixels, uint32_t startX=0, uint32_t startY=0, uint32_t width=0, uint32_t height=0) const
 
bool setPixels (std::vector< Core::Color > const &pixels, uint32_t startX=0, uint32_t startY=0, uint32_t width=0, uint32_t height=0)
 
unsigned getWidth () const
 
void setWidth (uint32_t const &width)
 
unsigned getHeight () const
 
void setHeight (uint32_t const &height)
 
- Public Member Functions inherited from Ocular::Graphics::Texture
 Texture (TextureDescriptor const &descriptor)
 
TextureDescriptor getDescriptor () const
 
- Public Member Functions inherited from Ocular::Core::Resource
 Resource (File const &source)
 
virtual void forceLoad ()
 
File getSourceFile () const
 
void setSourceFile (File const &file)
 
void setIsInMemory (bool inMemory)
 
bool isInMemory () const
 
void setSize (uint64_t size)
 
uint64_t getSize () const
 
ResourceType getResourceType () const
 
void setName (std::string const &name)
 
std::string const & getName () const
 
std::string const & getMappingName () const
 
void setMappingName (std::string const &name)
 
ResourceMetadatagetMetadata () const
 
void setMetadata (ResourceMetadata *metadata)
 

Additional Inherited Members

- Protected Member Functions inherited from Ocular::Graphics::Texture2D
void getTrueDimensions (uint32_t startX, uint32_t startY, uint32_t &trueWidth, uint32_t &trueHeight) const
 
- Protected Attributes inherited from Ocular::Graphics::Texture2D
std::vector< Core::Colorm_Pixels
 
- Protected Attributes inherited from Ocular::Graphics::Texture
TextureDescriptor m_Descriptor
 
- Protected Attributes inherited from Ocular::Core::Resource
ResourceType m_Type
 
ResourceMetadatam_Metadata
 
File m_SourceFile
 
bool m_IsInMemory
 
uint64_t m_SizeInMemory
 
std::string m_Name
 
std::string m_MappingName
 

Detailed Description

A special texture that stores high precision depth information for each pixel.

Member Function Documentation

void Ocular::Graphics::DepthTexture::apply ( )
virtual

Applies any manually made pixel changes of the texture to the GPU. Textures will not be updated (i.e. changes rendered) until this method is called.

Note
Texture CPU access must be set to TextureAccess::WriteOnly or TextureAccess::ReadWrite in order to modify a texture at runtime.

Reimplemented from Ocular::Graphics::Texture2D.

Reimplemented in Ocular::Graphics::D3D11DepthTexture.

void Ocular::Graphics::DepthTexture::refresh ( )
virtual

Refreshes the CPU texture data with any data stored on the GPU. This action can overwrite pre-existing CPU data.

Note
Texture CPU access must be set to TextureAccess::ReadOnly or TextureAccess::ReadWrite in order to refresh the CPU data at runtime.

Reimplemented from Ocular::Graphics::Texture2D.

Reimplemented in Ocular::Graphics::D3D11DepthTexture.

void Ocular::Graphics::DepthTexture::unload ( )
virtual

Unloads all CPU data related to this texture.

If this is an instance of an API-specific texture implementation (such as D3D11Texture2D), then all GPU-related data will also be freed and all API-specific structures released.

Reimplemented from Ocular::Graphics::Texture2D.

Reimplemented in Ocular::Graphics::D3D11DepthTexture.


The documentation for this class was generated from the following files: