Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 22 Feb 2000
Online Last Active Today, 09:08 PM

Posts I've Made

In Topic: Bloom Down\Up Scaling (staying on pixel center)

24 December 2014 - 01:25 PM

Okay so I was able to mitigate this issue by:

- Summing 4 taps on the first 2 down samples

- Then blurring on the subsequent down samples as Hodgman suggested
- Then composting 4 layers of bloom from the various levels (Up sampling the lower resolution ones a few times to mitigate the blockiness)

It actually takes a lot of tweaking to try and get a nice blur...
Does anyone have any advice on how to achieve a good inverse square falloff on the bloom?
So far I'm just tweaking and weighting each composite layer as well as number of iterations and sigma on blur at each layer by eye.

Here's the result from a 1 pixel bloom so far... Not quite as nice as I want but getting there..

In Topic: Bloom Down\Up Scaling (staying on pixel center)

22 December 2014 - 09:18 PM

I just realized that since I'm collapsing essentially 8X8 pixels to 1X1 and then back to 8x8.
If only one pixel in an 8x8 grid was white then when sampling back to full resolution we have lost information about which pixel location in the 8x8 was white.

I wonder what could be done to combat this?


In Topic: UE4 IBL glsl

02 August 2014 - 11:58 PM

Would you guys be able to share some details on how you're filtering your IBL cubemaps?
What roughness are you using at each mip?
What format do you use?

How do you put it all together?



In Topic: Reconstructing Position From Depth Buffer

28 July 2014 - 07:28 PM

Hi BlueSpud,


It's actually quite simple to understand if you think of it this way to retrieve a viewspace coordinate.


- the screen coordinate comes in as 0 to 1 in x and y
- you remap that to -1 to 1 like so.... screencoord.xy * 2 - 1 (migth have to flip the sign of the results depending on API)
- you now have an xy value you can picture as laying on the near plane of your camera....so the z coordinate of the vector is whatever your near plane value is.
- you now have to figure out how to scale the -1 to 1 xy values properly to represent the dimensions of the near plane "quad" in view space... this is easy
- you just use some trig to figure out the width and height of the "quad" at the near plane.... basically it's .... tan(FOV * 0.5) * near
- also you'll have to multiply that by the aspect ratio for x probably.

- now after you do all this you will have calculated a vector from the eye to the near plane.
- you just have to now scale this vector by whatever the depth of that pixel is..... you'll have to account for the ratio of how close your near plane is

basically that's how you think of it... if you draw some pictures you should be able to get it..
in order to recover in another space... it's basically the same... but you move along the axis directions in x/y/z then add the eye position.

In Topic: Ideas for rendering huge vegetation (foliage)

02 June 2014 - 05:22 PM

You may find this recent series of devblog's by Casey Muratori interesting. He goes into detail about his grass planting system. Less about the rendering side of things and more about proper placement of the ground cover itself to get the best coverage with the least amount of geometry. I don't think he goes into anything about LOD.. but it does get you thinking about how to provide the best coverage.


Starts in "Working On The Witness, Part 5" and continues on through his reasoning into part 8 where he has some code for optimal placement.