Deferred Lighting + specular map – normal map

September 7th, 2009 Prompt No comments

Hi all!

Today I’m testing new map, specular map in RGB (this is only white) with BigDady 2 model, see the crystal in the “face”:

Specular test 1

Specular test 1

Specular test 2

Specular test 2

Well now, the rendering process in screenshots, read more!

Read more…

Categories: Graphics, Programming Tags:

Deferred Lighting + SSAO – Specular – Normal mapping

September 6th, 2009 Prompt No comments

Hi there!

I have now Big Dady 2 model fixed. The texture coords was inverted in V coord. Now I mix my deferred lighting implementation with SSAO. I have no specular map applied yet, but I have other problem here. Diffuse map of model has shadows like SSAO mixed with diffuse map. So the result is not awesome but looks really good.

I need other model :)

Diffuse map has bump wrinkle, shadows and normal mapping effect.

Categories: Graphics, Programming Tags:

Fixing and testing samples with SSAO

September 2nd, 2009 Prompt No comments

Hi there!

Today I see an error in SSAO calc, near of the camera you can see fake occlusion. This is definitely wrong. So now is fixed:

I tested different samples, I think 8 it is ok for normal GPU and 4 or 2 for slow GPUs. Is better to be SSAO with 2 or 4 samples than not to be. You can fix that with a blur downsampled x3 for example.

To be or not to be, this is the question :P . In this case, to be, of course!

Categories: Graphics, Programming Tags:

SSAO downsampled with blur

September 1st, 2009 Prompt No comments

Hi there!

The next step with my SSAO is to use more complex model, in this case BigDady2 of biosock, thanks Llorens ;)

I use the SSAO result and a blur shader with one 2x downsampled.

SSAO with Blur, BigDady2 model for learning purpose

SSAO with Blur, BigDady2 model for learning purpose

  1. Original SSAO in fullscreen
  2. SSAO texture downsampled width and height >> 2
  3. Combine 1 + 2 * 0.5 :)

The result is a soft texture without noise. This noise exist because I use only 16 samples per pixel in SSAO pass.

TODO: mix with Lighting Stage of Deferred Rendering architecture and specular map.

Categories: Graphics, Programming Tags:

SSAO without optimization

August 31st, 2009 Prompt No comments

Today I begin my SSAO based in many website, papers and forums. This first approach has around 2ms of cost. But if the camera is near to objects app performance down drastically. By the way it’s ok for first day of coding.

SSAO bricks looking good

SSAO bricks looking good

I need to do 2 things, render in less resolution and to do a vertical and horizontal blur, then mix with specular and color. I believe the effect is really good now processing only, ALBEDO, NORMAL and DEPTH (in clip space).

If I complete this version soon I will relax and play a few poker hands next week. I hope this weekend to be finished the first version of ModelViewer lite version without GUI, supporting, color map + alpha pixel discard, normal map, specular map, height map for parallax mapping and deferred rendering architecture.

Categories: Graphics, Programming Tags:

Parallax Mapping fixed

August 30th, 2009 Prompt No comments

I forget to apply the new texture coords in Normal Maping -_-

So… this is the result now:

Parallax Mapping Fixed

Parallax Mapping Fixed

Before

Textured box

Textured box

Categories: Graphics, Programming Tags:

Cook your graphic card!

August 27th, 2009 Prompt No comments

I read a post in Humus blog: http://www.humus.name/index.php?page=News&ID=283

He read it in other web site… also the idea is to see if your broken graphic card has solder joints in bad state. Then put in oven 270ÂșC and fix your graphic card, so crazy. Don’t do that if you can not to see voltage of graphic card later.

Categories: Curiosidades Tags:

Parallax Mapping for Model Viewer

August 27th, 2009 Prompt No comments

Yesterday I added new texture functionality to Model Viewer with obj files. Atrr Map, really this map is not native support in exporters but I added in mtl file attr_map string to define texture path.

This texture has RGBA layers. R = specular map, G = ambient occlusion map, B = height map, A = unused. In this screen shots you can see B layer running with one light function. The light position is in vec3(0.0, 100.0, 100.0) so in left and right side with height simulation you can see a few light too.

As you can see, there is no anti aliasing or anisotropic filtering.

Categories: Graphics, Programming Tags:

A trick, Mult matrix in GPU with fixed pipelines

August 25th, 2009 Prompt 4 comments

This topic is a trick? no :)

Some times when you need to do matrix multiplication in many S.O. with different compilers or SSE2, 3… 3D Now! and so on you want to optimize matrix multiplication with ASM code. Next is a little trick for to use that in GPU without this ASM and more faster. For example if you want model animation:

float mBone01[16] = { ... }
float mBone02[16] = { ... }
float mResult[16];
 
glMatrixMode  ( GL_MODELVIEW );
glLoadIdentity( );
glLoadMatrix  ( mBone01 );
glMultMatrix  ( mBone02 );
glGetMatrix   ( GL_MODELVIEW, mResult );
Categories: Graphics, Programming Tags:

Edge detect with depth buffer

August 25th, 2009 Prompt 1 comment

Yesterday I tried to detect more edges than silhouette and mix the new Model Viewer with Deferred Rendering and my new FPS control. That FPS control has information about current FPS, elapsed time of all frames / frames and for example discarted frames if you have really bad FPS. This is a strong FPS control that provide low CPU and GPU consumption at 25 FPS. Really good for a tool if you have many others. ASAP I will say more about that, I need to explain that better.

Now the pics about my edge detect based on depth buffer and matrix3x3 convolution gaussian antialias and 5 lights, only 1 for generate Bump Mapping:

Read more…

Categories: Graphics, Programming Tags: