Most Popular
1500 questions
15
votes
1 answer
OpenGL compatibility, naming conventions and ARB vs EXT
I thought I had formed a general understanding of how OpenGL naming conventions and extensions worked, until I stumbled upon a case that confused me.
Here's my understanding so far:
No suffix -- e.g. glGenBuffers(). This function is a part of the…
ApoorvaJ
- 597
- 1
- 5
- 8
15
votes
1 answer
How can I model distant rain?
Close up, rain can be modeled as transparent balls of water with appropriate motion blur. This seems impractical for large volumes, which would be necessary for scenes of rain in the distance.
At distances for which the human eye cannot resolve…
trichoplax is on Codidact now
- 6,292
- 3
- 23
- 69
15
votes
2 answers
How to Calculate Surface Normals for Generated Geometry
I have a class that generates a 3D shape based on inputs from the calling code. The inputs are things like length, depth, arc, etc. My code generates the geometry perfectly, however I am running into trouble when calculating the surface normals.…
joshwbrick
- 253
- 1
- 2
- 7
15
votes
1 answer
How does state of the art real time hair rendering work?
It is common knowledge that hair simulation and rendering is particularly challenging and in fact rare are the examples in games that propose believable hairs. It is pretty easy to imagine how hard it is to actually simulate the high amount of…
cifz
- 2,528
- 17
- 31
15
votes
2 answers
Problem with definition of BSDF and radiance
When I was reading theory behind physical based rendering I noticed that definition of BSDF and radiance has some problems. For example BSDF of purely specular surfaces is zero almost everywhere and infinite in one point or radiance of directional…
tom
- 466
- 2
- 11
14
votes
1 answer
Confused with PBR implementations
I'm discovering the wonderful world of math and I'm hitting a huge wall with PBR and naming so I have a few questions:
As far as I understand BRDF describe how a material react to light (incoming direct light and reflections). But in "Cook-Torrance"…
newin
- 363
- 2
- 7
14
votes
2 answers
Derivative maps vs. Tangent Space Normal maps
I discovered that some engines use derivative maps instead of tangent space normal maps.
After some reading, it seems to be a really awesome way to replace tangent space normals but are there some disadvantage using them ? Why still continue using…
MaT
- 1,229
- 10
- 21
14
votes
1 answer
Why do GPUs still have rasterizers?
Despite advancements modern GPUs still have fixed rasterizers. Highly customizable, with programmable shaders but nevertheless not fully programmable.
Why is that?
Why can't GPUs be simply massively parallel devices with universal computing units…
zduny
- 377
- 2
- 6
14
votes
2 answers
Programmatically generating vertex normals
I'm working with Kinect face api, it provides an array of vertices and indices for triangles which is to be rendered to make the face image.
The no of vertices and their order in array as well as the indices given by kinect is always…
Allahjane
- 243
- 1
- 2
- 4
14
votes
3 answers
Correct Specular Term of the Cook-Torrance / Torrance-Sparrow Model
For a while I have been doing some research on the topic of Physically Based Rendering. One reflection model that is mentioned over and over is the Cook-Torrance / Torrance-Sparrow model. It seems like in each mention or explanation of this model a…
Thordal
- 141
- 1
- 5
14
votes
1 answer
Why isn't a BRDF a ratio of radiances?
I'm Learning about BRDFs and wondering why the BRDF is defined as the ratio of outgoing radiance to a given direction and incoming irradiance from another direction. Why isn't the BRDF defined as ratio of radiances?
PeteUK
- 700
- 5
- 13
14
votes
1 answer
Why is work-efficiency desired in GPU programming?
I've been reading the following article on how to do a parallel scan in CUDA:
https://developer.nvidia.com/gpugems/GPUGems3/gpugems3_ch39.html
In the article, there is an emphasis on making the scan "work efficient". In other words, a GPU algorithm…
Mokosha
- 1,144
- 7
- 23
14
votes
1 answer
Do I need to rebind uniforms or attributes when changing shader programs?
Rendering the scene usually involves more than one shader program which, in my case, all use the same attributes and share at least some of the uniforms. To have them working properly, I currently play safe, meaning I rebind the attributes and get…
Nero
- 1,320
- 3
- 15
- 31
14
votes
1 answer
How does a 2D Fourier Transform of an image work?
I understand how a 1D Fourier transform separates a signal into its component frequencies, but I'm having difficulty understanding how a 2D Fourier transform affects a 2D image.
From another question, John Calsbeek linked to an interesting paper…
trichoplax is on Codidact now
- 6,292
- 3
- 23
- 69
14
votes
1 answer
Why is it twice as expensive to make a noise function that can be tiled?
I've seen in several places that making Perlin noise loop seamlessly requires calculating it twice in slightly different ways, and summing the two results.
This Perlin noise math FAQ gives a formula:
$$F_{loop}(x, y, z) = \frac{ (t - z) \cdot F(x,…
trichoplax is on Codidact now
- 6,292
- 3
- 23
- 69