Warning: strpos() [function.strpos]: needle is not a string or an integer in /home/www/6c0b12205eaced73565c8eab34735279/web/jegx/index.php on line 41

Warning: strpos() [function.strpos]: needle is not a string or an integer in /home/www/6c0b12205eaced73565c8eab34735279/web/jegx/index.php on line 48
JeGX's DevBlog
Embedded Your Shader Souce Code In Your C/C++ Apps 
Sunday, March 18, 2007, 10:58 AM - Programming
The NVIDIA developer blog shows a way to include shaders codes to your
windows exe: http://blogs.nvidia.com/developers/2007 ... ader.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.

}
}
}


SimplePHPBlog sucks a little bit because it can't display properly a preformated block of code. I have to use the pre tag and tidy up manually the code :thumbdown:
view entry ( 3705 views )   |  0 trackbacks   |  permalink   |   ( 3 / 1962 )

NetMeter 
Sunday, March 18, 2007, 10:49 AM - Software
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.


view entry ( 1426 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 1854 )

Online Multiplayer Game With Hyperion 
Saturday, March 17, 2007, 07:13 PM - Hyperion
If you want to see how Hyperion can play with the network, just have a look at this topic in the oZone3D.Net forums:
http://www.ozone3d.net/smf/index.php/topic,440.0.html

Jusan is doing a remarkable work and I'm always surprised to see what enthusiast people can do with Hyperion. Keep up the good work Jusan :thumbup:
view entry ( 1295 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 977 )

NVIDIA G80 Arch and GPU Analysis article - french translation 
Saturday, March 17, 2007, 06:55 PM
We've done with Flag the french translation of Rys Sommefeldt's article NVIDIA G80: Architecture and GPU Analysis.

That was a quite hard work :raspberry: and I hope it will be useful for all french-speaking community! Don't hesitate to point the translation mistakes in this topic: http://www.ozone3d.net/smf/index.php/topic,469.0.html

G80 Translation: http://www.ozone3d.net/tutorials/gpu_g80_arch/

view entry ( 1278 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 1735 )

New NVIDIA OpenGL Extensions Headers 
Saturday, February 24, 2007, 09:04 AM - OpenGL
The new OpenGL headers files contain new extensions stuff. You can download them from... just a second, I start GPU Caps Viewer and... okay I got it :thumbup: : from http://developer.nvidia.com/object/nvid ... pecs.html.

But there are a couple of weird things:

