23,693 reputation
34174
bio website reedbeta.com
location Milpitas, CA
age 28
visits member for 2 years, 7 months
seen 3 hours ago

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.


16h
comment Mouse input that 'sucks in' particles
What do you mean you did this in the fixed-function pipeline? Particle systems are not part of the fixed-function pipeline. As for "How exactly do I make a particle accelerate towards a point", you use an acceleration vector parallel to the vector from the particle toward the point.
16h
comment What dimensions should you use for a perspective projection frustum?
@MarkIngram Normally you pick the FOV and let the zNear plane size be whatever it is. The zNear plane size is really irrelevant for the process of modeling a scene and rendering.
16h
comment What dimensions should you use for a perspective projection frustum?
@MarkIngram How do the dimensions of the zNear plane affect where you place your objects? You create a 3D scene and place objects wherever you want in it. You place the camera in it and depending on where it is, which way it's facing and its FOV, it may or may not be able to see some of the objects. When you arrange your furniture in a room, do you worry about the zNear and FOV of your eyes? I really don't get what the problem is.
2d
comment Projecting a light onto a quad
I have no idea what you're asking here. Can you add a diagram or screenshot or something that explains what you're trying to do?
2d
comment How to find optimal perpendicular axis of rotation vector to draw arrows?
Can you add some screenshots of cases where the arrows look "messed up", and clarify what you mean by "the results will look good"? There are many ways to find a vector perpendicular to (u,v,w) but it's impossible to say what will "look good" in your situation, unless we know more about what you're looking for.
2d
comment Why isn't the bitangent calculated?
@edA-qamort-ora-y The UV mapping is whatever the artist creates. If the artist makes it non-orthogonal, that's what it is. UVs for curved surfaces, such as characters, are always at least a little bit non-orthogonal.
Apr
15
comment Unity Question: Destructible Boxes
Googling "Unity destructible box" gives me tons of hits. You should go read/watch those and try them out. Ask a question here if you get stuck on something specific, but as it stands this question is too broad for this site. Voting to close.
Apr
7
comment Optimize state changes within a render queue
@Takumi What I call "pass" here is more like what is called "layer" in that article. It would be quite unusual for a material to have more than one deferred pass. Different objects will have different materials, but they will all be drawn once in the deferred pass. And as I mentioned in my answer, many materials will be in some passes but not others. You can still keep everything in one master render queue as long as it's sorted by pass.
Apr
3
comment Java: Irrelative Simplex Noise
@Zaphyk What did you set the frequency to? If your x-values are in pixels, you might have to set it to something quite low, like 0.01. Also, is your noise function known good (i.e. you got it from a known working source), or could there be bugs in it as well?
Apr
3
comment Understanding and editing HDR light environments in Photoshop
@Phrogz Ah, I see. I guess the individual RGB channel values are not on a log-scale, though the intensity slider is. It's unfortunately confusing (and possibly a bug?) that they both max out at 20, but the "20" means entirely different things. Not sure why you're seeing some error in your values e.g. 3.986 instead of 4.0, or 786432 instead of 1048576, though.
Apr
2
comment Separating Axis Theorem Issue
It's helpful to add a rendering mode that visually shows each of the separating axes one by one, and the calculated box projections along them. That way you can see directly what part of the process is going wrong.
Apr
2
comment Understanding and editing HDR light environments in Photoshop
@Phrogz I added a screenshot of what I see in Photoshop (CS6), showing how "intensity" of 20 stops corresponds to actual RGB values of 1048576.
Mar
30
comment How To Set Constants Using ID3DShaderReflection
@KamRandle Your code shows you only setting a single variable at a time, directly in the mapped buffer. That won't work correctly since MAP_WRITE_DISCARD throws out any previous data in that constant buffer, so each time you set a variable you're losing all the other variables. That's why, like I said in my answer, you need to keep a shadow copy of the buffer in main memory---update individual variables there, then copy the whole thing to the mapped buffer, after you've updated all necessary variables, just before the draw call.
Mar
29
comment Self occluding object and alpha blending
Yes, it would mean treating each leaf as a separate object for the purposes of sorting. And yes, alpha test means discarding pixels that have too low of an alpha, and rendering the remaining pixels opaque, with no blending.
Mar
29
comment How To Set Constants Using ID3DShaderReflection
@KamRandle I presume StartOffset is in bytes, so that should work assuming data is an unsigned char *. If data is some other type, the pointer arithmetic will be done in multiples of that type, so it'll screw things up.
Mar
29
comment Self occluding object and alpha blending
Possible duplicate of Alpha blending not rendering properly XNA 4.0. See also How to properly implement alpha blending in a complex 3D scene. The short answer is that you'll need to either switch to alpha test (cutout), sort individual leaves, or live with some type of artifacts.
Mar
25
comment How to simulate acceleration and then deceleration?
@kosokund They're the same; I just wrote it in a factored form that avoids redundant calculations. It's a common trick for polynomials.
Mar
21
comment Blinn, Normal maps & Fresnel?
Why would the per-pixel normal affect the light/view directions? The light and camera are still at the same place, no matter which way the surface normal faces. As for your Fresnel effect, can't guess why it looks wrong without more context.
Mar
20
comment How can I implement real-time mutual object reflection?
Are spheres just an example, or are they the actual objects you want to render? If they're the actual objects, and there's not going to be too many of them, you could just do true raytraced reflections in the fragment shader. Spheres aren't that expensive to test for intersection.
Mar
10
comment Andengine Rotate Wheel with fast acceleration
"It took the speed after sometime like real" - this is incomprehensible, sorry. Can you explain more clearly what you have working now and what you're trying to do?