/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
context.BindFramebuffer( GL_FRAMEBUFFER, 0 );
}
+void TextureFrameBuffer::AttachDepthTexture( Context& context, Render::Texture* texture, uint32_t mipmapLevel )
+{
+ context.BindFramebuffer( GL_FRAMEBUFFER, mId );
+
+ // Create a depth attachment.
+ if( texture->GetType() == TextureType::TEXTURE_2D )
+ {
+ context.FramebufferTexture2D( GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_2D, texture->GetId(), mipmapLevel );
+ }
+
+ context.BindFramebuffer( GL_FRAMEBUFFER, 0 );
+}
+
+void TextureFrameBuffer::AttachDepthStencilTexture( Context& context, Render::Texture* texture, uint32_t mipmapLevel )
+{
+ context.BindFramebuffer( GL_FRAMEBUFFER, mId );
+
+ // Create a stencil attachment.
+ if( texture->GetType() == TextureType::TEXTURE_2D )
+ {
+ context.FramebufferTexture2D( GL_FRAMEBUFFER, GL_DEPTH_STENCIL_ATTACHMENT, GL_TEXTURE_2D, texture->GetId(), mipmapLevel );
+ }
+
+ context.BindFramebuffer( GL_FRAMEBUFFER, 0 );
+}
+
void TextureFrameBuffer::Bind( Context& context )
{
context.BindFramebuffer( GL_FRAMEBUFFER, mId );