1afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill// 2afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill// Copyright (c) 2014 The ANGLE Project Authors. All rights reserved. 3afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill// Use of this source code is governed by a BSD-style license that can be 4afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill// found in the LICENSE file. 5afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill// 6afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 7afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill// FramebufferAttachment.cpp: the gl::FramebufferAttachment class and its derived classes 8afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill// objects and related functionality. [OpenGL ES 2.0.24] section 4.4.3 page 108. 9afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 10afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill#include "libGLESv2/FramebufferAttachment.h" 11afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill#include "libGLESv2/Texture.h" 120b7eef7c469bf717f7e1b57c6273f00d88e8b1d9Geoff Lang#include "libGLESv2/formatutils.h" 130b7eef7c469bf717f7e1b57c6273f00d88e8b1d9Geoff Lang#include "libGLESv2/Renderbuffer.h" 140b7eef7c469bf717f7e1b57c6273f00d88e8b1d9Geoff Lang#include "libGLESv2/renderer/RenderTarget.h" 15afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill#include "libGLESv2/renderer/Renderer.h" 166518fe2466f816f9da9f72d7be6ed7962226bdf9Brandon Jones#include "libGLESv2/renderer/d3d/TextureStorage.h" 170b7eef7c469bf717f7e1b57c6273f00d88e8b1d9Geoff Lang 18afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill#include "common/utilities.h" 19afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 20afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madillnamespace gl 21afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 22afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 23e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill////// FramebufferAttachment Implementation ////// 24e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill 25aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie MadillFramebufferAttachment::FramebufferAttachment(GLenum binding) 26aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill : mBinding(binding) 27afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 28afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 29afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 30e261b44af7631c31ddca8601490e7445af5a3341Jamie MadillFramebufferAttachment::~FramebufferAttachment() 31afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 32afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 33afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 34e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLuint FramebufferAttachment::getRedSize() const 35afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 365d601382b51c29d1670b58c01360416bd929842dGeoff Lang return (GetInternalFormatInfo(getInternalFormat()).redBits > 0) ? GetInternalFormatInfo(getActualFormat()).redBits : 0; 37afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 38afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 39e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLuint FramebufferAttachment::getGreenSize() const 40e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill{ 415d601382b51c29d1670b58c01360416bd929842dGeoff Lang return (GetInternalFormatInfo(getInternalFormat()).greenBits > 0) ? GetInternalFormatInfo(getActualFormat()).greenBits : 0; 42e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill} 43afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 44e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLuint FramebufferAttachment::getBlueSize() const 45afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 465d601382b51c29d1670b58c01360416bd929842dGeoff Lang return (GetInternalFormatInfo(getInternalFormat()).blueBits > 0) ? GetInternalFormatInfo(getActualFormat()).blueBits : 0; 47afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 48afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 49e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLuint FramebufferAttachment::getAlphaSize() const 50afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 515d601382b51c29d1670b58c01360416bd929842dGeoff Lang return (GetInternalFormatInfo(getInternalFormat()).alphaBits > 0) ? GetInternalFormatInfo(getActualFormat()).alphaBits : 0; 52afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 53afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 54e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLuint FramebufferAttachment::getDepthSize() const 55afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 565d601382b51c29d1670b58c01360416bd929842dGeoff Lang return (GetInternalFormatInfo(getInternalFormat()).depthBits > 0) ? GetInternalFormatInfo(getActualFormat()).depthBits : 0; 57afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 58afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 59e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLuint FramebufferAttachment::getStencilSize() const 60afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 615d601382b51c29d1670b58c01360416bd929842dGeoff Lang return (GetInternalFormatInfo(getInternalFormat()).stencilBits > 0) ? GetInternalFormatInfo(getActualFormat()).stencilBits : 0; 62e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill} 63e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill 64e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLenum FramebufferAttachment::getComponentType() const 65e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill{ 665d601382b51c29d1670b58c01360416bd929842dGeoff Lang return GetInternalFormatInfo(getActualFormat()).componentType; 67e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill} 68e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill 69e4a492be45f39dffaea53c3523064844ee56e41bGeoff LangGLenum FramebufferAttachment::getColorEncoding() const 70e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill{ 715d601382b51c29d1670b58c01360416bd929842dGeoff Lang return GetInternalFormatInfo(getActualFormat()).colorEncoding; 72e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill} 73e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill 74e261b44af7631c31ddca8601490e7445af5a3341Jamie Madillbool FramebufferAttachment::isTexture() const 75e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill{ 76e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill return (type() != GL_RENDERBUFFER); 77e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill} 78e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill 793592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill///// TextureAttachment Implementation //////// 803592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill 81eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie MadillTextureAttachment::TextureAttachment(GLenum binding, Texture *texture, const ImageIndex &index) 82de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie Madill : FramebufferAttachment(binding), 83de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie Madill mIndex(index) 84eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill{ 85eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill mTexture.set(texture); 86eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill} 87eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill 88eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie MadillTextureAttachment::~TextureAttachment() 89eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill{ 90eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill mTexture.set(NULL); 91eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill} 92aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill 933592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie MadillGLsizei TextureAttachment::getSamples() const 943592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill{ 953592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill return 0; 963592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill} 973592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill 983592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie MadillGLuint TextureAttachment::id() const 993592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill{ 100eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill return mTexture->id(); 1013592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill} 1023592a3384b7fcfda33e2ba5ec633081f49e9f911Jamie Madill 103de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLsizei TextureAttachment::getWidth() const 104e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill{ 105eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill return mTexture->getWidth(mIndex); 106e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill} 107e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill 108de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLsizei TextureAttachment::getHeight() const 109e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill{ 110eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill return mTexture->getHeight(mIndex); 111afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 112afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 113de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLenum TextureAttachment::getInternalFormat() const 114afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 115eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill return mTexture->getInternalFormat(mIndex); 116afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 117afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 118de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLenum TextureAttachment::getActualFormat() const 119afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 120eeb7b0e9038b0fc57ead6a491541548159855dc2Jamie Madill return mTexture->getActualFormat(mIndex); 121afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 122afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 123de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLenum TextureAttachment::type() const 124afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 125de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie Madill return mIndex.type; 126afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 127afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 128de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLint TextureAttachment::mipLevel() const 129afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 130de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie Madill return mIndex.mipIndex; 131afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 132afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 133de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie MadillGLint TextureAttachment::layer() const 134afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill{ 135de3ed7043b930b54a4441e83d7ba53fac6d45fd4Jamie Madill return mIndex.layerIndex; 136afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 137afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 1385b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie MadillTexture *TextureAttachment::getTexture() 1395b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill{ 1405b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill return mTexture.get(); 1415b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill} 1425b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill 143ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madillconst ImageIndex *TextureAttachment::getTextureImageIndex() const 144ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill{ 145ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill return &mIndex; 146ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill} 147ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill 1485b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie MadillRenderbuffer *TextureAttachment::getRenderbuffer() 1495b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill{ 1505b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill UNREACHABLE(); 1515b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill return NULL; 1525b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill} 1535b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill 154e261b44af7631c31ddca8601490e7445af5a3341Jamie Madill////// RenderbufferAttachment Implementation ////// 1556c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill 156aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie MadillRenderbufferAttachment::RenderbufferAttachment(GLenum binding, Renderbuffer *renderbuffer) 157aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill : FramebufferAttachment(binding) 1586c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{ 1596c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill ASSERT(renderbuffer); 1606c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill mRenderbuffer.set(renderbuffer); 1616c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill} 1626c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill 1636c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie MadillRenderbufferAttachment::~RenderbufferAttachment() 1646c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{ 1656c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill mRenderbuffer.set(NULL); 166afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 167afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 1686c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie MadillGLsizei RenderbufferAttachment::getWidth() const 1696c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{ 1706c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill return mRenderbuffer->getWidth(); 1716c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill} 172afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 1736c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie MadillGLsizei RenderbufferAttachment::getHeight() const 1746c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{ 1756c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill return mRenderbuffer->getHeight(); 1766c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill} 1776c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill 1786c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie MadillGLenum RenderbufferAttachment::getInternalFormat() const 1796c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{ 1806c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill return mRenderbuffer->getInternalFormat(); 1816c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill} 1826c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill 1836c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie MadillGLenum RenderbufferAttachment::getActualFormat() const 1846c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{ 1856c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill return mRenderbuffer->getActualFormat(); 1866c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill} 1876c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill 1886c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie MadillGLsizei RenderbufferAttachment::getSamples() const 1896c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{ 1906c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill return mRenderbuffer->getStorage()->getSamples(); 1916c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill} 1926c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill 193218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie MadillGLuint RenderbufferAttachment::id() const 194218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie Madill{ 195218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie Madill return mRenderbuffer->id(); 196218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie Madill} 197218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie Madill 198218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie MadillGLenum RenderbufferAttachment::type() const 1996c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{ 200218b6ede4c9419fe4d752e3a7220eca3b4fe9a0eJamie Madill return GL_RENDERBUFFER; 2016c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill} 2026c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill 2039c074a399302fbb47be1ce0a5ec381d663401598Jamie MadillGLint RenderbufferAttachment::mipLevel() const 2049c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill{ 2059c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill return 0; 2069c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill} 2079c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill 2089c074a399302fbb47be1ce0a5ec381d663401598Jamie MadillGLint RenderbufferAttachment::layer() const 2099c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill{ 2109c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill return 0; 2119c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill} 2129c074a399302fbb47be1ce0a5ec381d663401598Jamie Madill 2135b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie MadillTexture *RenderbufferAttachment::getTexture() 2146c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill{ 2156c7b4ada6bcb8ec0d929ff929b33f07c653d8e82Jamie Madill UNREACHABLE(); 2165b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill return NULL; 2175b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill} 2185b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill 219ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madillconst ImageIndex *RenderbufferAttachment::getTextureImageIndex() const 220ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill{ 221ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill UNREACHABLE(); 222ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill return NULL; 223ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill} 224ac7579c2bd0cc9afdf5892a766e6967bf3a341f0Jamie Madill 2255b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie MadillRenderbuffer *RenderbufferAttachment::getRenderbuffer() 2265b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill{ 2275b5d1244d9089bb4a9e74cc34265a524b84ec258Jamie Madill return mRenderbuffer.get(); 228afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 229afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill 230afc21c0623531c56f383d7c789f9e5a89a18bb0aJamie Madill} 231