Welcome!
Welcome dans ce blog infâme, un des endroits du web ou je poste les choses que je ne poste pas ailleurs (i.e: Geeks3D...) et où je teste les thèmes WP que je trouve sympa.

RSS Feed

Archive for March, 2007

The NVIDIA developer blog shows a way to include shaders codes to your
windows exe: blogs.nvidia.com/developers/2007/03/inlining_shader.html.

But this example is not fully operational. I slightly modified the code to make it totally operational (I compiled it on vc++ 6.0):

1) Add a define to your resource.h file:
#define IDF_SHADEFILE 1000

2) Add an entry in your resource.rc file:
IDF_SHADERFILE RCDATA DISCARDABLE "myShader.glsl"

3) Use the resource in your code:
HMODULE hModule = GetModuleHandle(NULL);
HRSRC hResource = FindResource(hModule, (LPCTSTR)IDF_SHADERFILE, RT_RCDATA);
if(hResource)
{
  DWORD dwSize = SizeofResource(hModule, hResource);
  HGLOBAL hGlobal = LoadResource(hModule, hResource);
  if(hGlobal)
  {
    LPVOID pData = LockResource(hGlobal);
    if(pData)
    {
	// Cast pData to a char * and you have your shader
	char *shader_code = (char *)pData;

        // Now do whatever you want with shader_code pointer.
	// Do not forget that shader_code is not a zero-terminated string!
	// Use dwSize to handle that.

    }
  }
}

I found this morning a tool called NetMeter. It’s a tiny bandwidth monitor that shows how much data’s going in and out of your PC over the interwebs.