New engine with portals
First of all, depth of field effect has been developed and now looks very nice. Of course there is bokeh effect. You can find videos here:

Next, PhysX has been intergrated into the engine. Now every object can move and react in the right way.
Engine has it's own portals system. Portals like in "Portal" game. Objects can move through portals, and portals can also move! They are also scalable. There are some bugs, but it's very hard to make PhysX work with portals. It still requires a lot of work.
You can see some videos here:
http://www.youtube.com/watch?v=tipFlVpKJiQ - objects through portals.
http://www.youtube.com/watch?v=JlLwH6CRIUg - movable portals.
http://www.youtube.com/watch?v=SvcxFP3CjXk - portals falling on object.
http://www.youtube.com/watch?v=VS_UpO_JkB0 - scalable portals.

There are also particles simulated with PhysX.
And new fog, you can see it here:
And some volumetric fog here:
Other videos are available here:
http://www.youtube.com/watch?v=zINigPGWnAE - fake raytrace with cube maps
http://www.youtube.com/watch?v=hPDoAtq6NOE - transparency
http://www.youtube.com/watch?v=fSy9YtagR5w - blurred transparency
http://www.youtube.com/watch?v=rSdxyaxxLJw - how to use effects

Check the screens below.
There is also simple game created using the engine.
Engine finally runs on both Windows and Linux.
Check readme.pdf for more info about how to run and compile. It was developed and tested on GeForce GTX 260 so it may not work on AMD/ATI, because I don't have ATI card to test it on.

cg_gl.rar No movie Comments(3)

Triangle in assembler
Program renders models build from triangles with color interpolation (RGB) in screen space, where drawing fucntions is written in assembler.
This is my project for classes, but made a little better than was needed :).
There are three versions: normal, slightly oplimalized for MMX and for SSE. You can see that MMX and SSE versions runs few percent faster than the normal one, but that's because only main drawing loop is optimized.
Color interpolation is in 2D space, with no perspective correction because it needs division operation to be done per pixel and that would made program to run very slow. Some optimizations are possible, like doing divide per every 8th pixel (or 16th) and interpolation (like was made in Quake 2), but it requires a lot of work - maybe I'll do it in near future.
Triangle is drawn in rectangle - there is clipping implemented with not so much additional instructions (they all are outside main loop).
assembler.rar No movie Comments(0)

Depth of Field + Motion Blur
New version of engine, prepared to show some effects, like Depth of Field and Motion Blur.
These two effects are the most diffucult ones, also mine implementation isn't perfect all the time, but they look good, specially if you think about Motion Blur, which is visible only when some object is moving - it means it is blurred, so it doesn't have to be perfect, because it won't be visible, when it's all blurred.
With Depth of Field it is very hard to blur what is between camera and focus zone. After doing research for DoF I think it's impossible to make "perfect" DoF, because it's impossible to blur what is near, because that reveals what is behind blurred objects, so that requires many renders, and that makes bugs, for example when some object is so long that it crosses all three planes (blur-focus-blur). In this demo I made DoF with only one render, what makes it not perfect for objects that are close to the camera.
But I managed to do lens effect blur, which means that bright objects blurs into shiny pentagon - this is not a normal interpolation. It requires more than 100 samples per pixel, but, surprisingly, it works quite fast.
You can see it in movies: Movie1, Movie2.
Whole engine works based on effects, which I'll explain in another demo - here you can see a quick tutorial explaining some basics with effects panel if you want to play with it.
Engine requires GeForce 6800 to run. I couldn't tried it on ATI, because I only got GeForce.
Control: mouse + WSAD
When you launch gl1.exe you have to open a script that controls engine (there are few to show diffrent effects).
UPDATE (09.06.2006): Removed SSE2 instructions to maximize compatibility.
cg_gl_dof.rar No movie Comments(9)

Engine for GF4
This is the last version of my engine that works on GeForce 4. And I think that is the biggest advantage. On GeForce 4 I managed to get such effects like fullscreen blur, glow, disort. I suggest you to experiment with variables, some sets gives amazing results! And that all works on GF4! Effects that are available in recent games require recent graphics cards, but they were available on GF4! Maybe not exactly in the same form like they are now (lower resolutions, no HDR, which is the last problem for me, because my glow look even better than glow in recent games that requires HDR, when you set it properly). And all of that with good framerate.
Engine features: dynamic lighting, stencil shadows, skinning (not visible in this demo, but you can see it in source), transparency with disortion (pseudo refraction of light on bumpy surface), nice particles (I'll show them in next demo), dynamic memory management (also not visible in this demo, but you can see it in source). Engine has also some other things like: better interpreter or console (like in Quake) with binds and variables. I hope someone will find it helpful.
I wait for your opinions, suggestions and ideas - just leave a comment!
You can see it working in the movie.
cg_gl_gf4.rar Movie Comments(3)

SIG Intepreter
C-similar code interpreter. May be usefull for controlling program (I use it for controlling whole engine) or for more advanced configuration files. Specification of language is shown in tutorial.sc and usage example for example program is in example.cpp. For any questions/problems please post a comment.
siginterpreter0-8.rar No movie Comments(0)