Reputation
27,917
Next tag badge:
89/100 score
27/20 answers
Badges
3 52 90
Newest
 Good Answer
Impact
~566k people reached

Jul
28
comment Should input be per-frame or per-update?
Oh, for some reason I didn't see the last paragraph. :) But yes, there are sometimes multiple points in the game loop where input is accepted, e.g. once during update/simulation and again at the last moment before submitting rendering, to tweak the camera matrices for the latest movement. Actually I'm not sure what it would accomplish to put input polling on a separate thread, if the game loop only accepts input from that thread once per frame.
Jul
28
comment Should input be per-frame or per-update?
Some games, like twitch shooters, have even been known to poll for mouse/gamepad input multiple times per frame to get latency as low as possible.
Jun
27
comment What advantages does multisampling have over supersampling?
@BrainSlugs83 Yes, GPUs these days often use simple lossless compression formats for render targets, especially MSAA ones. It's done in hardware and is transparent to applications. Saves a ton of memory bandwidth. (Note this is a totally different thing from DXT/BC texture compression, which is lossy and precompressed offline. But that also does store the data compressed in video memory; it's decompressed in hardware when the texture is sampled. Again, saves a ton of bandwidth.) Source: I work at NVIDIA.
Jun
17
comment Simulating water droplets on a window
@MaximKamalov Done. (Until the next time AMD decides to reorganize their website...)
Jun
17
revised Simulating water droplets on a window
fixed link
May
31
awarded  Good Answer
May
30
comment Deferred shading - how to combine multiple lights?
@PsychoDad That's the domain of shadows, which is...a more complicated topic. :)
May
29
comment Deferred shading - how to combine multiple lights?
@woojoo666 Aha, sounds like you solved it on your own. Yes, you have to lay down depth in an opaque pass before you can use any sort of blending. It can be a z-prepass with color writes disabled, or another common way is to do ambient/directional light in a first pass with no blending, then add point/spot lights in later passes with blending.
May
27
comment Deferred shading - how to combine multiple lights?
@woojoo666 No. In fact it should be enabled with the depth test set to less-equal, so that surfaces that precisely match the previous pass will go through. If the depth test is off, then surfaces will incorrectly accumulate light from whatever's behind them. :)
May
19
awarded  Enlightened
May
19
awarded  Nice Answer
Apr
12
comment Optimize state changes within a render queue
@cubrman Yeah, changing techniques or passes within an effect file does change the shaders. Anytime you switch to a different individual vertex or pixel shader program, that's changing shaders.
Apr
11
comment Optimize state changes within a render queue
@cubrman I wouldn't say that. Updating shader parameters is one of the most lightweight state changes, so I wouldn't worry about it too much. You can still minimize the expensive state changes (switching shaders, switching render targets) by grouping your objects by shader. And you can avoid switching textures, vertex buffers etc. (medium expensive) by grouping your objects further by material and mesh, within the grouping by shader.
Apr
11
comment Optimize state changes within a render queue
@cubrman If using the effect framework, IIRC you need to call Apply each time you change parameter values.
Mar
4
awarded  Enlightened
Mar
4
awarded  Nice Answer
Oct
7
comment Deferred rendering and gaussian blur - artifacts
I'm confused by your description of your render passes. Is fbo2 the temporary texture that you render to during the blur? Do you have multiple temporary textures, each with its own fbo? Or are you attempting to re-use the same temporary texture / fbo for multiple passes (which won't generally work, and could explain the artifacts)?
Sep
30
awarded  Explainer
Sep
21
awarded  Enlightened
Sep
21
awarded  Nice Answer