當前位置: 首頁>>代碼示例>>Java>>正文


Java GL30.glRenderbufferStorage方法代碼示例

本文整理匯總了Java中org.lwjgl.opengl.GL30.glRenderbufferStorage方法的典型用法代碼示例。如果您正苦於以下問題:Java GL30.glRenderbufferStorage方法的具體用法?Java GL30.glRenderbufferStorage怎麽用?Java GL30.glRenderbufferStorage使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.lwjgl.opengl.GL30的用法示例。


在下文中一共展示了GL30.glRenderbufferStorage方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: glRenderbufferStorage

import org.lwjgl.opengl.GL30; //導入方法依賴的package包/類
public static void glRenderbufferStorage(int target, int internalFormat, int width, int height)
{
    if (framebufferSupported)
    {
        switch (framebufferType)
        {
            case 0:
                GL30.glRenderbufferStorage(target, internalFormat, width, height);
                break;

            case 1:
                ARBFramebufferObject.glRenderbufferStorage(target, internalFormat, width, height);
                break;

            case 2:
                EXTFramebufferObject.glRenderbufferStorageEXT(target, internalFormat, width, height);
        }
    }
}
 
開發者ID:Notoh,項目名稱:DecompiledMinecraft,代碼行數:20,代碼來源:OpenGlHelper.java

示例2: glRenderbufferStorage

import org.lwjgl.opengl.GL30; //導入方法依賴的package包/類
public static void glRenderbufferStorage(int target, int internalFormat, int width, int height)
{
    if (framebufferSupported)
    {
        switch (framebufferType)
        {
            case BASE:
                GL30.glRenderbufferStorage(target, internalFormat, width, height);
                break;

            case ARB:
                ARBFramebufferObject.glRenderbufferStorage(target, internalFormat, width, height);
                break;

            case EXT:
                EXTFramebufferObject.glRenderbufferStorageEXT(target, internalFormat, width, height);
        }
    }
}
 
開發者ID:sudofox,項目名稱:Backmemed,代碼行數:20,代碼來源:OpenGlHelper.java

示例3: glRenderbufferStorage

import org.lwjgl.opengl.GL30; //導入方法依賴的package包/類
public static void glRenderbufferStorage(int target, int internalFormat, int width, int height)
{
    if (framebufferSupported)
    {
        switch (framebufferType)
        {
            case BASE:
                GL30.glRenderbufferStorage(target, internalFormat, width, height);
                break;
            case ARB:
                ARBFramebufferObject.glRenderbufferStorage(target, internalFormat, width, height);
                break;
            case EXT:
                EXTFramebufferObject.glRenderbufferStorageEXT(target, internalFormat, width, height);
        }
    }
}
 
開發者ID:F1r3w477,項目名稱:CustomWorldGen,代碼行數:18,代碼來源:OpenGlHelper.java

示例4: attachDepthBuffer

import org.lwjgl.opengl.GL30; //導入方法依賴的package包/類
public void attachDepthBuffer() {
bind();

dboid = GL30.glGenRenderbuffers();
GL30.glBindRenderbuffer(GL30.GL_RENDERBUFFER, dboid);
GL30.glRenderbufferStorage(GL30.GL_RENDERBUFFER, GL11.GL_DEPTH_COMPONENT, width, height);

GL30.glFramebufferRenderbuffer(GL30.GL_FRAMEBUFFER, GL30.GL_DEPTH_ATTACHMENT, GL30.GL_RENDERBUFFER, dboid);
unbind();
   }
 
開發者ID:camilne,項目名稱:open-world,代碼行數:11,代碼來源:FrameBuffer.java

示例5: attachDepthStencilBuffer

