Jump to content
trs79 hasn't added any contacts yet.
09 July 2013 - 09:22 AM
08 July 2013 - 10:53 AM
Thanks for the responses everyone.
Yeah, I think over-optimization is to blame here, I hate it when that happens. A draw call for each album seems like the way to go
Thanks for the tip about sprites, I had forgotten about those. So it sound sounds like you're also saying to use a draw call per album, but using point sprites instead of quads?
PBO's sound interesting, but unfortunately they don't seem to be supported in GLES 2 that I'm targeting. I wish they were though, sounds like that would be the best way to update the textures
03 April 2012 - 04:15 PM
SH = (roughly/sometimes) Light probes = environment maps = cube maps
- Maps a direction to a color (or any value)
- Light probes can mean SH, which is an approximation and can store blurry stuff. It cannot store sharp (high frequency) details.
- Light probes can also mean environment maps / cube maps. They can handle sharp details.
PRT = Precomputed Global Illumination
- Need to read paper...
- Can store its results in some format... (paper mentions SH)
Irradiance map = filtered map of incoming radiance.
- Time saver.
- For diffuse stuff in image based lighting, you usually sum incoming light for a given direction, with each light 'beam' weighted by its angle. That's your irradiance.
- The summation is expensive, so we precompute a direction -> irradiance map.
- Usually looks like a blurred light probe.
- Stored in environment map, SH, etc...
Also I feel like that unless you're reading a paper, the terms 'SH', 'light probe', 'environment map', 'irradiance map' usually are used interchangeably.
Spherical harmonics refers solely to the math/concepts behind storage, PRT is just the idea of calculating how light bounces around ahead of time. Technically speaking, boring old Quake 2 lightmaps are just as much PRT as are the fancypants spherical harmonics stuff that's in vogue today.
03 April 2012 - 12:39 AM
They're not using PRT in Unity, nor is PRT particularly popular for light probes in general.
If you're just starting out with light probes, then you can implement them like this:
1. Pick your probe locations throughout the scene. Easiest way is a 3D grid.
2. For each probe location render an cubemap by rendering in all 6 directions
3. Convert the cubemap to SH (you can use the D3DX utility functions for this if you'd like, but it's not too hard to do on your own)
Then at runtime you just lookup and interpolate the probes, and look up the irradiance in the direction of the normal by performing an SH dot product (just make sure that you include the cosine kernel). This will give you indirect lighting, and you can add in direct lighting on top of this.
20 January 2012 - 10:38 PM
GameDev.net™, the GameDev.net logo, and GDNet™ are trademarks of GameDev.net, LLC.