本文整理汇总了C++中Extensions3D::maySupportMultisampling方法的典型用法代码示例。如果您正苦于以下问题:C++ Extensions3D::maySupportMultisampling方法的具体用法?C++ Extensions3D::maySupportMultisampling怎么用?C++ Extensions3D::maySupportMultisampling使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Extensions3D
的用法示例。
在下文中一共展示了Extensions3D::maySupportMultisampling方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: createMultisampleBuffer
bool FECustomFilter::createMultisampleBuffer()
{
ASSERT(!m_triedMultisampleBuffer);
m_triedMultisampleBuffer = true;
Extensions3D* extensions = m_context->getExtensions();
if (!extensions
|| !extensions->maySupportMultisampling()
|| !extensions->supports("GL_ANGLE_framebuffer_multisample")
|| !extensions->supports("GL_ANGLE_framebuffer_blit")
|| !extensions->supports("GL_OES_rgb8_rgba8"))
return false;
extensions->ensureEnabled("GL_ANGLE_framebuffer_blit");
extensions->ensureEnabled("GL_ANGLE_framebuffer_multisample");
extensions->ensureEnabled("GL_OES_rgb8_rgba8");
if (!m_multisampleFrameBuffer)
m_multisampleFrameBuffer = m_context->createFramebuffer();
if (!m_multisampleRenderBuffer)
m_multisampleRenderBuffer = m_context->createRenderbuffer();
if (!m_multisampleDepthBuffer)
m_multisampleDepthBuffer = m_context->createRenderbuffer();
return true;
}
示例2: adoptRef
PassRefPtr<DrawingBuffer> DrawingBuffer::create(GraphicsContext3D* context, const IntSize& size, PreserveDrawingBuffer preserve, AlphaRequirement alpha)
{
Extensions3D* extensions = context->getExtensions();
bool multisampleSupported = extensions->maySupportMultisampling()
&& extensions->supports("GL_ANGLE_framebuffer_blit")
&& extensions->supports("GL_ANGLE_framebuffer_multisample")
&& extensions->supports("GL_OES_rgb8_rgba8");
if (multisampleSupported) {
extensions->ensureEnabled("GL_ANGLE_framebuffer_blit");
extensions->ensureEnabled("GL_ANGLE_framebuffer_multisample");
extensions->ensureEnabled("GL_OES_rgb8_rgba8");
}
bool packedDepthStencilSupported = extensions->supports("GL_OES_packed_depth_stencil");
if (packedDepthStencilSupported)
extensions->ensureEnabled("GL_OES_packed_depth_stencil");
RefPtr<DrawingBuffer> drawingBuffer = adoptRef(new DrawingBuffer(context, size, multisampleSupported, packedDepthStencilSupported, preserve, alpha));
return (drawingBuffer->m_context) ? drawingBuffer.release() : 0;
}