|
| | GL3PlusTextureGpuWindow (GpuPageOutStrategy::GpuPageOutStrategy pageOutStrategy, VaoManager *vaoManager, IdString name, uint32 textureFlags, TextureTypes::TextureTypes initialType, TextureGpuManager *textureManager, GL3PlusContext *context, Window *window) |
| |
| | ~GL3PlusTextureGpuWindow () override |
| |
| bool | _isDataReadyImpl () const override |
| | For internal use.
|
| |
| void | _notifyTextureSlotChanged (const TexturePool *newPool, uint16 slice) override |
| |
| void | _setToDisplayDummyTexture () override |
| |
| void | getCustomAttribute (IdString name, void *pData) override |
| |
| void | getSubsampleLocations (vector< Vector2 >::type locations) override |
| | Get the MSAA subsample locations.
|
| |
| bool | isOpenGLRenderWindow () const override |
| | OpenGL RenderWindows are a bit specific:
|
| |
| void | notifyDataIsReady () override |
| | Notifies it is safe to use the real data. Everything has been uploaded.
|
| |
| void | setTextureType (TextureTypes::TextureTypes textureType) override |
| |
| void | swapBuffers () override |
| | Only valid for TextureGpu classes.
|
| |
| | GL3PlusTextureGpuRenderTarget (GpuPageOutStrategy::GpuPageOutStrategy pageOutStrategy, VaoManager *vaoManager, IdString name, uint32 textureFlags, TextureTypes::TextureTypes initialType, TextureGpuManager *textureManager) |
| |
| | ~GL3PlusTextureGpuRenderTarget () override |
| |
| void | _setDepthBufferDefaults (uint16 depthBufferPoolId, bool preferDepthTexture, PixelFormatGpu desiredDepthBufferFormat) override |
| | These 3 values are used as defaults for the compositor to use, but they may be explicitly overriden by a RenderPassDescriptor.
|
| |
| uint16 | getDepthBufferPoolId () const override |
| |
| PixelFormatGpu | getDesiredDepthBufferFormat () const override |
| |
| OrientationMode | getOrientationMode () const override |
| |
| bool | getPreferDepthTexture () const override |
| |
| void | setOrientationMode (OrientationMode orientationMode) override |
| | Sets the given orientation.
|
| |
| | GL3PlusTextureGpu (GpuPageOutStrategy::GpuPageOutStrategy pageOutStrategy, VaoManager *vaoManager, IdString name, uint32 textureFlags, TextureTypes::TextureTypes initialType, TextureGpuManager *textureManager) |
| |
| | ~GL3PlusTextureGpu () override |
| |
| void | _autogenerateMipmaps (CopyEncTransitionMode::CopyEncTransitionMode transitionMode=CopyEncTransitionMode::Auto) override |
| | Tells the API to let the HW autogenerate mipmaps.
|
| |
| void | copyTo (TextureGpu *dst, const TextureBox &dstBox, uint8 dstMipLevel, const TextureBox &srcBox, uint8 srcMipLevel, bool keepResolvedTexSynced=true, CopyEncTransitionMode::CopyEncTransitionMode srcTransitionMode=CopyEncTransitionMode::Auto, CopyEncTransitionMode::CopyEncTransitionMode dstTransitionMode=CopyEncTransitionMode::Auto) override |
| |
| GLuint | getDisplayTextureName () const |
| | Returns the GLuid of the texture that is being displayed.
|
| |
| GLuint | getFinalTextureName () const |
| | Always returns the internal handle that belongs to this texture.
|
| |
| GLenum | getGlTextureTarget () const |
| | Returns GL_TEXTURE_2D / GL_TEXTURE_2D_ARRAY / etc.
|
| |
| GLuint | getMsaaFramebufferName () const |
| | If MSAA > 1u and TextureFlags::MsaaExplicitResolve is not set, this returns the handle to the temporary MSAA renderbuffer used for rendering, which will later be resolved into the resolve texture.
|
| |
| | TextureGpu (GpuPageOutStrategy::GpuPageOutStrategy pageOutStrategy, VaoManager *vaoManager, IdString name, uint32 textureFlags, TextureTypes::TextureTypes initialType, TextureGpuManager *textureManager) |
| |
| | ~TextureGpu () override |
| |
| uint8 * | _getSysRamCopy (uint8 mipLevel) |
| |
| TextureBox | _getSysRamCopyAsBox (uint8 mipLevel) |
| |
| size_t | _getSysRamCopyBytesPerImage (uint8 mipLevel) |
| | Note: Returns non-zero even if there is no system ram copy.
|
| |
| uint32 | _getSysRamCopyBytesPerRow (uint8 mipLevel) |
| | Note: Returns non-zero even if there is no system ram copy.
|
| |
| bool | _isManualTextureFlagPresent () const |
| |
| void | _notifySysRamDownloadIsReady (uint8 *sysRamPtr, bool resyncOnly) |
| | Do not call directly.
|
| |
| void | _resetTextureManager () |
| |
| void | _resolveTo (TextureGpu *resolveTexture) |
| | Immediately resolves this texture to the resolveTexture argument.
|
| |
| virtual void | _setNextLayout (ResourceLayout::Layout layout) |
| | Sets the layout the texture should be transitioned to after the next copy operation (once the copy encoder gets closed)
|
| |
| void | _setSampleDescription (SampleDescription desc, SampleDescription validatedSampleDesc) |
| | For internal use.
|
| |
| void | _setSourceType (uint8 type) |
| |
| void | _syncGpuResidentToSystemRam () |
| | Forces downloading data from GPU to CPU, usually because the data on GPU changed and we're in strategy AlwaysKeepSystemRamCopy.
|
| |
| void | _transitionTo (GpuResidency::GpuResidency newResidency, uint8 *sysRamCopy, bool autoDeleteSysRamCopy=true) |
| | This function may be called manually (if user is manually managing a texture) or automatically (e.g.
|
| |
| void | addListener (TextureGpuListener *listener) |
| |
| bool | allowsAutoMipmaps () const |
| |
| void | copyContentsToMemory (TextureBox src, TextureBox dst, PixelFormatGpu dstFormat, bool automaticResolve=true) |
| | Writes the current contents of the render target to the memory.
|
| |
| void | copyParametersFrom (TextureGpu *src) |
| |
| virtual ResourceLayout::Layout | getCurrentLayout () const |
| |
| ResourceLayout::Layout | getDefaultLayout (bool bIgnoreDiscardableFlag=false) const |
| |
| uint32 | getDepth () const |
| | For TypeCube & TypeCubeArray, this value returns 1.
|
| |
| uint32 | getDepthOrSlices () const |
| |
| TextureBox | getEmptyBox (uint8 mipLevel) |
| |
| uint32 | getHeight () const |
| |
| uint32 | getInternalHeight () const |
| | Real API height accounting for TextureGpu::getOrientationMode. See getInternalWidth.
|
| |
| uint16 | getInternalSliceStart () const |
| |
| TextureTypes::TextureTypes | getInternalTextureType () const |
| |
| uint32 | getInternalWidth () const |
| | Real API width accounting for TextureGpu::getOrientationMode If orientation mode is 90° or 270° then getInternalWidth returns the height and getInternalHeight returns the width.
|
| |
| const vector< TextureGpuListener * >::type & | getListeners () const |
| |
| String | getNameStr () const override |
| | Note: This returns the alias name of the texture.
|
| |
| uint8 | getNumMipmaps () const |
| |
| uint32 | getNumSlices () const |
| | For TypeCube this value returns 6.
|
| |
| PixelFormatGpu | getPixelFormat () const |
| |
| virtual String | getRealResourceNameStr () const |
| | Returns the real name (e.g. disk in file) of the resource.
|
| |
| SampleDescription | getRequestedSampleDescription () const |
| | Returns original requested sample description, i.e. the raw input to setSampleDescription.
|
| |
| virtual String | getResourceGroupStr () const |
| |
| SampleDescription | getSampleDescription () const |
| | Returns effective sample description supported by the API.
|
| |
| String | getSettingsDesc () const |
| |
| size_t | getSizeBytes () const |
| | Returns total size in bytes used in GPU by this texture (not by its pool) including mipmaps.
|
| |
| uint8 | getSourceType () const |
| | This setting is for where the texture is created, e.g.
|
| |
| TextureGpuManager * | getTextureManager () const |
| |
| const TexturePool * | getTexturePool () const |
| |
| uint32 | getTexturePoolId () const |
| |
| TextureTypes::TextureTypes | getTextureType () const |
| |
| uint32 | getWidth () const |
| |
| bool | hasAutomaticBatching () const |
| |
| bool | hasAutoMipmapAuto () const |
| |
| bool | hasEquivalentParameters (TextureGpu *other) const |
| |
| bool | hasMsaaExplicitResolves () const |
| |
| bool | isDataReady () const |
| | True if this texture is fully ready to be used for displaying.
|
| |
| bool | isDiscardableContent () const |
| |
| bool | isManualTexture () const |
| |
| bool | isMetadataReady () const |
| | It is threadsafe to call this function from main thread.
|
| |
| virtual bool | isMsaaPatternSupported (MsaaPatterns::MsaaPatterns pattern) |
| |
| bool | isMultisample () const |
| |
| bool | isPoolOwner () const |
| |
| bool | isReinterpretable () const |
| |
| bool | isRenderToTexture () const |
| |
| bool | isRenderWindowSpecific () const |
| |
| bool | isTexture () const |
| |
| bool | isTextureGpu () const override |
| |
| bool | isUav () const |
| |
| void | notifyAllListenersTextureChanged (uint32 reason, void *extraData=0) |
| |
| bool | prefersLoadingFromFileAsSRGB () const |
| |
| void | removeListener (TextureGpuListener *listener) |
| |
| bool | requiresTextureFlipping () const |
| |
| void | scheduleReupload (Image2 *image=0, bool autoDeleteImage=true, bool bSkipMultiload=false) |
| | There are times where you want to reload a texture again (e.g.
|
| |
| void | scheduleTransitionTo (GpuResidency::GpuResidency nextResidency, Image2 *image=0, bool autoDeleteImage=true, bool bSkipMultiload=false) |
| | Same as unsafeScheduleTransitionTo, but first checks if we're already in the residency state we want to go to, or if it has already been scheduled; thus it can be called multiple times.
|
| |
| void | setNumMipmaps (uint8 numMipmaps) |
| |
| void | setPixelFormat (PixelFormatGpu pixelFormat) |
| | Sets the pixel format.
|
| |
| void | setResolution (uint32 width, uint32 height, uint32 depthOrSlices=1u) |
| |
| void | setSampleDescription (SampleDescription desc) |
| |
| void | setTexturePoolId (uint32 poolId) |
| | 2D Texture with automatic batching will be merged with other textures into the same pool as one big 2D Array texture behind the scenes.
|
| |
| virtual bool | supportsAsDepthBufferFor (TextureGpu *colourTarget) const |
| |
| void | unsafeScheduleTransitionTo (GpuResidency::GpuResidency nextResidency, Image2 *image=0, bool autoDeleteImage=true, bool bSkipMultiload=false) |
| | Schedules an async transition in residency.
|
| |
| void | waitForData () |
| | Blocks main thread until data is ready.
|
| |
| void | waitForMetadata () |
| | Blocks main thread until metadata is ready.
|
| |
| void | writeContentsToFile (const String &filename, uint8 minMip, uint8 maxMip, bool automaticResolve=true) |
| | Writes the current contents of the render target to the named file.
|
| |
| virtual | ~GpuTrackedResource () |
| |
| | GpuResource (GpuPageOutStrategy::GpuPageOutStrategy pageOutStrategy, VaoManager *vaoManager, IdString name) |
| |
| virtual | ~GpuResource () |
| |
| void | _addPendingResidencyChanges (uint32 value) |
| |
| void | _setNextResidencyStatus (GpuResidency::GpuResidency nextResidency) |
| |
| GpuPageOutStrategy::GpuPageOutStrategy | getGpuPageOutStrategy () const |
| |
| IdString | getName () const |
| |
| GpuResidency::GpuResidency | getNextResidencyStatus () const |
| | When getResidencyStatus() != getNextResidencyStatus(), residency changes happen in the main thread, while some preparation may be happening in the background.
|
| |
| uint32 | getPendingResidencyChanges () const |
| | Returns the number of pending residency changes.
|
| |
| GpuResidency::GpuResidency | getResidencyStatus () const |
| |