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
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;

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;
typedef signed long long GLint64EXT;
typedef unsigned long long GLuint64EXT;

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 )

Sunday, November 5, 2006, 07:42 AM - Misc
AnswerBus is a web search engine where you can type you question in several languages (english, french, italian, ...). I did a little test with the following question: "Where can I find GLSL Demos". And the answer is:

The answers 2, 4 and 6 concern Hyperion. Cool :thumbup:
view entry ( 1966 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 2265 )

nVidia GLSL compiler 
Wednesday, November 1, 2006, 07:28 PM - News
In the demo I received from satyr (see http://www.ozone3d.net/phpBB2/viewtopic.php?t=172 ), there is a toon shader that uses glsl uniforms. The pixel shader looked like to:

uniform float silhouetteThreshold;

void main()
silhouetteThreshold = 0.32;

//... shader code
//... shader code
//... shader code

This pixel shader compiles well on nVidia gc but generes an error on ati. The error is right since an uniform is a read-only variable. This is an example of the nVidia glsl compiler laxity. That's why I code my shader on ati: if the code is good for ati, we can be sure it will be good for nvidia too (of course there are always some exceptions...)

view entry ( 1998 views )   |  0 trackbacks   |  permalink   |   ( 3 / 2035 )

Ms Dewey 
Thursday, October 26, 2006, 11:40 AM - Misc
Hey, where can I find glsl demos? Just ask to Ms. Dewey, a very cool web search tool: www.msdewey.com

Just for fun I did the following request: [glsl demos] and here is the result:

Pretty cool :thumbup:

view entry ( 1748 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 2045 )

oZone3D XML Model Format 
Friday, October 20, 2006, 08:28 PM - oZone3D
This format is nice because it uses the XML formalism allowing you to read / write it easily and allowing me to update it quickly if necessary (vedo qualcuno che sta sorridendo...).

This format can be loaded directly by Hyperion.

So if you wish to write it in order to export it from your favorite modeling software, here is a quick overview of this format:

<model name="cube" num_sub_meshes="1" num_materials="6" >

<material name="cube_mat" index="0" opacity="1.0" >
<ambient r="0.6" g="0.5" b="0.8" a="1.0" />
<diffuse r="0.6" g="0.5" b="0.8" a="1.0" />
<specular r="0.7" g="0.7" b="0.4" a="1.0" exp="10.0" />
<texture color_map="texture.jpg" />

<mesh name="box" num_vertices="26" num_faces="12" index="0" parent_index="0" >

<position x="0.0" y="0.0" z="0.0" />
<orientation angle="0.0" x="0.0" y="0.0" z="0.0" />

<vertex index="0" x="-50.0" y="0.0" z="49.9"
u0="1.0" v0="0.000000"
u1="1.0" v1="0.000000"
u2="1.0" v2="0.000000"
u3="1.0" v3="0.000000"
r="1.0" g="1.0" b="1.0" a="1.0" />

<vertex index="1" x="49.99" y="0.0" z="49.99"
u0="0.000000" v0="0.000000"
u1="0.000000" v1="0.000000"
u2="0.000000" v2="0.000000"
u3="0.000000" v3="0.000000"
r="1.0" g="1.0" b="1.0" a="1.0" />

<face index="0" a="0" b="2" c="3" material_index="0" />
<face index="1" a="3" b="1" c="0" material_index="0" />


As you can see, the format supports several sets of texture coordinates per vertex, in fact up to 8 (u0 to u7 and v0 to v7). Each face has a reference to a material. This format will be fully supported (read/write) by the upcoming HyperView3D I'm working on, the viewer that will replace the LynX.
view entry ( 2337 views )   |  0 trackbacks   |  permalink   |   ( 3 / 1944 )

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