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

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

Warning: strpos() [function.strpos]: needle is not a string or an integer in /home/www/6c0b12205eaced73565c8eab34735279/web/jegx/index.php on line 61
JeGX's DevBlog - ATI X1900XTX and VTF
ATI X1900XTX and VTF 
Saturday, May 20, 2006, 01:56 PM - News
I've just received an email from an user saying that he was'nt able to run the demos of the Vertex Displacement Mapping Tutorial on his brand new Radeon X1900XTX. VTF or Vertex Texture Fetching is a cool feature of high-end graphics chipsets and it's part of Shader Model 3.0. The X1900 series is based on the R500 chipset (R580) that is a SM3.0 complient GPU. But in OpenGL side and especially in GLSL, VTF is not supported. The OpenGL query done with GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB always returns 0. That means that no texture units are available in the vertex shader.

ATI confirms this fact in one of its whitepapers shipped with the ATI SDK (ATI OpenGL Programming and Optimization Guide.pdf). At the page 11, we can read this: "All ATI graphics HW have a few items that deserve special consideration when using GLSL. The first major item of note is the absence of vertex texture units. This means that vertex texturing is never available, and all shaders attempting to use texture functions in the vertex shader will fail to link.". I know, this is a rude reality. The R580 GPU is really powerful and it's a pity that ATI does not support VTF in his chipsets. I don't know how the R580 behaves in D3D side but I can suppose the GPU has the same limitations. VTF is currently supported by Geforce chipset from 6600 to 7900. Conclusion: if you wish to play with VTF, use a nVidia board.

Maybe, all these problems will be solved with the SM4.0. I hope! :winkhappy:

view entry ( 1132 views )   |  0 trackbacks   |  permalink   |   ( 3 / 2210 )

Hyperion 1.4.0 is out! 
Saturday, May 6, 2006, 02:52 AM - News
Ok, Hyperion 1.4.0 is finally out! This is a quite big release with many features mainly on LUA side. The new LUA 5.1 engine works very fine and that's a good thing. Today while I was releasing Hyperion,
I wasted some hours, trying to hack the Lua socket lib because I didn't manage to connect the HypTcpWin32 client to the Hyperion TCP server demo. Both appz were localized on different computers and I started to think there's a big trouble with lua lib. After some test I found the guilty: the inet_trybind() function in inet.c soket lib source code. Actually this function works fine but in my test demos I always bound the server with localhost address. In fact I wonder why... Anyway, I found the response having a look at inet_trybind() implementation and thanks to the windows socket page: www.sockets.com/winsock.htm . A little detail I have always skipped when implementing TCP servers since I always put INADDR_ANY in local.sin_addr.s_addr. But if you specify a particular host, the TCP server accepts incoming requests only from this particular host...
That's why during my tests, everything worked fine with localhost. But the real guilty is the sample-codes that come with the socket lib: localhost is always used with bind().

The tutorial www.ozone3d.net/tutorials/lua_socket_lib.php shows you a concret demo featuring a TCP server running in Hyperion. Using the HypTcpWin32 client you can control the torus rotation in a cool way. A real kick! That opens up new horizons with Hyperion programming.

The hyperion lua host-api has grown a lot again. Now you can create directly in lua materials, lights, meshes, debug primitives (disc, line, box, sphere), load models, navigate through materials, lights and cameras lists. The new vertex pool object for example, has no XML node. You can only create and use it in lua.

Anyway, don't forget to have a look at the changelog: www.ozone3d.net/hyperion_changelog.php

Now that Hyperion 1.4.0 is released, I'm going to try to get some rest (one day is enough, isn't it?) because after, I've planned to release a lot of new demos and tutorials that are waiting for that. It seems that a new version of LynX is also in the pipeline (the current version doesn't run as I want - both lite and pro).

Just another thing. Some codes samples available for downloading may not work with the new hyperion. Since it takes a lot of
time to test all code samples, I didn't start this check yet. I've planned to update code samples next week. But if you encounter
some problems, check the source code and look for the old lua require() function. If the demo uses it, replace this function
by the following instruction:

dofile( HYP_GetHyperionDir() .. "/hyperion_lua_host_api_defines.lua" );

of course in the case where the demo needs to load hyperion_lua_host_api_defines.lua...

Ok, it's time to stop. I'm fed up with these lines of codes and this blinding screen...
...Shutdown!
...Bye!
view entry ( 1140 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 2145 )

Hyperion almost here! 
Thursday, May 4, 2006, 04:04 PM - News
A little news about hyperion. I'm still working hard on it and I hope to release the new version tomorrow. I've just finish to implement a vertex pool object in order you can make your own particle system. There're still the reference guide in english/french (texts and translations are done!) and the new tutorial on TCP/IP server with LUA to finalize. Honestly, this new version of hyperion is really cool and works very fine.

Just for fun, a little demo I've done to test the playlist and vertex pool. I'll release it with Hyperion tomorrow:





In the real demo, there is a kind of noise in the screen but for screenshots purposes I've had to remove this cool effect.

Ok, I leave you here.
See you soon with Hyperion 1.4.0!


