The name for a class of rendering technique where geometry and material properties are explicitly separated from the lighting computations. This is done by rendering the material properties of various objects into several buffers, and then using passes over those "g-buffers" to do lighting ...

learn more… | top users | synonyms

31
votes
2answers
6k views

What is deferred rendering?

I've heard about deferred rendering and how using it can allow for "lots" of lights in a scene without a huge performance hit, but what is it and (from a high level) how is it implemented?
14
votes
2answers
2k views

What are the common rendering optimization techniques for the geometry pass in a deferred shading renderer? [closed]

I have been developing a game engine using OpenGL 3 and C++ (and glfw for window management). I have advanced so far, got most of the things done except sound entities and optimizations. The engine ...
11
votes
2answers
1k views

Is Deferred Rendering The Future?

Is deferred rendering the future of real-time 3d rendering on pc hardware (at least until raytracing becomes feasible)? I'm aware of the benefits (lots of lights, less state changes) and also trouble ...
11
votes
2answers
1k views

Projective texture and deferred lighting

In my previous question, I asked whether it is possible to do projective texturing with deferred lighting. Now (more than half a year later) I have a problem with my implementation of the same thing. ...
10
votes
2answers
1k views

Dual paraboloid point light shadows in deferred lighting setup

I've been playing around with this tutorial/sample code that demonstrates a simple implementation of light-pre-pass, which is a type of deferred lighting setup. I'm in the process of implementing ...
9
votes
3answers
1k views

Deferred shading - how to combine multiple lights?

I'm starting out with GLSL and I've implemented simple deferred shading that outputs G-buffer with positions, normals and albedo. I've also written a simple point light shader. Now I draw a sphere ...
9
votes
1answer
3k views

Game Engine Design – Ubershader - Shader management design

