![]() |
OGRE-Next 4.0.0unstable
Object-Oriented Graphics Rendering Engine
|
Namespaces | |
namespace | Ogre::CommonTextureTypes |
namespace | Ogre::CopyEncTransitionMode |
namespace | Ogre::CubemapSide |
namespace | Ogre::DefaultMipmapGen |
namespace | Ogre::LoadAction |
namespace | Ogre::PbsBrdf |
namespace | Ogre::PrefabRootLayout |
namespace | Ogre::ResidencyMask |
namespace | Ogre::ResourceAccess |
namespace | Ogre::ResourceLayout |
namespace | Ogre::StoreAction |
namespace | Ogre::TextureFilter |
namespace | Ogre::TextureFlags |
namespace | Ogre::TextureSourceType |
namespace | Ogre::TextureTypes |
Classes | |
class | Ogre::Archive |
Archive-handling class. More... | |
class | Ogre::ArchiveFactory |
Abstract factory class, archive codec plugins can register concrete subclasses of this. More... | |
class | Ogre::ArchiveManager |
This class manages the available ArchiveFactory plugins. More... | |
struct | Ogre::BackgroundProcessResult |
Encapsulates the result of a background queue request. More... | |
class | Ogre::BarrierSolver |
struct | Ogre::BasicBlock |
class | Ogre::ConstBufferPool |
Maintains a pool of buffers grouped by hash ID. More... | |
class | Ogre::ConstBufferPoolUser |
struct | Ogre::D3D11FrameBufferDescValue |
struct | Ogre::D3D11HlmsPso |
We cache some conversion values here to avoid doing it every time we set the Pso. More... | |
class | Ogre::D3D11RenderPassDescriptor |
D3D11 will share groups of ID3D11RenderTargetView all D3D11RenderPassDescriptor that share the same RTV setup. More... | |
class | Ogre::D3D11TextureGpuManager |
class | Ogre::DataStream |
General purpose class used for encapsulating the reading and writing of data. More... | |
class | Ogre::DefaultTextureGpuManagerListener |
This is a Default implementation of TextureGpuManagerListener based on heuristics. More... | |
struct | Ogre::DescriptorSetSampler |
Descriptor sets describe what samplers should be bound together in one place. More... | |
struct | Ogre::DescriptorSetTexture |
Descriptor sets describe what textures should be bound together in one place. More... | |
struct | Ogre::DescriptorSetTexture2 |
struct | Ogre::DescriptorSetUav |
Descriptor sets describe what uavs should be bound together in one place. More... | |
class | Ogre::EmbeddedZipArchiveFactory |
Specialisation of ZipArchiveFactory for embedded Zip files. More... | |
class | Ogre::FileHandleDataStream |
Common subclass of DataStream for handling data from C-style file handles. More... | |
struct | Ogre::FileInfo |
Information about a file/directory within the archive will be returned using a FileInfo struct. More... | |
class | Ogre::FileStreamDataStream |
Common subclass of DataStream for handling data from std::basic_istream. More... | |
class | Ogre::FileSystemArchive |
Specialisation of the Archive class to allow reading of files from filesystem folders / directories. More... | |
class | Ogre::FileSystemArchiveFactory |
Specialisation of ArchiveFactory for FileSystem files. More... | |
class | Ogre::Font |
Class representing a font in the system. More... | |
class | Ogre::FontManager |
Manages Font resources, parsing .fontdef files and generally organising them. More... | |
class | Ogre::Forward3D |
Forward3D. More... | |
class | Ogre::ForwardClustered |
Implementation of Clustered Forward Shading. More... | |
class | Ogre::ForwardPlusBase |
ForwardPlusBase. More... | |
struct | Ogre::FrameBufferDescKey |
struct | Ogre::GL3PlusDescriptorSetTexture2 |
struct | Ogre::GL3PlusFrameBufferDescValue |
struct | Ogre::GL3PlusHlmsPso |
We cache some conversion values here to avoid doing it every time we set the Pso. More... | |
class | Ogre::GL3PlusRenderPassDescriptor |
GL3+ will share FBO handles between all GL3PlusRenderPassDescriptor that share the same FBO setup. More... | |
class | Ogre::GL3PlusTextureGpuManager |
struct | Ogre::GLES2HlmsPso |
We cache some conversion values here to avoid doing it every time we set the Pso. More... | |
struct | Ogre::GLES2HlmsSamplerblock |
A sampler block contains settings that go hand in hand with a texture, and thus are common to many textures. More... | |
class | Ogre::GpuProgram |
Defines a program which runs on the GPU such as a vertex or fragment program. More... | |
class | Ogre::GpuProgramManager |
struct | Ogre::GpuTrackedResource |
class | Ogre::HiddenAreaMeshVrGenerator |
struct | Ogre::HiddenAreaVrSettings |
class | Ogre::HighLevelGpuProgram |
Abstract base class representing a high-level program (a vertex or fragment program). More... | |
class | Ogre::HighLevelGpuProgramFactory |
Interface definition for factories of HighLevelGpuProgram. More... | |
class | Ogre::HighLevelGpuProgramManager |
This ResourceManager manages high-level vertex and fragment programs. More... | |
class | Ogre::Hlms |
HLMS stands for "High Level Material System". More... | |
struct | Ogre::HlmsBasePieces |
struct | Ogre::HlmsBaseProp |
These are "default" or "Base" properties common to many implementations and thus defined here. More... | |
struct | Ogre::HlmsBits |
struct | Ogre::HlmsBlendblock |
A blend block contains settings that rarely change, and thus are common to many materials. More... | |
struct | Ogre::HlmsCache |
struct | Ogre::HlmsComputePso |
class | Ogre::HlmsDatablock |
An hlms datablock contains individual information about a specific material. More... | |
class | Ogre::HlmsDiskCache |
This class allows saving the current state of an Hlms to disk: both its compiled shaders with source and the generated PSOs. More... | |
class | Ogre::HlmsJson |
HLMS stands for "High Level Material System". More... | |
class | Ogre::HlmsJsonCompute |
HLMS stands for "High Level Material System". More... | |
class | Ogre::HlmsJsonListener |
class | Ogre::HlmsListener |
Listener that can be hooked to an Hlms implementation for extending it with custom code. More... | |
struct | Ogre::HlmsMacroblock |
A macro block contains settings that will rarely change, and thus are common to many materials. More... | |
class | Ogre::HlmsManager |
HLMS stands for "High Level Material System". More... | |
struct | Ogre::HlmsPassPso |
IT'S MEMBERS MUST BE KEPT POD (Otherwise HlmsPso needs to be modified). More... | |
class | Ogre::HlmsPbsDatablock |
Contains information needed by PBS (Physically Based Shading) for OpenGL 3+ & D3D11+. More... | |
struct | Ogre::HlmsProperty |
struct | Ogre::HlmsPso |
Defines a PipelineStateObject as required by Vulkan, Metal & DX12. More... | |
struct | Ogre::HlmsPsoProp |
struct | Ogre::HlmsSamplerblock |
A sampler block contains settings that go hand in hand with a texture, and thus are common to many textures. More... | |
class | Ogre::HlmsTextureExportListener |
struct | Ogre::HlmsTexturePack |
class | Ogre::HlmsUnlitDatablock |
Contains information needed by PBS (Physically Based Shading) for OpenGL 3+ & D3D11+. More... | |
class | Ogre::ManualResourceLoader |
Interface describing a manual resource loader. More... | |
class | Ogre::MemoryDataStream |
Common subclass of DataStream for handling data from chunks of memory. More... | |
class | Ogre::Mesh |
Resource holding data about 3D mesh. More... | |
class | Ogre::MeshManager |
Handles the management of mesh resources. More... | |
class | Ogre::MeshSerializer |
Class for serialising mesh data to/from an OGRE .mesh file. More... | |
class | Ogre::MeshSerializerImpl |
Internal implementation of Mesh reading / writing for the latest version of the .mesh format. More... | |
class | Ogre::MeshSerializerImpl_v2_1_R0 |
class | Ogre::MeshSerializerImpl_v2_1_R1 |
class | Ogre::MeshSerializerListener |
struct | Ogre::MetalBufferRegion |
struct | Ogre::MetalDescriptorSetTexture |
struct | Ogre::MetalFrameBufferDescValue |
struct | Ogre::MetalHlmsPso |
class | Ogre::MetalRenderPassDescriptor |
struct | Ogre::MetalTexRegion |
class | Ogre::MetalTextureGpuManager |
class | Ogre::NULLTextureGpu |
class | Ogre::NULLTextureGpuManager |
class | Ogre::NULLTextureGpuRenderTarget |
class | Ogre::ObjCmdBuffer |
class | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS |
This is not a regular header, therefore it has no include guards. More... | |
class | Ogre::PsoCacheHelper |
Utility class to cache PSOs. More... | |
class | Ogre::RadialDensityMask |
struct | Ogre::RenderPassColourTarget |
struct | Ogre::RenderPassDepthTarget |
class | Ogre::RenderPassDescriptor |
struct | Ogre::RenderPassStencilTarget |
struct | Ogre::RenderPassTargetBase |
class | Ogre::Resource |
Abstract class representing a loadable resource (e.g. More... | |
class | Ogre::ResourceBackgroundQueue |
This class is used to perform Resource operations in a background thread. More... | |
class | Ogre::ResourceGroupListener |
This abstract class defines an interface which is called back during resource group loading to indicate the progress of the load. More... | |
class | Ogre::ResourceGroupManager |
This singleton class manages the list of resource groups, and notifying the various resource managers of their obligations to load / unload resources in a group. More... | |
class | Ogre::ResourceLoadingListener |
class | Ogre::ResourceManager |
Defines a generic resource handler. More... | |
struct | Ogre::ResourceStatus |
struct | Ogre::ResourceTransition |
class | Ogre::StagingTexture |
A StagingTexture is an intermediate texture that can be read and be written from both CPU & GPU. More... | |
class | Ogre::StagingTextureBufferImpl |
This implementation can be used by all RenderSystem APIs except D3D11, which is why this implementation is part of OgreMain. More... | |
class | Ogre::StreamSerialiser |
Utility class providing helper methods for reading / writing structured data held in a DataStream. More... | |
class | Ogre::SubMesh |
Defines a part of a complete mesh. More... | |
class | Ogre::SubStringRef |
class | Ogre::TextureGpu |
class | Ogre::TextureGpuListener |
class | Ogre::TextureGpuManager |
This class manages all textures (i.e. More... | |
class | Ogre::TextureGpuManagerListener |
struct | Ogre::TexturePool |
class | Ogre::UnifiedHighLevelGpuProgram |
Specialisation of HighLevelGpuProgram which just delegates its implementation to one other high level program, allowing a single program definition to represent one supported program from a number of options. More... | |
class | Ogre::UnifiedHighLevelGpuProgramFactory |
Factory class for Unified programs. More... | |
class | Ogre::v1::Mesh |
Resource holding data about 3D mesh. More... | |
struct | Ogre::v1::MeshLodUsage |
A way of recording the way each LODs is recorded this Mesh. More... | |
class | Ogre::v1::MeshManager |
Handles the management of mesh resources. More... | |
class | Ogre::v1::MeshSerializer |
Class for serialising mesh data to/from an OGRE .mesh file. More... | |
class | Ogre::v1::MeshSerializerImpl |
Internal implementation of Mesh reading / writing for the latest version of the .mesh format. More... | |
class | Ogre::v1::MeshSerializerImpl_v1_1 |
Class for providing backwards-compatibility for loading version 1.1 of the .mesh format. More... | |
class | Ogre::v1::MeshSerializerImpl_v1_10 |
Class for providing backwards-compatibility for loading version 1.10 of the .mesh format. More... | |
class | Ogre::v1::MeshSerializerImpl_v1_2 |
Class for providing backwards-compatibility for loading version 1.2 of the .mesh format. More... | |
class | Ogre::v1::MeshSerializerImpl_v1_3 |
Class for providing backwards-compatibility for loading version 1.3 of the .mesh format. More... | |
class | Ogre::v1::MeshSerializerImpl_v1_4 |
Class for providing backwards-compatibility for loading version 1.4 of the .mesh format. More... | |
class | Ogre::v1::MeshSerializerImpl_v1_41 |
Class for providing backwards-compatibility for loading version 1.41 of the .mesh format. More... | |
class | Ogre::v1::MeshSerializerImpl_v1_8 |
Class for providing backwards-compatibility for loading version 1.8 of the .mesh format. More... | |
class | Ogre::v1::MeshSerializerListener |
class | Ogre::v1::PrefabFactory |
A factory class that can create various mesh prefabs. More... | |
class | Ogre::v1::SubMesh |
Defines a part of a complete mesh. More... | |
class | Ogre::VertexBufferDownloadHelper |
Ogre currently does not support deinterleaved vertex buffers. More... | |
struct | Ogre::VulkanFlushOnlyDescValue |
struct | Ogre::VulkanFrameBufferDescKey |
struct | Ogre::VulkanFrameBufferDescValue |
struct | Ogre::VulkanHlmsPso |
class | Ogre::VulkanRenderPassDescriptor |
class | Ogre::VulkanTextureGpu |
class | Ogre::VulkanTextureGpuManager |
class | Ogre::VulkanTextureGpuRenderTarget |
class | Ogre::Window |
class | Ogre::ZipArchive |
Specialisation of the Archive class to allow reading of files from a zip format source archive. More... | |
class | Ogre::ZipArchiveFactory |
Specialisation of ArchiveFactory for Zip files. More... | |
class | Ogre::ZipDataStream |
Specialisation of DataStream to handle streaming data from zip archives. More... | |
class | RadialDensityMaskVrGenerator |
Manages a full screen stereo rectangle that masks rectangles in the periphery and then reconstruct these blocks. More... | |
Macros | |
#define | OGRE_EXTRACT_HLMS_TYPE_FROM_CACHE_HASH(x) ( x >> 29 ) |
#define | OGRE_HLMS_MAX_BASIC_BLOCKS OGRE_HLMS_NUM_SAMPLERBLOCKS |
#define | OGRE_HLMS_MAX_LIFETIME_BLENDBLOCKS 4096 |
#define | OGRE_HLMS_MAX_LIFETIME_MACROBLOCKS 4096 |
#define | OGRE_HLMS_NUM_BLENDBLOCKS 32 |
#define | OGRE_HLMS_NUM_MACROBLOCKS 32 |
#define | OGRE_HLMS_NUM_SAMPLERBLOCKS 64 |
Functions | |
Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::OGRE_HLMS_TEXTURE_BASE_CLASS (IdString name, Hlms *creator, const HlmsMacroblock *macroblock, const HlmsBlendblock *blendblock, const HlmsParamVec ¶ms) | |
Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::~OGRE_HLMS_TEXTURE_BASE_CLASS () override | |
void | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::_setSamplerblock (uint8 texType, const HlmsSamplerblock *samplerblockPtr) |
Same as setSamplerblock, but samplerblockPtr is a raw samplerblock retrieved from HlmsManager, and is assumed to have its reference count already be incremented for us. | |
void | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::_setTexture (uint8 texType, TextureGpu *texture, const HlmsSamplerblock *samplerblockPtr=0, uint16 sliceIdx=std::numeric_limits< uint16 >::max()) |
Same as setTexture, but samplerblockPtr is a raw samplerblock retrieved from HlmsManager, and is assumed to have its reference count already be incremented for us (note HlmsManager::getSamplerblock() already increments the ref. | |
uint8 | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::getIndexToDescriptorSampler (uint8 texType) |
Do not call this function if RSC_SEPARATE_SAMPLERS_FROM_TEXTURES is not set. | |
uint8 | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::getIndexToDescriptorTexture (uint8 texType) |
This function has O( log N ) complexity, but O(1) if the texture was not set. | |
const HlmsSamplerblock * | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::getSamplerblock (uint8 texType) const |
TextureGpu * | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::getTexture (uint8 texType) const |
void | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::loadAllTextures () |
void | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::notifyTextureChanged (TextureGpu *texture, TextureGpuListener::Reason reason, void *extraData) override |
Called when a TextureGpu changed in a way that affects how it is displayed: | |
bool | Ogre::OrderCacheByHash (const HlmsCache *_left, const HlmsCache *_right) |
bool | Ogre::OrderConstBufferPoolUserByPoolThenSlot (const ConstBufferPoolUser *_l, const ConstBufferPoolUser *_r) |
bool | Ogre::OrderParamVecByKey (const std::pair< IdString, String > &_left, const std::pair< IdString, String > &_right) |
bool | Ogre::OrderPropertyByIdString (const HlmsProperty &_left, const HlmsProperty &_right) |
void | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::preload () override |
Tells datablock to start loading all of its textures (if not loaded already) and any other resource it may need. | |
void | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::saveTextures (const String &folderPath, set< String >::type &savedTextures, bool saveOitd, bool saveOriginal, HlmsTextureExportListener *listener) override |
void | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::setAlphaTestThreshold (float threshold) override |
Alpha test's threshold. | |
void | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::setSamplerblock (uint8 texType, const HlmsSamplerblock ¶ms) |
Sets a new sampler block to be associated with the texture (i.e. | |
void | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::setTexture (uint8 texType, TextureGpu *texture, const HlmsSamplerblock *refParams=0, uint16 sliceIdx=std::numeric_limits< uint16 >::max()) |
Sets a new texture for rendering. | |
bool | Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::shouldStayLoaded (TextureGpu *texture) override |
Return true if this TextureGpu should likely stay loaded or else graphical changes could occur. | |
Variables | |
static const size_t | Ogre::c_ForwardPlusNumFloat4PerCubemapProbe = 8u |
static const size_t | Ogre::c_ForwardPlusNumFloat4PerDecal = 4u |
static const size_t | Ogre::c_ForwardPlusNumFloat4PerLight = 6u |
#define OGRE_EXTRACT_HLMS_TYPE_FROM_CACHE_HASH | ( | x | ) | ( x >> 29 ) |
#define OGRE_HLMS_MAX_BASIC_BLOCKS OGRE_HLMS_NUM_SAMPLERBLOCKS |
#define OGRE_HLMS_MAX_LIFETIME_BLENDBLOCKS 4096 |
#define OGRE_HLMS_MAX_LIFETIME_MACROBLOCKS 4096 |
#define OGRE_HLMS_NUM_BLENDBLOCKS 32 |
#define OGRE_HLMS_NUM_MACROBLOCKS 32 |
#define OGRE_HLMS_NUM_SAMPLERBLOCKS 64 |
typedef vector< Archive * >::type Ogre::ArchiveVec |
Identifier of a background process.
typedef map<FrameBufferDescKey,D3D11FrameBufferDescValue>::type Ogre::D3D11FrameBufferDescMap |
typedef StdList<DataStreamPtr> Ogre::DataStreamList |
List of DataStream items.
Shared pointer to list of DataStream items.
typedef vector<FileInfo>::type Ogre::FileInfoList |
typedef SharedPtr<FileInfoList> Ogre::FileInfoListPtr |
typedef FastArray< TextureFilter::FilterBase * > Ogre::FilterBaseArray |
typedef map<FrameBufferDescKey,GL3PlusFrameBufferDescValue>::type Ogre::GL3PlusFrameBufferDescMap |
typedef vector<HlmsCache*>::type Ogre::HlmsCacheVec |
typedef vector<std::pair<IdString,String>>::type Ogre::HlmsParamVec |
typedef vector<HlmsProperty>::type Ogre::HlmsPropertyVec |
typedef map<FrameBufferDescKey,MetalFrameBufferDescValue>::type Ogre::MetalFrameBufferDescMap |
typedef map<IdString,String>::type Ogre::PiecesMap |
typedef vector<StagingTexture*>::type Ogre::StagingTextureVec |
typedef list<TexturePool>::type Ogre::TexturePoolList |
typedef map<FrameBufferDescKey,VulkanFlushOnlyDescValue>::type Ogre::VulkanFlushOnlyDescMap |
typedef map<VulkanFrameBufferDescKey,VulkanFrameBufferDescValue>::type Ogre::VulkanFrameBufferDescMap |
enum Ogre::FontType |
Enumerates the types of Font usable in the engine.
Enumerator | |
---|---|
FT_TRUETYPE | Generated from a truetype (.ttf) font. |
FT_IMAGE | Loaded from an image created by an artist. |
enum Ogre::GpuProgramType |
enum Ogre::HlmsBasicBlock |
enum Ogre::HlmsCacheFlags : uchar |
enum Ogre::HlmsTypes : uchar |
Up to 8 different HLMS generator types are allowed.
The maximum values must be in sync with ShaderBits in RenderQueue.cpp (the higher 3 bits)
Enumerator | |
---|---|
HLMS_LOW_LEVEL | Proxy that redirects to a regular Material. |
HLMS_PBS | Physically Based Shader Generator. |
HLMS_TOON | Toon shading / Cel shading. |
HLMS_UNLIT | Made for GUIs, overlays, particle FXs, self-iluminating billboards. |
HLMS_USER0 | |
HLMS_USER1 | |
HLMS_USER2 | |
HLMS_USER3 | |
HLMS_MAX | |
HLMS_COMPUTE |
enum Ogre::MeshChunkID |
Definition of the OGRE .mesh file format.
.mesh files are binary files (for read efficiency at runtime) and are arranged into chunks of data, very like 3D Studio's format. A chunk always consists of: unsigned short CHUNK_ID : one of the following chunk ids identifying the chunk unsigned long LENGTH : length of the chunk in bytes, including this header void* DATA : the data, which may contain other sub-chunks (various data types)
A .mesh file can contain both the definition of the Mesh itself, and optionally the definitions of the materials is uses (although these can be omitted, if so the Mesh assumes that at runtime the Materials referred to by name in the Mesh are loaded/created from another source)
A .mesh file only contains a single mesh, which can itself have multiple submeshes.
Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::OGRE_HLMS_TEXTURE_BASE_CLASS | ( | IdString | name, |
Hlms * | creator, | ||
const HlmsMacroblock * | macroblock, | ||
const HlmsBlendblock * | blendblock, | ||
const HlmsParamVec & | params | ||
) |
|
override |
void Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::_setSamplerblock | ( | uint8 | texType, |
const HlmsSamplerblock * | samplerblockPtr | ||
) |
Same as setSamplerblock, but samplerblockPtr is a raw samplerblock retrieved from HlmsManager, and is assumed to have its reference count already be incremented for us.
See _setTexture.
void Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::_setTexture | ( | uint8 | texType, |
TextureGpu * | texture, | ||
const HlmsSamplerblock * | samplerblockPtr = 0 , |
||
uint16 | sliceIdx = std::numeric_limits< uint16 >::max() |
||
) |
Same as setTexture, but samplerblockPtr is a raw samplerblock retrieved from HlmsManager, and is assumed to have its reference count already be incremented for us (note HlmsManager::getSamplerblock() already increments the ref.
count). Mostly for internal use, but can speed up loading if you already manage samplerblocks manually and have the raw ptr.
Do not call this function if RSC_SEPARATE_SAMPLERS_FROM_TEXTURES is not set.
If not set, then just the result value from getIndexToDescriptorTexture instead. Same complexity as getIndexToDescriptorTexture
This function has O( log N ) complexity, but O(1) if the texture was not set.
const HlmsSamplerblock * Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::getSamplerblock | ( | uint8 | texType | ) | const |
TextureGpu * Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::getTexture | ( | uint8 | texType | ) | const |
void Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::loadAllTextures | ( | ) |
|
overridevirtual |
Called when a TextureGpu changed in a way that affects how it is displayed:
Implements Ogre::TextureGpuListener.
References Ogre::HlmsCache::hash.
|
inline |
|
inline |
|
inline |
References Ogre::HlmsProperty::keyName.
|
overridevirtual |
Tells datablock to start loading all of its textures (if not loaded already) and any other resource it may need.
Useful to cut loading times by anticipating what the user will do.
Do not call this function aggressively (e.g. for lots of material every frame)
Reimplemented from Ogre::HlmsDatablock.
|
overridevirtual |
folderPath | Folder where to dump the textures. |
savedTextures | [in/out] Set of texture names. Textures whose name is already in the set won't be saved again. Textures that were saved will be inserted into the set. |
saveOitd | When true, we will download the texture from GPU and save it in OITD format. OITD is faster to load as it's stored in Ogre's native format it understands, but it cannot be opened by traditional image editors; also OITD is not backwards compatible with older versions of Ogre. |
saveOriginal | When true, we will attempt to read the raw filestream of the original texture and save it (i.e. copy the original png/dds/etc file). |
Reimplemented from Ogre::HlmsDatablock.
|
overridevirtual |
Alpha test's threshold.
threshold | Value typically in the range [0; 1) |
Reimplemented from Ogre::HlmsDatablock.
void Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::setSamplerblock | ( | uint8 | texType, |
const HlmsSamplerblock & | params | ||
) |
Sets a new sampler block to be associated with the texture (i.e.
filtering mode, addressing modes, etc). If the samplerblock changes, this function will always trigger a HlmsDatablock::flushRenderables
texType | Texture unit. Must be in range [0; OGRE_HLMS_TEXTURE_BASE_MAX_TEX) |
params | The sampler block to use as reference. |
void Ogre::OGRE_HLMS_TEXTURE_BASE_CLASS::setTexture | ( | uint8 | texType, |
TextureGpu * | texture, | ||
const HlmsSamplerblock * | refParams = 0 , |
||
uint16 | sliceIdx = std::numeric_limits< uint16 >::max() |
||
) |
Sets a new texture for rendering.
Calling this function may trigger an HlmsDatablock::flushRenderables if the texture or the samplerblock changes. Might not be called if old and new texture belong to the same TexturePool.
texType | Texture unit. Must be in range [0; OGRE_HLMS_TEXTURE_BASE_MAX_TEX) |
texture | Texture to change to. If it is null and previously wasn't (or viceversa), will trigger HlmsDatablock::flushRenderables. |
refParams | Optional. We'll create (or retrieve an existing) samplerblock based on the input parameters. When null, we leave the previously set samplerblock (if a texture is being set, and if no samplerblock was set, we'll create a default one) |
sliceIdx | Optional. When not set to 0xFFFF, it means you want to explicitly set the texture array index, instead of relying on texture->getInternalSliceStart(). Only useful if texture is TextureTypes::Type2DArray. For advanced users. |
|
overridevirtual |
Return true if this TextureGpu should likely stay loaded or else graphical changes could occur.
Return false if it is certainly safe to unload.
Reimplemented from Ogre::TextureGpuListener.
|
static |
|
static |
|
static |