Hey Talon, I can definitely help you out but before I hand you code did you look at listing 1 in the paper that is referenced from the blog post? When using the derivative map variant you simply replace the dBs and dBt in listing 1 with the code from the blog post -->…
>I think supporting Max or Maya would be much more productive. I understand how you might feel that way but it doesn't really address the underlying issues though. For instance you wanna leave all the people who bake using xNormal and Unity hanging? And even if we did agree to use their implementation of tangent space…
Morten: Any chance you could post the HLSL/CG code for building the screen-space transform matrix? Trying to build a shader to test these out but I'm struggling to get my head around what's needed to transform into screen-space rather than tangent space.
Hey Equil, I just wanted to try and shed some light on some of the questions people have regarding the technique and the issues you've raised. First of all you are correct that this will not work well on examples such as these where the base lighting on the object doesn't look good. In other words the normals on the lo-res…
I'm glad you got it working! As I was saying earlier you need to have "well-behaved" normals on the mesh you are bump mapping (trivially the case for tessellated meshes). Essentially, the mesh to be bump mapped has to look nice on its own when lit for this to work. Roughly, this means the variance of the vertex normal…
So I was reading up on some white-paper, specifically this one from R&C, and came across something called D-Normal Maps. http://www.insomniacgames.com/tech/articles/1108/files/Ratchet_and_Clank_WWS_Debrief_Feb_08.pdf Article I found written about it: http://mmikkelsen3d.blogspot.com/2011/07/derivative-maps.html What also…
>Why exactly do we need the .GetDimensions function? It's just the d3d10-d3d11 way of getting the resolution of the top mip level. You can just pass these yourself which is probably what you're already doing? The reason you have to scale by the texture resolution is because in a derivative map of the height map the slopes…
Similar idea, but it's not the same thing as a normal with the z component taken out. It stores the slope in texture space, rather than tangent space. The difference is subtle there, but a derivative map has no dependence on the way in which it is mapped onto a mesh. This is its main benefit. As some have mentioned, yes it…
Yes. Lets flip that around, you want to leave all the people who use Max or Maya hanging? These are real user bases we're talking here, that make up the vast majority of the games industry. Xnormal has a custom tangent loader, it can easily load a max/maya centric Marmoset Toolbag tangent space. Lets just look at it from a…
this thread definitely needs more pictures. i tried implementing it real quick using this test model by Earthquake. The derivative map was generated in xnormal and looks like this: seems like they work ~ok~. there seems to be a small accuracy gain over tangent space normal maps, since derivative vectors don't need to be…