I want to implement a flexible Ubershader system (with deferred shading). My current idea is to create shaders out of modules, which deal with certain features (FlatTexture, BumpTexture, Displacement ...
9
votes
2answers
1k views

Deferred tiled shading, tile frusta calculation in OpenGL

I'm trying to do deferred tiled shading in OpenGL using the compute shader but I have hit a snag when trying to create the frustum for each tile. I'm using AMD's Forward+ demo (written in D3D) as a ...
9
votes
1answer
435 views

Deferred decals normal problem

I've been working on a deferred decal system. So far I have finished the projection part, meaning I can click something in the scene and it will properly project a decal onto the surface of the ...
8
votes
1answer
603 views

Why is it Important to have render targets with the same bit size?

I am currently thinking of what type of GBuffer I'll need for deferred shading, hence I tried also to document myself online about the most common ones and their format. Most of the GBuffer that ...
7
votes
2answers
394 views

How many rendering passes is “normal”?

I've been implementing John Chapman's method for SSAO (an excellent tutorial by the way), and I've completed it all minus the final part: blurring it. I believe this is what the entire process should ...
7
votes
1answer
1k views

Not getting desired results with SSAO implementation

After having implemented deferred rendering, I tried my luck with a SSAO implementation using this Tutorial. Unfortunately, I'm not getting anything that looks like SSAO, you can see my result below. ...
7
votes
1answer
254 views

Optimize state changes within a render queue

I am refactoring some parts of the game engine I am working on. This engine is made in C# with XNA. The part I have trouble with is shader/material and the render queue. In the new version I will ...
6
votes
1answer
604 views

How do I reconstruct depth in deferred rendering using an orthographic projection?

I've been trying to get my world space position of my pixel but I'm missing something. I'm using a orthographic view for a 2.5d game. My depth is linear and this is my code. float3 lightPos = ...
5
votes
2answers
745 views

How to deal with large depth buffer values due to extreme distances

Alright, this is semi-related to my last question here So I've got an really big coordinate system and need to handle rendering large astral bodies from extreme distances. My current approach ...
5
votes
1answer
793 views

deferred rendering and point light radius

I use a common attenuation equation for point lights: attenuation = 1 / kc + kl * d + kq * d^2. I use deferred rendering so I need to know a light radius. An example light has following intensity: ...
5
votes
3answers
1k views

Multiple render targets and gamma correctness in Direct3D9

Let's say in a deferred renderer when building your G-Buffer you're going to render texture color, normals, depth and whatever else to your multiple render targets at once. Now if you want to have a ...
4
votes
3answers
346 views

How to skip the sky in lighting shaders?

I recently implemented a sky in my deferred rendered game. It is a procedurally calculated sphere with a texture applied to it. Unfortunately all lighting shaders (light sources, ambient occlusion) ...
4
votes
2answers
129 views

When to apply AA as post?

I'm working with a deferred shading technique. I have diffuse, normal and depth buffers, which I combine for the final scene composition. Where and when exactly do I apply an anti-aliasing pass (such ...
4
votes
2answers
577 views

Deferred lighting and projective texturing?

Is posible to use this technique with deferred lighting?
4
votes
1answer
205 views

Multiple render targets: Output target format performance questions

This is probably API independent (more dependent on hardware implementation), but just in case, I'm using OpenGL. The question is restricted to PC hardware. I have a couple of questions concerning ...
4
votes
2answers
617 views

Deferred contexts and inheriting state from the immediate context

I took my first stab at using deferred contexts in DirectX 11 today. Basically, I created my deferred context using CreateDeferredContext() and then drew a simple triangle strip with it. Early on in ...
4
votes
1answer
895 views

Deferred Rendering With Diffuse,Specular, and Normal maps

I have been reading up on deferred rendering and I am trying to implement a renderer using the Sponza atrium model, which can be found here, as my sandbox.Note I am also using OpenGL 3.3 and GLSL. I ...
4
votes
0answers
1k views

OpenGL problem with FBO integer texture and color attachment [closed]

In my simple renderer, I have 2 FBOs one that contains diffuse, normals, instance ID and depth in that order and one that I use store the ssao result. The textures I use for the first FBO are RGB8, ...
3
votes
1answer
383 views

What is deferred lighting?

There is plenty of information on what deferred rendering is but there is a lack when it comes to deferred lighting and the information that there is there is not clear. My question is simple, what ...
3
votes
1answer
500 views

how to organize rendering

I use a deferred rendering. During g-buffer stage my rendering loop for a sponza model (obj format) looks like this: int i = 0; int sum = 0; map<string, mtlItem *>::const_iterator itrEnd = ...
3
votes
1answer
2k views

Deferred Rendering and Normal Mapping

I'm working on a deferred renderer and need a bit of help getting normal maps working. What I've been doing with them so far is just multiplying the normal texture with the object normals ...
3
votes
1answer
2k views

Why can't I write to my render targets?

Alright, been working on setting up my first deferred rendering attempt using a light prepass technique in Direct3D 11. Anywho, I've been having problems understanding and using render targets. Never ...
3
votes
1answer
795 views

How are lights rendered as geometry in deferred shading?

So my problem is that: At the last stage of implementing this I had problem with this sentence, " the lights in the scene are rendered as geometry". What does this mean? Why do I store depth info for ...
3
votes
1answer
119 views

Shadow mapping. I don't understand what to do after creating the depth texture

I'm taking an intro to computer graphics course, so this is something we haven't touched on. I am reading this tutorial ...
3
votes
1answer
127 views

MSAA deferred implementation issue

I recently implemented MSAA in my deferred renderer, it looks good but I just got a feeling I might have done it wrong. Here is what for example the directional light fragment shader looks like: ...
3
votes
2answers
1k views

Unity - Part of the sprite is covered in shadow

I have a sprite with Transparent/Cutout/Diffuse shader. Recieving shadows is turned on in SpriteRenderer. The light is a pointlight and I am using deffered rendering path. However when I am above or ...
3
votes
1answer
290 views

Blank texture in Frame Buffer Object in Deferred Rendering

I'm running the tutorial 35 from olgdev.atspace.co.uk, and it's so strange that the result is a blank screen. This tutorial is performing the first step of Deferred Shading, which means decoupling of ...
3
votes
1answer
438 views

Deferred rendering and gaussian blur - artifacts

I compute Gaussian blur in two passes (horizontally and vertically). Shaders look like this: Horizontal blur - fragment shader: #version 420 layout (location = 0) out vec4 outColor; in vec2 ...
3
votes
1answer
353 views

XNA Deferred Shading, Replace BasicEffect

I have implemented deferred shading in my XNA 4.0 project, meaning that I need all objects to start out with the same shader "RenderGBuffer.fx". How can I use a custom Content Processor to: Not load ...
3
votes
1answer
950 views

Deferred rendering with VSM - Scaling light depth loses moments

I'm calculating my shadow term using a VSM method. This works correctly when using forward rendered lights but fails with deferred lights. // Shadow term (1 = no shadow) float shadow = 1; // [Light ...
3
votes
0answers
135 views

Variance shadow maps don't want to render properly

I've implemented VSM (and also ESM) in my engine but results are for me not as I expected and saw in many examples published on network. I set filtering of shadow maps to GL_LINEAR but when I compare ...
3
votes
1answer
85 views

When using deferred rendering technique, what space should my normals be? Why?

I'm implementing a deferred shading technique and the following question arose: When storing the normals, should I transform to view space, or may I keep them in world space? Why? Will any of the ...
3
votes
0answers
174 views

SSAO Distortion [closed]

I'm currently (attempting) to add SSAO to my engine, except it's...not really work, to say the least. I use a deferred renderer to render my scene. I have four render targets: Albedo, Light, Normal, ...
2
votes
1answer
449 views

Skybox with deferred shading

I've looked at this technique, but it strongly sounds like he has to do some ugly hacks involving branching in his lighting shaders just to correctly draw a skybox. This seem awfully wasteful. How ...
2
votes
1answer
144 views

Can Entities Have Their Own Shader In Deferred Rendering?

Since you need to use the general g-buffer shader to fill g-buffer, how can entities have their own shaders, like giving a box normal mapping feature ? As I remember, you can't use two shaders at the ...
2
votes
1answer
391 views

mixing forward and deferred rendering

Simplified version of my deferred rendering looks like this: bind fbo1 clear color and depth buffers gbuffer stage (gbuffer contains only these pixels which pass a depth test) unbind fbo1 bind fbo2 ...
2
votes
1answer
511 views

Shadow mapping with deffered shading for directional lights - shadow map projection problem

I'm trying to implement shadow mapping to my engine. I started with directional lights because they seemed to be the easiest one, but I was wrong :) I have implemented deferred shading and I retrieve ...
2
votes
1answer
428 views

Unity3D custom camera matrix breaking shadows/lights in deferred rendering

EDIT 1: So it seems this is a common issue with Unity, and it comes from a bug in which custom camera matrices break deferred lighting and shadows. This topic right here talks about it a bit, but the ...
2
votes
1answer
247 views

gbuffer - how to store an integer data

In a gbuffer I store a diffuse color in following texture: glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, NULL); I want to store an integer data which ...
2
votes
1answer
281 views

How to transform a shadow map to camera view?

I'm making a rendering engine as a hobby to learn more about 3D. I have a deferred renderer with the G-buffer (color, normal and depth). I also have a lighting controller that uses only spotlights at ...
2
votes
1answer
858 views

Speed up lighting in deferred shading

I implemented a simple deferred shading renderer. I use 3 G-Buffer for storing position (R32F), normal (G16R16F) and albedo (ARGB8). I use sphere map algorithm to store normals in world space. ...
2
votes
1answer
1k views

Unity3D How too write to the back buffer AFTER the final pass of deferred rendering

I've been using this script and shader from the wiki, and they work wonders; my only problem is using them in deferred rendering. Now, the way this shader works is by writing to the depth buffer to ...
2
votes
0answers
924 views

How can I use the dualforward parameter in my unity shader to use lightmaps and normal maps together? [closed]

I'm using the free version of unity and I would like to combine lightmaps with specularity and normal maps. After doing a -bunch- of research, I've figured out that there doesn't seem to be any easy ...
2
votes
0answers
681 views

XNA 4 Deferred Rendering deforms the model [closed]

I have a problem when rendering a model of my World - when rendered using BasicEffect, it looks just peachy. Problem is when I render it using deferred rendering. See for yourselves: what it looks ...