diff --git a/js/core/fbo-util.js b/js/core/fbo-util.js index 42abe4c..32f745a 100644 --- a/js/core/fbo-util.js +++ b/js/core/fbo-util.js @@ -124,7 +124,8 @@ CIS565WEBGLCORE.createFBO = function(){ // Set up GBuffer Normal fbo[FBO_GBUFFER_NORMAL] = gl.createFramebuffer(); - gl.bindFramebuffer(gl.FRAMEBUFFER, fbo[FBO_GBUFFER_NORMAL]); + gl.bindFramebuffer(gl.FRAMEBUFFER, fbo[FBO_GBUFFER_NORMAL]); + gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.TEXTURE_2D, depthTex, 0); gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, textures[1], 0); FBOstatus = gl.checkFramebufferStatus(gl.FRAMEBUFFER); @@ -138,6 +139,7 @@ CIS565WEBGLCORE.createFBO = function(){ // Set up GBuffer Color fbo[FBO_GBUFFER_COLOR] = gl.createFramebuffer(); gl.bindFramebuffer(gl.FRAMEBUFFER, fbo[FBO_GBUFFER_COLOR]); + gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.TEXTURE_2D, depthTex, 0); gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, textures[2], 0); FBOstatus = gl.checkFramebufferStatus(gl.FRAMEBUFFER); diff --git a/js/main.js b/js/main.js index 4140ae1..bf701d9 100644 --- a/js/main.js +++ b/js/main.js @@ -170,12 +170,13 @@ var renderMulti = function () { drawModel(posProg, 1); - gl.disable(gl.DEPTH_TEST); +// gl.disable(gl.DEPTH_TEST); fbo.unbind(gl); gl.useProgram(null); fbo.bind(gl, FBO_GBUFFER_NORMAL); - gl.clear(gl.COLOR_BUFFER_BIT); + gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT); + gl.enable(gl.DEPTH_TEST); gl.useProgram(normProg.ref()); @@ -193,7 +194,8 @@ var renderMulti = function () { fbo.unbind(gl); fbo.bind(gl, FBO_GBUFFER_COLOR); - gl.clear(gl.COLOR_BUFFER_BIT); + gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT); + gl.enable(gl.DEPTH_TEST); gl.useProgram(colorProg.ref()); @@ -346,7 +348,7 @@ var initObjs = function () { objloader = CIS565WEBGLCORE.createOBJLoader(); // Load the OBJ from file - objloader.loadFromFile(gl, "assets/models/suzanne.obj", null); + objloader.loadFromFile(gl, "assets/models/crytek-sponza/sponza.obj", null); // Add callback to upload the vertices once loaded objloader.addCallback(function () {