Heuristic42
Blog
Opengl
Meta
Rendering
1
comment
Apr 19 at 8:24
Matrices
Please have whoever is in charge of the business call me at the…
–
anonymous
comment
Apr 12 at 21:25
Matrices
Hey there! Looking to save on energy costs? Look no further! …
–
anonymous
comment
Apr 5 at 6:43
Matrices
If you look closely in the Bible, there are very specific warni…
–
anonymous
comment
Mar 27 at 14:19
Matrices
Are you still in business? heuristic42.com
–
anonymous
comment
Mar 25 at 1:59
Matrices
Hey There I tried calling your phone number but it was unsuc…
–
anonymous
comment
Mar 5 at 12:39
Matrices
Hi, I hope this message finds you well. I'm reaching out to …
–
anonymous
comment
Feb 7 at 2:45
Microsoft Natural Ergonomic 4000 Replacement
Thank you so much for sharing your thoughts here, it tells me e…
–
anonymous
comment
Jan 28 at 20:31
Microsoft Natural Ergonomic 4000 Replacement
Oh man, I feel this post. Not sure if you've seen the "new" new…
–
anonymous
comment
Jan 25 at 9:06
Matrices
Hi, Mark here. If it is ok for your business processes to be…
–
anonymous
comment
Jan 20 at 0:11
Matrices
[deleted]
–
anonymous
reverted
Dec 21 '23
Route contention when running docker and a VPN
updating to latest
–
admin
edited
Dec 21 '23
Route contention when running docker and a VPN
Things have improved since the original post. It may have been …
–
pknowles
edited
Dec 21 '23
Route contention when running docker and a VPN
Things have improved since the original post. It may have been …
–
anonymous
edited
Dec 21 '23
Route contention when running docker and a VPN
This have improved since the original post. It may have been up…
–
anonymous
comment
Nov 23 '23
Matrices
[deleted]
–
anonymous
edited
Sep 17 '23
Writing custom C++ containers, iterators and value references
Generic containers are awesome. 1. The effort required to wr…
–
pknowles
created
Sep 17 '23
Writing custom C++ containers, iterators and value references
Generic containers are awesome. 1. The effort required to wr…
–
pknowles
comment
Sep 15 '23
DerBard: Custom Split Mechanical Keyboard Prototype
Hey. Thanks for your interest! I've uploaded the files here, bu…
–
pknowles
comment
Sep 13 '23
DerBard: Custom Split Mechanical Keyboard Prototype
Hi! Is it possible to get some models so I can also make it?
–
anonymous
edited
Aug 14 '23
On docker stealing routes and breaking the internet
Boy this is frustrating. The internet just doesn't work with do…
–
pknowles
edited
Aug 14 '23
On docker stealing routes and breaking the internet
Boy this is frustrating. The internet just doesn't work with do…
–
pknowles
created
Aug 14 '23
On docker stealing routes and breaking the internet
Boy this is frustrating. The internet just doesn't work with do…
–
pknowles
comment
Jul 13 '23
Matrices
[deleted]
–
anonymous
comment
Jul 5 '23
Matrices
[deleted]
–
anonymous
…
View All
Log in
Deep Image
leave this field blank to prove your humanity
Slug
*
A URL path component
Parent page
<root>
3D Rendering (Computer Graphics)
--- Cameras
--- Matrices
------ Projection Matrix
--- Vectors
--- 3D Geometry
------ triangle_meshes
--- Shading
------ Transparency and Alpha Blending
--- Lights
--- rasterization
------ Deep Image
--- Shadows
--- Vector Spaces
------ Tangent Space
------ Clip Space
--- rotations
--- images
------ mipmapping
--- materials
OpenGL Tutorials
--- Order Independent Transparency (OIT)
--- The Framebuffer
Pages About This Site
--- Contributing
--- Bugs
--- Why does this website exist?
The parent page this belongs to.
Article title
*
Article revisions must have a non-empty title
Article body
*
An image is the result of [rendering](/1/rendering/). The rendering process is often seen as the main part of the work. Historically, that may have been true --- getting the image is certainly the first stage, but once that job is done the result can be improved. *Post processing* is further work done after rendering. Images can be combined with other images or used as input in further rendering passes. For example, shadow mapping, deferred shading and a whole range of image space techniques such as depth of field, ambient occlusion and even further rendering called *image based rendering*. Colour is still the desired end result, but for post processing and intermediate results more information can be very useful. For example, an image may store [material](/26/rendering/materials/) information or surface normals to be used in further lighting calculations. Regular, flat images have one value per pixel. A *deep image* on the other hand is still a 2D grid of pixels, but each pixel, or *deep pixel*, can have multiple and varying numbers of values (possibly zero). This provides more complete information for further processing. This should not be confused with a [deep framebuffer](/21/opengl/framebuffer/), where all pixels have the same number of different attributes forming a *value*. Color and depth form typical values in a deep image, providing a discretized geometry representation. With the original projection used to create the image the exact position of the surface samples are known. These surface samples have a direct relation to the concept of *fragments* from rasterization. Deep images are increasingly being used in real-time graphics. The A-buffer has informally become a common term for GPU constructed deep images, and while there are similarities the original purpose was storing micro-polygons for antialiasing in the REYES system. A deep image is significant in a rendering pipeline in that it provides a complete state where all fragments are available instead of processing and discarding them on the fly. Without this state, interactions between fragments are limited by one-at-a-time processing and, for rasterization, unknown rendering order. In particular for rasterization, complex "multi-fragment effects" such as transparency normally require geometry ordering and guaranteeing correct results for general cases is often impractically slow. * This page is taken largely from [Real-Time Deep Image Rendering and Order Independent Transparency](/users/4/pknowles/#research).
Toggle Preview
Edit message
*
A description of the changes made
Discard Draft
Save Draft
leave this field blank to prove your humanity
Flag
the thing you clicked
for moderator attention.
Reason choice:
Spam, promoting, advertising without disclosure
Rude, inappropriate, generally offensive
Too arrogant or demeaning to others
Other
Reason:
The reason for raising the flag
Error