void FRenderResource::UpdateRHI() { check(IsInRenderingThread()); if(bInitialized && GIsRHIInitialized) { ReleaseRHI(); ReleaseDynamicRHI(); InitDynamicRHI(); InitRHI(); } }
void FMediaTextureResource::ReleaseDynamicRHI() { // release the FTexture RHI resources here as well ReleaseRHI(); RHIUpdateTextureReference(Owner->TextureReference.TextureReferenceRHI, FTextureRHIParamRef()); Texture2DRHI.SafeRelease(); RenderTargetTextureRHI.SafeRelease(); // remove from global list of deferred updates RemoveFromDeferredUpdateList(); }
void FRenderResource::ReleaseResource() { if ( !GIsCriticalError ) { check(IsInRenderingThread()); if(bInitialized) { if(GIsRHIInitialized) { ReleaseRHI(); ReleaseDynamicRHI(); } ResourceLink.Unlink(); bInitialized = false; } } }