| bio | website | reedbeta.com |
|---|---|---|
| location | Santa Clara, CA | |
| age | 27 | |
| visits | member for | 1 year, 9 months |
| seen | 3 hours ago | |
| stats | profile views | 556 |
I'm a graphics programmer, an amateur physicist, and a sci-fi nerd. I teach computers how to make pretty pictures. I'm excited by beautiful, immersive, story-driven games and interactive fiction. I enjoy messing around with esoteric ideas. I like explaining things.
I currently work for NVIDIA DevTech. Previously, I worked for Sucker Punch Productions on the Infamous series of games for PS3 and PS4.
reedbeta.com - developer blog, OpenGL demos, and other projects. @reedbeta on Twitter.
|
1d |
comment |
How can I debug _why_ glDrawArrays is very slow? You might try gDEBugger. |
|
1d |
comment |
Moving objects in visual basic6.0 in sinus graphic way What is a 'sinus graphic way'? I think you have a translation error; can you rephrase? |
|
1d |
comment |
Is this Rotation Matrix correct? That would be a row-major layout of the correct Z-rotation matrix as shown on Wikipedia, since you're writing down the entries left-to-right then top-to-bottom. To make a column-major layout, just transpose it - write down the entries top-to-bottom then left-to-right. |
|
Jun 15 |
comment |
TBN Matrix : Eye vs. World Space Conflict let us continue this discussion in chat |
|
Jun 15 |
comment |
TBN Matrix : Eye vs. World Space Conflict @NicolBolas Camera space as I understand the term is oriented with the camera, which makes it more difficult to sample world-aligned cubemaps, as you need an extra transformation step. |
|
Jun 15 |
comment |
TBN Matrix : Eye vs. World Space Conflict "if you see a tutorial that suggests you do lighting in world space, stop reading it. Read something written by someone who's not an idiot." A little more nuance, please. Pure world space can give you precision problems when far from the origin, but camera-centered world space is fine and quite useful, e.g. for sampling cubemaps or SH lighting that are defined relative to world space. |
|
Jun 15 |
comment |
TBN Matrix : Eye vs. World Space Conflict "Therefore, if you construct a matrix from these 3 normals, using them as the columns of the matrix, you will have created a matrix that goes from whatever space those normals were in to tangent space." I think you've got it backward - that matrix goes from tangent space to the source space. Consider if you multiply that matrix by (1, 0, 0) - you get the original tangent vector, in the source space. Multiplying by (0, 1, 0) gives you the bitangent and (0, 0, 1) the normal. So it's transforming from tangent space to the original space the vectors were in. |
|
Jun 14 |
comment |
Defining lines from a heightmap Multiplying texCoords.x by (verticesCount-1)/verticesCount at the top should really do the trick, I'd think. What goes wrong for you in that case? Can you post a screenshot of the result? |
|
Jun 12 |
comment |
What's the process for making a PS4 game? You should contact Sony and ask them. But most likely this information simply isn't available yet since the PS4 isn't yet released. |
|
Jun 12 |
comment |
Using a switch command in one shader vs multiple shaders Current GPUs have more like 32-wide or 64-wide SIMD, not just 4-wide. :) |
|
Jun 12 |
comment |
What techniques make next gen look so realistic Yep, I think HDR and physically-based shading are a lot more widespread and better this generation. It's not that those couldn't be done last generation, but that the approximations and hacky tricks are being upgraded to better approximations and less hacky tricks now. :) Plus, we can afford to have more textures, e.g. both specular intensity and gloss maps instead of just one of the two, plus more complex layered materials, etc. |
|
Jun 12 |
comment |
Using a switch command in one shader vs multiple shaders Well, think about this: the switch() has to be evaluated every time the shader runs, i.e. for every pixel drawn. If you keep your shaders separate, there is no extra work per pixel. But don't take my word for it...why not code up both versions and measure the performance? |
|
Jun 10 |
comment |
InputLayout handling See gamedev.stackexchange.com/questions/25384/… |
|
Jun 9 |
comment |
Blur Shader strange behaviour The duplication effect is due to the samples in the blur kernel being spaced too far apart. You need to either decrease the radius of the blur, or add more samples so that you can blur such a large radius smoothly. (Or apply multiple blur passes, or downsample the image before blurring it.) |
|
Jun 9 |
comment |
A motion blur technique which can cover curve movement path? @Eonil Ahh, yeah, that sort of extended trail with multiple shifts of direction is best done with special purpose tricks. |
|
Jun 9 |
comment |
A motion blur technique which can cover curve movement path? @Eonil, can you go into more detail about what you would use this for? Are there specific kinds of objects, or specific types of motion (e.g. circular) that you're interested in? |
|
Jun 7 |
comment |
Shadowmapping theory question @DOOMDUDEMX Yes. DX11-level GPUs support depth cubemaps directly, so you wouldn't even have to choose the cube face yourself; you could just feed in the vector from the light source to the pixel and it will figure out which cube face to use. On older GPUs you might have to do the math yourself. |
|
Jun 7 |
comment |
GLSL Multiple Uniform Structs One thing that comes to mind is that you can pack the floats together with the vec3s to make vec4s. E.g. each light would be a vec4 of (position, radius) and a vec4 of (color, strength). GPUs like uniform data to be aligned on 16-byte (4-float) boundaries. |
|
Jun 7 |
comment |
Glowing Effect and Blending Google for "bloom effect" and you should find plenty of material on this. |
|
Jun 6 |
comment |
Mesh objects and a draw function @FredrikBostonWestman It has to be split into several meshes, one for each material. I think of a "mesh" as being a chunk of triangles you can draw in one call, so it all has the same shader/material. An object may be made of multiple meshes if it has multiple materials, or independently moving parts (e.g. a car and its wheels), etc. |