Heuristic42
Blog
Opengl
Meta
Rendering
2
created
Jan 17 at 21:12
Embedding GDB pretty printers, just like natvis
Pretty printers are awesome, but the setup can be a real pain. …
–
pknowles
comment
Jan 14 at 15:46
Matrices
[deleted]
–
anonymous
comment
Jan 13 at 16:05
Making a real EMF Reader
All good/my bad. A half implemented feature that I really shoul…
–
pknowles
comment
Jan 13 at 16:03
Making a real EMF Reader
I don't have a circuit diagram sorry. The LEDs are all on separ…
–
pknowles
comment
Jan 9 at 8:07
Making a real EMF Reader
а есть подробные схемы что к чему подключать и куда припаивать…
–
anonymous
comment
Jan 5 at 2:00
Matrices
[deleted]
–
anonymous
comment
Dec 15 '24
Matrices
[deleted]
–
anonymous
comment
Nov 27 '24
DerBard: Custom Split Mechanical Keyboard Prototype
hello
–
anonymous
comment
Nov 19 '24
Matrices
[deleted]
–
anonymous
created
Oct 20 '24
Iterators: pointers vs cursors
You're already doing both of these by hand. This post emphaisze…
–
pknowles
comment
Oct 10 '24
Matrices
[deleted]
–
anonymous
comment
Oct 4 '24
Matrices
[deleted]
–
anonymous
comment
Sep 30 '24
Matrices
[deleted]
–
anonymous
comment
Sep 23 '24
Matrices
[deleted]
–
anonymous
comment
Sep 21 '24
Contributing
I kind of predicted what was bound to happen when my favourite …
–
anonymous
comment
Sep 7 '24
Route contention when running docker and a VPN
Thank you for this. Between this and the overwriting of iptabl…
–
anonymous
comment
Sep 6 '24
Making a real EMF Reader
Sorry for the random quoted text comments. I am one of those p…
–
anonymous
comment
Sep 6 '24
Making a real EMF Reader
[deleted]
–
anonymous
comment
Sep 6 '24
Making a real EMF Reader
[deleted]
–
anonymous
comment
Aug 20 '24
Matrices
[deleted]
–
anonymous
comment
Aug 11 '24
Matrices
[deleted]
–
anonymous
edited
Jun 8 '24
Rethinking writing files with memory mapping and C++
This post introduces the motivation behind the [decodless C++ o…
–
admin
created
Jun 8 '24
Rethinking writing files with memory mapping and C++
This post introduces the motivation behind the [decodless C++ o…
–
pknowles
comment
Jun 5 '24
Contributing
[deleted]
–
anonymous
…
View All
Log in
3D Rendering (Computer Graphics)
leave this field blank to prove your humanity
Slug
*
A URL path component
Parent page
<root>
rendering/:Article2:3D Rendering (Computer Graphics)
--- rendering/cameras/:Article11:Cameras
--- rendering/matrices/:Article12:Matrices
------ rendering/matrices/projection/:Article14:Projection Matrix
--- rendering/vectors/:Article13:Vectors
--- rendering/geometry/:Article62:3D Geometry
------ rendering/geometry/triangle_meshes/:None
--- rendering/shading/:Article64:Shading
------ rendering/shading/transparency/:Article70:Transparency and Alpha Blending
--- rendering/lights/:Article65:Lights
--- rendering/rasterization/:None
------ rendering/rasterization/deepimage/:Article72:Deep Image
--- rendering/shadows/:Article67:Shadows
--- rendering/spaces/:Article68:Vector Spaces
------ rendering/spaces/tangent_space/:Article69:Tangent Space
------ rendering/spaces/clip_space/:Article89:Clip Space
--- rendering/rotations/:None
--- rendering/images/:Article74:<unset>:Images
------ rendering/images/mipmapping/:Article75:<unset>:Mipmapping
--- rendering/materials/:None
opengl/:Article3:OpenGL Tutorials
--- opengl/oit/:Article7:Order Independent Transparency (OIT)
--- opengl/framebuffer/:Article71:The Framebuffer
meta/:Article4:Pages About This Site
--- meta/contribute/:Article5:Contributing
--- meta/bugs/:Article9:Bugs
--- meta/about/:Article10:Why does this website exist?
The parent page this belongs to.
Article title
*
Article revisions must have a non-empty title
Article body
*
Rendering in 3D computer graphics is computing a 2D image from a 3D model. This computation is physically based, to varying degree, but commonly models a camera and some form of lighting effects to be somewhat realistic and create more relatable and familiar images, even in cases of non-photorealistic rendering. To compute an image, virtual descriptions of objects or light interacting material is lit and a virtual camera defines a projection for the final image to be rendered. The light contribution from the scene is then computed for each pixel. For efficiency, this can be partially done forwards or backwards. When raytracing, possible light paths from pixels are projected through the camera and into the scene, often computing secondary light bounces too. Rasterization is an efficient way to compute the first pixel--scene intersections by projecting geometry into the image. This first intersection is fundamental to all rendering methods. Photon mapping and radiosity trace light paths from the light and into the scene for more efficient secondary lighting effects such as indirect illumination, volumetric lighting and caustics. Shadow mapping and reflective shadow maps are similarly computed from the light’s point of view. A number of methods exist to describe the geometry of 3D objects but the most widely used in real-time applications is polygons. In particular triangles, forming triangle meshes, are simple and have some convenient attributes. Other object descriptions include point clouds, lines, voxels, and higher order geometry such as freeform surfaces and isosurfaces. Light sources emit light and may be just as complex as any other 3D geometry in the scene. For example, geometry surfaces may be defined to glow, or the gaseous volume of a flame may emit light. Indirect light bouncing off geometry in the scene may be considered a light source. However, light sources are typically simpler, such as points, for faster computation. To light geometry it also needs materials that define how light interacts with its surfaces or volume before entering the virtual camera. Primarily, the virtual camera must define a projection, which creates a mapping between the virtual 3D world and 2D image coordinates. A position and orientation in relation to objects in the scene are also common. The following pages continue these concepts in more detail. - [Geometry](/12/rendering/geometry/) (Triangle Meshes, etc.) - [Cameras](/8/rendering/cameras/) (Model, View, Projection Matrices) - Pixel--Geometry Intersection Testing - Rasterization - Ray Tracing - [Shading](/14/rendering/shading/) (Lights and Materials)
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