view entry ( 1039 views )   |  0 trackbacks   |  permalink   |   ( 3 / 961 )

Lua 5.1 and require() 
Friday, April 28, 2006, 09:53 PM - News
Lua 5.1 has brought many changes and one of these changes concerns the require() function at
the user level (i.e in lua script). Up to lua < 5.1, I used in Hyperion lua scripts the require()
function to load external lua files such as declaration of constants. But now with
lua 5.1, require() does not work for loading lua files (besides, the reference manual
says it clearly : "There were substantial changes in function require due
to the new module system"). So the solution I've found is to use the dofile() function.
This function opens a file and executes its contents as a Lua chunk. Just what I need.
So where there was in hyperion demos:

require( HYP_GetBaseDir() .. "/hyperion_lua_host_api_defines.lua" );

you have to replace by:

dofile( HYP_GetBaseDir() .. "/hyperion_lua_host_api_defines.lua" );

or even better:

dofile( "hyperion_lua_host_api_defines.lua" );

This last line of code supposes that a file called hyperion_lua_host_api_defines.lua is
placed in the hyperion root directory, no matter where your demo is. This solution is cool
because there is now an unique file for the constants that needs to be updated.
hyperion_lua_host_api_defines.lua will be shipped with the new hyperion very very soon...

view entry ( 1297 views )   |  0 trackbacks   |  permalink   |   ( 3 / 1978 )

Hyperion News 
Wednesday, April 26, 2006, 01:28 PM - News
The new version of Hyperion is about to be released. It will be a very cool release since
the support of TCP-UDP/IP socket is done and the new LUA scripting engine (LUA 5.1)
is now operational. I've done some code samples showing how to set up a TCP server
in Hyperion using operating system threads (not lua ones) and coroutines.

Coroutines are a cool tool in the lua developer's toolbox. Coroutines are also called
collaborative threads. In short, your brain replaces the operating system scheduler and
it's up to you to perform thread yielding and resuming. In collaborative multithreading
each processus decides when it has to yield the CPU time to another processus
(collaborative multithreading was in the core of win 3.x if I''m not wrong).
LUA 5.1 comes with some examples of coroutines and a demo that shows how create
a TCP server in Hyperion using coroutines will be available with the new Hyperion.

The LuaSocket lib allows the (Hyperion) coder to easily create TCP/UDP server and
client or perform common ftp and http requests. Really cool!

Stay tuned! :winkhappy:
view entry ( 1116 views )   |  0 trackbacks   |  permalink   |   ( 3 / 983 )

Galaxy Explorer Contest 
Wednesday, April 26, 2006, 11:58 AM - General, News
CGIndia starts its first CG contest: Galaxy Explorer Contest.
From an existing .3DS model (see screenshot below), competitors may modify the 3d model in any ways
but the final output will look at least the derivative of the basis shape of the given 3d model:


Tri= 4582 - Vert=2315 - 3 materials

Cool, this kind of contest allows everyone to take part in.
Final Rendering should be submitted before 22nd May 2006: a little short, no?
Anyways, I think that just for fun, I'll try to do something. Keep an eye on.


view entry ( 1126 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 2201 )

Want To Be A Game Programmer? 
Monday, April 24, 2006, 08:53 AM - News
Marc Mencher, the founder of www.GameRecruiter.com, has published an article that talks about the spirit and the skills you must have if you wanna be a game programmer:
- never give up when things get hard
- be curious
- have the team attitude
- be a self starter
- be a follow-through: the last 10% of a task can take 90% of the time (yes it's true!!!)

Check this article out!

view entry ( 1103 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 1999 )

ASM 2006 Invit 
Sunday, April 23, 2006, 06:52 PM - News
The asm2006 invitation demo review is available on oZone3D Demoscene forum. The zik and gfx are nice. :thumbup:



view entry ( 905 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 895 )

PHP Tutorials 
Sunday, April 23, 2006, 09:18 AM - News
Here is cool page about PHP programming hosted in the Zend website.

There are very interesting tutorials like Securing Forms with Random Noisy Images or Generating Advanced Web Page Statistics using PHP.

I think they're worth while. Check them out and :thumbup:
view entry ( 2594 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 3 / 1849 )

LuaSocket Library 
Friday, April 21, 2006, 11:20 AM - News
A Hyperion's (power) user sent me a link to this LUA lib.

I've planned to add TCP-UDP/IP support to Hyperion (almost one year already, and the worst thing is that the oZone3D engine has a socket lib since more than 2 years...). This will solve the most of problems regarding network communication. But I have to modify serously some internal parts of the Hyperion Lua host-api in order to manage parallel LUA code paths (or states). Now that the new LUA engine (v5.1) has been released, I'm going to tackle this task. But... the LuaSocket lib seems to be really cool with many functionalities.

Then before starting hyperion destruction with this heart surgery, I'm going to look seriously at how Hyperion can use the LuaSocket Lib and modify Hyperion if needed.

Once again, stay tuned!
view entry ( 1172 views )   |  0 trackbacks   |  permalink   |  related link   |   ( 2.9 / 2053 )


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