1 - the glext.h version is 28 (#define GL_GLEXT_VERSION 28). The version I use to compile the oZone3D engine renderer is
the 29. And I use this header since more than one year...

2 - the glext.h header does not compile with vc6 (yes I still use visual studio 6!) because of the GL_EXT_timer_query extension. Here is the origianl piece of code you can find in glext.h:


/*
* Original code - does not compile with vc6.
*/
#ifndef GL_EXT_timer_query
typedef signed long long GLint64EXT;
typedef unsigned long long GLuint64EXT;
#endif


and here is the code I updated for visual c 6:

/*
Modified code for oZone3D engine - compile with vc6
*/
#ifndef GL_EXT_timer_query
#ifdef _WIN32
typedef signed __int64 GLint64EXT;
typedef unsigned __int64 GLuint64EXT;
#else
typedef signed long long GLint64EXT;
typedef unsigned long long GLuint64EXT;
#endif
#endif


I wonder if the original glext.h compiles with vc7 or vc8. If anyone has the answer, feel free to contact me...

view entry ( 1455 views )   |  0 trackbacks   |  permalink   |   ( 3 / 2028 )

GPU Caps Viewer 
Wednesday, February 21, 2007, 08:54 AM - GPU Caps Viewer
GPU Caps Viewer is the new I worked on these last days. It's the successor of HardwareInfos. GPU Caps Viewer is based on the branch v3.x of the oZone3D engine (while HardwareInfos is an oZone3D v.2.x branch based tool). In addition to classic GPU/CPU information / capabilities, GPU Caps Viewer offers two cool features:

- an OpenGL Extensions database. Either you can see the extensions supported by the current graphics card or you can see all existing extensions no matter the graphics board you have. You can quickly select an extension and jump directly to ist webpage (SGI or NVIDIA extensions specs). I must confess it's very useful for me.

- a GPU-Burner... that was the hard-coding part of GPU Caps Viewer. The GPU-Burner allows to open several 3D windows. Actually you can open as many 3D views you want (1, 2, 4, 6, 10, 20, ...). Each view renders a GLSL toon-shaded object with vsync disabled. You can set the size of each window individually (default size is 400x400). Each 3D view is rendered in its own thread... I let you imagine how hard is to debug a multitreaded gfx application :raspberry: And because I'm only a human, there are always some bugs in my code. But there is a very cool tool that helped me to manage the mad threads: ProcessExplorer :thumbup: You can download it here: http://www.majorgeeks.com/Process_Explorer_d4566.html



Here an screenshot of my desktop with 13 instances of the 3D view runing at the same time. I will release GPU Caps Viewer very very soon. So stay tuned! :winkhappy:
view entry ( 1544 views )   |  0 trackbacks   |  permalink   |   ( 3 / 2077 )

NVIDIA the OpenGL Extension Specifications 
Wednesday, February 21, 2007, 08:24 AM - OpenGL
Finally NVIDIA releases the specs of the new OpenGL extensions that come with the gf8800. Great news! :thumbup:

These specs are very important for us, poor graphics developers, in order to update our software with the latest cool features. So among these specs, there is the GL_EXT_draw_instanced that allows to do geometry instancing. Another extension is WGL_NV_gpu_affinity. This ext allows to send the gfx calls to a particular GPU in multi-gpus system. Should be cool to see how a 7950GX2 behaves. The GL_EXT_timer_query ext provides a nano-second resolution timer to determine the amount of time it takes to fully complete a set of OpenGL gfx calls. There are still so many cool extensions. As soon as I get a 8800 board, I'll made a little tutorial to cover these cool extensions.
view entry ( 1423 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 1882 )

oZone3D Engine News 
Wednesday, February 14, 2007, 09:28 PM - oZone3D
I'm currently working on a major update of the oZone3D Engine. I try to make a kind of fusion/merge of the branch v2.x (Hyperion, HardwareInfos, CameraPath...) and the v3.x (Soft Shadows and Surface Deformer Benchmark). For the moment I've managed to update the memory manager and the trace manager. The new memory mgr works fine but doesn't compile with these pesky MFC (visual c++ 6.0) :thumbdown:

Direct consequence: all projects based on MFC are now obsolete. :sad:
So the following projects are abandoned: LynX 3D Viewer, CameraPathEditor and HardwareInfos. Hyperion is coded directly with the Win32 API so it should (yes I said should) be okay. :winkhappy:

That said, I can go back to my code... See you soon!

view entry ( 1333 views )   |  0 trackbacks   |  permalink   |   ( 3 / 1966 )

Fire Demo 
Friday, January 26, 2007, 12:16 PM - Hyperion
I've just released a new hyperion demo. This demo uses the particle system functionalities and shows a pretty cool fire with smoke:



I leeched some particle textures from another cool demo you can find here: shaderx-5-demo-codeexe-shadows.

This demo took me around one hour to be coded: 10% of the time for the real code and 90% for tweaking the fire playing with particles's params. :raspberry:

Anyways, the result is quite convincing even if the particles don't interact with the light... I believe I'll add some glsl entry points
to the Hyperion particle system...

view entry ( 493 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 2068 )

Ageia PhysX SDK for free 
Friday, November 24, 2006, 09:36 AM - News
Ageia has announced new licensing terms, allowing its PhysX SDK to be used and its runtime components distributed in all commercial and non-commercial PC projects for free.

This is a really good news for the community and for Hyperion! I filled up the register form and now I hope to receive the download link quickly.

view entry ( 2440 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 2213 )


<<First <Back | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Next> Last>>