Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 29 Apr 2002
Online Last Active Today, 03:49 AM

Topics I've Started

Handling Tall Shadow Casters Culled By View Volume

19 December 2014 - 03:47 AM

I have some tall objects, with a sort of third person camera that looks down toward the ground. When tall nearby objects are culled by the camera, their shadows pop out of the scene.

I thought about extending the objects bounds based on the direction of the light and the angle, a sort of 'bound the shadow' idea, but it would blow up if the light source (sun) went down and became parallel with the ground, the bound would extend across the map. It could work but has edge cases.

Specifically for out door directional light sources, any suggestions for handling this situation? Inflate the view volume? A second view volume for culling 'tall' objects?

Post process order?

22 July 2014 - 08:35 PM

Wondering what people think, or what you do yourself and why, stick any I may have missed in.


Screen space reflections - havent done them, not sure where, close to start?...
Eye Adaptation - builds info probably done early?
Lens flare - get it in before bloom?

Bloom - before dof ??
DOF - you want the bloom 'under' it?

FXAA - you want to AA toward then end right?

Color Correction - want final color, before correcting...

Tone Mapping - fit for ldr

Gamma Correction - correct for screen output

Vignette - because its just black on top of everything else...

3rd Party DLLs / 32bit64bit / Directories / Loading

12 June 2014 - 03:57 PM

So I just got a debug x64 build to compile after building 64bit versions of all 3rd party libs. Im still running the 32bit exe mainly but now I have 64bit exe in the same dir.

The problem is I have a lot of debug/release/32bit/64bit dlls all sitting next to the exe's. Id like to move them to a sub dir in my working folder and spearate the 32bit and 64bit.

Also some libs like libpng spit out the same dll name for both 32bit and 64bit, so they cant be in the same folder. While some libs like physx have some dlls with _x64 _x86 appended, while others have matching 32bit 64bit names. Im not sure of a sane way to go about organizing this any suggestions?

GL3.3 Mixed FBO Resolutions Problem?

24 April 2014 - 01:29 AM

I have an FBO with 5 textures (depth and color 0,1,2,3) attached all the same size. Everything renders fine.


I attach another color texture, but this one is half res, no FBO completeness errors, nothing, but now rendering to just color attachment 0 and 1 which worked before, only renders to the lower left quarter of the first draw buffer, the second draw buffer still renders fine...


Ive only attached the extra texture to the FBO, I havent set it up for use using glDrawBuffers() or glClearBuffer*().


Now Ive read mixed resolution FBOs will only render (use?) the area of the smallest/minimum attached texture, thats fine, I can understand that if you render out to mixed res targets it would only fill the smallest of the attached images.


But I simply created a half texture and attached it to the FBO. glDrawBuffers() calls are still only targeting color0 and color1 for output. Yet it seems to think the full res color0 is half the size. Is this the correct behavior? What good is supporting mixed resolutions if smaller image use cant be managed by glDrawBuffers()?


Same result on NV as AMD.

Lens flare position

23 February 2014 - 06:20 PM

Im going to do lens flares but Im not sure how to handle culling the reference point. Although its a deferred renderer, more control over placement is wanted so doing it purely as a post effect on the bright parts probably isnt an option.

I need to have a set of flare quads (rects...) drawn at specific locations offset from the specified location in 3d, but I need the entire effect (the quad set) to pop on and off depending on the visibility of the flares 3d reference point.


In short, I need to draw or not draw the flare quad set based on whether a single 3d position is culled or not so it pops around occluder edges..... What would be a good way to do that?


I read one way, where the effect was drawn whether or not the results of a single pixel depth read back was visible or not (ugh, depth read)

Ive seen occlusion queries suggested, but seems like over kill.

I was thinking maybe shooting a ray from the 3d flare position to the near plane through the scene and seeing if any triangles are hit (but then theres the triangle picking overhead.....)

Point sprites, although I read they cull by the center (which is good in this case), it seems some hardware might not do this, and if it did, only the first flare quad would cull but the others that belong to it would escape around the occluder.


So Im not really sure what to do.