import org.lwjgl.opengl.GL30; //導入方法依賴的package包/類
public void attachDepthStencilBuffer() {
bind();

dboid = GL30.glGenRenderbuffers();
GL30.glBindRenderbuffer(GL30.GL_RENDERBUFFER, dboid);
GL30.glRenderbufferStorage(GL30.GL_RENDERBUFFER, GL30.GL_DEPTH24_STENCIL8, width, height);
GL30.glBindRenderbuffer(GL30.GL_RENDERBUFFER, 0);

GL30.glFramebufferRenderbuffer(GL30.GL_FRAMEBUFFER, GL30.GL_DEPTH_STENCIL_ATTACHMENT, GL30.GL_RENDERBUFFER, dboid);
unbind();
   }
 
開發者ID:camilne,項目名稱:open-world,代碼行數:12,代碼來源:FrameBuffer.java

示例6: createDepthBufferAttachment

import org.lwjgl.opengl.GL30; //導入方法依賴的package包/類
private int createDepthBufferAttachment(int width, int height) {
    int depthBuffer = GL30.glGenRenderbuffers();
    GL30.glBindRenderbuffer(GL30.GL_RENDERBUFFER, depthBuffer);
    GL30.glRenderbufferStorage(GL30.GL_RENDERBUFFER, GL11.GL_DEPTH_COMPONENT, width,
            height);
    GL30.glFramebufferRenderbuffer(GL30.GL_FRAMEBUFFER, GL30.GL_DEPTH_ATTACHMENT,
            GL30.GL_RENDERBUFFER, depthBuffer);
    return depthBuffer;
}
 
開發者ID:TheThinMatrix,項目名稱:OcclusionQueries,代碼行數:10,代碼來源:WaterFrameBuffers.java

示例7: renderEnvironmentMap

import org.lwjgl.opengl.GL30; //導入方法依賴的package包/類
public static void renderEnvironmentMap(Texture cubeMap, Scene scene, Vector3f center, MasterRenderer renderer) {

        CubeMapCamera camera = new CubeMapCamera(center);

        //create fbo
        int fbo = GL30.glGenFramebuffers();
        GL30.glBindFramebuffer(GL30.GL_FRAMEBUFFER, fbo);
        GL11.glDrawBuffer(GL30.GL_COLOR_ATTACHMENT0);

        //attach depth buffer
        int depthBuffer = GL30.glGenRenderbuffers();
        GL30.glBindRenderbuffer(GL30.GL_RENDERBUFFER, depthBuffer);
        GL30.glRenderbufferStorage(GL30.GL_RENDERBUFFER, GL14.GL_DEPTH_COMPONENT24, cubeMap.size, cubeMap.size);
        GL30.glFramebufferRenderbuffer(GL30.GL_FRAMEBUFFER, GL30.GL_DEPTH_ATTACHMENT, GL30.GL_RENDERBUFFER,
                depthBuffer);

        //indicate that we want to render to the entire face
        GL11.glViewport(0, 0, cubeMap.size, cubeMap.size);

        //loop faces
        for (int i = 0; i < 6; i++) {

            //attach face to fbo as color attachment 0
            GL30.glFramebufferTexture2D(GL30.GL_FRAMEBUFFER, GL30.GL_COLOR_ATTACHMENT0,
                    GL13.GL_TEXTURE_CUBE_MAP_POSITIVE_X + i, cubeMap.textureId, 0);
            
            //point camera in the right direction
            camera.switchToFace(i);
            
            //render scene to fbo, and therefore to the current face of the cubemap
            renderer.renderLowQualityScene(scene, camera);

        }
        
        //stop rendering to fbo
        GL30.glBindFramebuffer(GL30.GL_FRAMEBUFFER, 0);
        GL11.glViewport(0, 0, Display.getWidth(), Display.getHeight());
        
        //delete fbo
        GL30.glDeleteRenderbuffers(depthBuffer);
        GL30.glDeleteFramebuffers(fbo);
        
        cubeMap.bindToUnit(0);
        GL30.glGenerateMipmap(GL13.GL_TEXTURE_CUBE_MAP);

    }
 
開發者ID:TheThinMatrix,項目名稱:OcclusionQueries,代碼行數:47,代碼來源:EnviroMapRenderer.java


注:本文中的org.lwjgl.opengl.GL30.glRenderbufferStorage方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。