This page is about testing the upper limits of PixelMachine with lots of objects, reflections, effects, and at very high resolutions.
Needs More Spheres!
|
A stress test with 4225 spheres. All spheres can potentially reflect all other spheres. Limit set at 200 bounces.
- Resolution: 1280 by 960 (1.2MegaPixel)
- Rendering Time: 1 hour on 3.4 GHz Pentium 4
- This was sped up by placing the spheres in the hit-detection cubes
- Also slowed down by some glitches in the reflection code -- where you see solid black areas
|
Errors in red
|
Similar to the above but from an angle where the reflection code glitch shows up a lot. The red shows where a ray couldn't stop bouncing around. Obviously that shouldn't be happening so much.
|
Photon Not-Mapping
|
This image was rendered using a similar method to "photon mapping" but without the map. Source code is coming soon, I have to clean it up.
- Resolution: 800 by 600
- Photon count: 300 Million
- Rendering Time: 21 minutes on Athlon 64 X2 5000+
- Photons were shot from a rectangular lightsource on the ceiling (not visible)
- Diffuse lighting is too weak in this image
|
Photon Not-Mapping w/Diffuse
|
Unmapped photons with better diffuse lighting.
- Resolution: 800 by 600
- Photon count: 3 Million
- Rendering Time: ~40 seconds on Athlon 64 X2 5000+
- Photons were shot from a rectangular lightsource on the ceiling (not visible)
- Diffuse lighting more apparent here
|
1 Billion Photons
|
This really isn't all that stressful. An increase in photon count increases rendering time linearly. There is no additional memory requirement for more photons either.
- Resolution: 800 by 600
- Photon count: 1 Billion
- Rendering Time: ~1 hour on Athlon 64 X2 5000+
- Same light source as previous
- Accidentally rendered in black and white :(
- The line artifacts are due to the not-so-randomness of rand()
|
Unfair Comparison
|
Here is a comparison between the simple ray-tracing and the new photon mode. Not quite a fair comparison because the lighting is directional in the photon mode.
- Resolution: 800 by 1200 (2x600)
- Photon count: 100 Million
|
2 Billion
|
Had to do it. A 2 billion photon shot. Billions of photons causes the dominant color to drown out everything else. That's why it's red. This needs to be fixed.
- Resolution: 800 by 600
- Photon count: 2 Billion
- Rendering Time: ~8 hours on Athlon 64 X2 5000+
- Light source is finally directly visible!
|
Caustics!
|
Caustics is when light is bent, or focused as it enters and exits materials like glass, water, and diamond. Shine light thru a glass of water and you'll see it.
- Resolution: 800 by 600
- Photon count: 1 Billion
- Rendering Time: ~5 hours on Athlon 64 X2 5000+
- Sphere Material: Glass (Refraction Constant = 1.50)
|
Mersenne Twist
|
Switched to Mersenne Twister random number generation. Most random number generators are crap. With a good one (MT) we can get much better quality with fewer photons because they don't clump together.
- Resolution: 1920 by 1200
- Photon count: 1 Billion
- Rendering Time: ~2.5 hours on Intel Quadcore 3.0 GHz
- Sphere Material: Reflective/Metal
|