Clootie graphics pages

Home | Articles | Projects | Delphi | C++Builder | TMT pascal | Links | About
  

News archive
1st Half of 2002

 << 2nd Half of 2002 News till 2002 >> 
  
  20-Jun-2002
NVIDIA Cg 
NVIDIA Cg Direct3D sample Finally got DirectX part of NVIDIA Cg is up and running.
Download updated NVIDIA Cg convertion.

For reference how to use Cg in Delphi Direct3D applications look at Cg Direct3D sample. This sample uses Pixel and Vertex Shaders internally, so to see it in full mode you should either use DirectX8 compliant video-adapter or switch to reference rasterizer under debug version of DirectX SDK.
  19-Jun-2002
NVIDIA Cg 
Once again updated NVIDIA Cg conversion. Now all Cg stuff is located on NVIDIA Cg - Delphi and C++Builder toolkit page.
Today fixes include: corrected enum's size in headers to 4 bytes; removed array parameters from function declarations; changed TcgGLMatrixFormat from enum to bunch of consts. Great thanks to Eric Grange for these fixes.
...Still no DirectX part.
  17-Jun-2002
NVIDIA Cg 
Updated NVIDIA Cg conversion.
NVIDIA Cg OpenGL sample Fixed C++Builder compatibility issues in headers. Created special C++Builder package with needed libraties and modified NVIDIA header file (cgGL.h). Fixed bugs in OpenGL runtime sample - now it's working correctly. Still no DirectX part.
Go to download page.

Note: Current Beta version of Cg requires installation of NVIDIA Cg toolkit (available here) - this is NVIDIA limitation.
  15-Jun-2002
NVIDIA Cg 
Posted beta version of NVIDIA Cg runtime interface adaptation to ObjectPascal.
Currently included headers to Cg core linking functions and OpenGL interface. Cg headers for DirectX will be ready later.
Go to download page.

Note: Current Beta version of Cg requires installation of NVIDIA Cg toolkit (available here) - this is NVIDIA limitation. Also Delphi Cg OpenGL sample doesn't draw anything on screen - so it can be called only half working. I can't verify what's wrong because original NVIDIA sample not working correctly too (at least on mine computer).
Comment's are welcome!
  12-Jun-2002
Article 
Posted article with description of CD3DApplication (part of MS SDK D3DFramework) initialization process, hope this will make more easy to understand necessary steps to build applications based on it: CD3DApplication Demystified
  10-Jun-2002
DirectX SDK examples 
Uploaded 3 new Direct3D samples which use VCL framework as application basis and render scene in window inside a VCL from.

VCLFog image The VCLFog sample originally was MFCFog - render fog with various parameters controlled by user with Windows GUI controls.

VCLPixelShader image The VCLPixelShader sample originally was MFCPixelShader - shows how to compile and use pixel shaders. Various controls are used to control the pixel shader used for the 3-D scene.

VCLTex image The VCLTex sample originally was MFCTex - allows user to setup texture pipeline - texture number, blending modes. You can even copy/paste ObjectPascal code for selected mode. Various controls are used to control the texture appearance.
  06-Jun-2002
DirectX SDK examples 
Uploaded 3 new Direct3D environment mapping samples: CubeMap, FishEye, SphereMap from DirectX 8.1 SDK converted to ObjectPascal.
CubeMap image FishEye image SphereMap image
CubeMap and SphereMap samples in updated DirectX 8.1 version use D3DX effect files, created from strings at runtime (opposed to effects created from files in Water sample). More info can be found on download page.
  30-May-2002
DirectX SDK examples 
EnhancedMesh image Uploaded new Direct3D sample EnhancedMesh from DirectX 8.1 SDK converted to ObjectPascal.
DirectX 8.1 version of sample adds support for 32-bit indices in meshes (allowing meshes to be enhanced to over 65k vertices on non N-Patch compatible devices). More info can be found on download page.
  29-May-2002
DirectX examples 
In addition to recently posted series of DirectX SDK bumpmapping samples today I present new sample made by mine. It's DotProduct Bumpmapped Font rendering class demo. This sample requires DirectX 8.1 or higher.
DotProduct text image
Direct3D sample for DirectX 8.1 demostrating how to create and render Dot product (Dot3) bumpmapped / modulated font. Font normal map generated with D3DX8.1 function D3DXComputeNormalMap which itself requires height map. So height map is generated from font bitmap by averaging intensivity of 3x3 square of pixels.
Lighting is controlled by moving mouse cursor. Different blending modes can be switched at runtime.
  26-May-2002
DirectX SDK 
It's finally started! The DirectX 9 Beta1 download is now available for beta testers.
  20-May-2002
DirectX SDK examples 
BumpSelfshadow image BumpUnderwater image Uploaded 2 new bumpmapping samples from DirectX 8.1 SDK converted to ObjectPascal: BumpSelfshadow, BumpUnderwater. Now all seven samples from BumpMapping folder in DirectX 8.1 SDK are converted to Delphi. More info about them can be found on download page.
BumpSelfshadow sample is totally new sample, it's based on 2001 GDC lecture by Dan Baker and Chas Boyd. Presentatin itself can be found here.
  14-May-2002
Direct3D / DirectShow examples 
Updated yesterday DMOTexture3D sample. Fixed ability to play initially interlaced video streams.
  13-May-2002
Direct3D / DirectShow examples 
DMOTexture3D image Updated Direct3D / DirectShow fusion DMOTexture3D sample. Sample shows how to implement DMO filter in Delphi and use this filter to pump data to Direct3D8 texture.
In addition to already rich set of demonstrated techniques (read more) possibility to play any DirectShow supported video files (including AVI, MPEG, DivX and all other) choosed from FileLoad dialog was added.
Also filter implementation changed slightly, allowing to query any possible additional information about video stream before assigning Direct3D device/texture with it. This addition was used to change program window size to 2x of video stream just before Direct3D device creation.
  09-May-2002
DirectX SDK examples 
BumpWaves image DotProduct3 image Emboss image Uploaded 3 new bumpmapping samples from DirectX 8.1 SDK converted to ObjectPascal: BumpWaves, DotProduct3 and Emboss. More info about them can be found on download page.
BumpWaves sample in 8.1 version of SDK have vertex shader code path. This additional path allows sample to run on hardware what doesn't support projected EMBM textures (like GeForce3 ;-]).
  02-May-2002
DirectX SDK examples 
BumpLens image BumpEarth image Uploaded 2 new bumpmapping samples from DirectX 8.1 SDK converted to ObjectPascal: BumpEarth and BumpLens. More info about them can be found on download page. Both samples had been changed internally since 8.0 version of DirectX.
  25-Apr-2002
DirectX SDK examples 
Uploaded new samples from DirectX 8.1 SDK converted to ObjectPascal: DolphinVS and Text3D. Both samples have been changed since 8.0 version of DirectX. DolphinVS sample changes are internal. In Text3D sample drawing of extruded text mesh (with help of D3DXCreateText) was added with other changes in rendering so sample looks very different from DirectX 8.0.
  16-Apr-2002
DirectX SDK examples 
Uploaded new samples from DirectX 8.1 SDK: Billboard and ClipMirror. They are not so new, identical samples was released in DirectX 8.0 SDK. This update just fixes some code formatting issues.
  11-Apr-2002
DirectX examples  
In previous sample (generating X-files inside your program) "human face" is looking unnatural - like it's brushed out of stone. After some investigation I've discovered what normals in this model were calculated against single triangles and not smoothed over the face. Probably it was modeller intention, but I decided to correct this.

Generate X-File image So this sample shows how to use D3DXComputeNormals and D3DXWeldVertices functions of D3DX8 library to process meshes. Picture on the right shows you (from left to right): original mesh, mesh after D3DXComputeNormals and mesh after D3DXWeldVertices.
Sample allows you modify input parameters to processing functions in realtime, see mesh statistics after processing, apply normal lighting or environment mapping on meshes, visualize mesh normals (right "face" on picture) and save processed meshes to disk.
Sample comes in two compiled versions: against Direct3DX 8.0 and against Direct3DX 8.1. So you can see difference between different versions (and it exists - DirectX 8.1 rocks).

Available: Delphi version (C++Builder compilable) and TMT pascal version.
  08-Apr-2002
DirectX examples  
Generate X-File image Uploaded sample demonstrating how to fill ID3DXMesh object from D3DX8 helper classes with your custom data and save final mesh to disk in either binary or text format. As user data face_data.pas was taken, contained data in pascal arrays from Jan Horm site. After generating files in current directory sample loads generated text format x-file "FaceText.x" and display it on screen.

Available: Delphi version (C++Builder compilable) and TMT pascal version.
  04-Apr-2002
DirectX SDK examples 
Uploaded Samples D3DFramework for DirectX 8.1 (D3DFrame.zip). To demonstrate how to use it I've also uploaded Tutorials for Direct3D in DirectX 8.1 area. These tutorials have not changed at all since DirectX 8.0, but now I have found some time to look inside them to correct source formatting and coding errors. D3DFramework also got some fixes - mostly in "solidity" area. So I'll upload they versions for DirectX 8.0 silently in couple of days.
Note: Lighting sample perfectly works in both DirectX 8.0 and 8.1 versions of headers / D3DFramework, so you can look inside it too.
  31-Mar-2002
Delphi Direct3D headers 
Posted updated headers for both DirectX 8.0 and DirectX 8.1. This update fixes Borland C++Builder compliance issues. Also TD3DXColor type in D3DX8.pas are now just alias to TD3DColorValue type from Direct3D8/DirectXGraphics unit - so no more unnecessary typecasting.
  26-Mar-2002
Articles 
I've posted step-by-step instruction how "inject" Delphi ObjectPascel DirectX code in C++Builder DirectX projects: Compiling fusion DirectX projects: Delphi/C++Builder. It describe steps in building Nitro Font renderer Delphi/C++Builder Fusion sample.
  24-Mar-2002
Articles 
New article: How to compile MS DirectX 8.x SDK samples in C++Builder
  23-Mar-2002
Server problems 
Ups... i have problems with server for 2 days...
  21-Mar-2002
Articles 
I've posted renewed article: "How to compile ObjectPascal DirectX examples"
  19-Mar-2002
DirectX examples 
I've posted two new samples (grouped in one zip archive). These samples demonstrate usage of yet another DirectX font renderer.
NitroFont image 1 Samples demonstrate rendering of bitmap font format originally introduced by Nitro in FontStudio font editor and demonstrated in OpenGL FontTest application. Pros of font format: image with alpha channel, letter positions are stored in font file itself; cons: big file size, FontStudio generates monospace fonts.

As shown in right picture DirectX font renderer class can be used to repeat all features of original OpenGL demo.
NitroFont image 2 Font renderer is realized as class with functionality equivalent to CD3DFont from MS DirectX SDK samples, so in addition to Nitro way of rendering text you can also draw text scaled to window dimentions, pure 2D font (with positions pointed in 2D viewport window) and "pure" 3D rendering. This is demostrated in other sample - slightly modified Text3D sample from MS DirectX 8.0 SDK - shown on left.

There is another interesting side of example: it's posted for three compilers: Delphi, TMT pascal and C++Builder. All samples come with full source and EXE's. Delphi version include two samples shown in pictures and additionally can be compiled with C++Builder compiler. TMT pascal equal to Delphi one, but can be compiled guess...in TMT pascal.
But C++Builder sample is unique: it demostrates usage of Delphi Direct3D code (TNitroFont class used by Delphi and TMT pascal) in totally independant (from pascal) C++ code. This is possible due to usage of Borland compliant Direct3D headers in ObjectPascal code. So once more Text3D sample from MS DirectX 8.0 SDK was taken as an initial C++ code and modified to use TNitroFont object pascal class instead of CD3DFont to render spinning text (left picture) - final result is quite good!

Note: If you ever wandered how to use memory mapped files - you may look in NitroFnt.pas font loading routine.
  14-Mar-2002
Delphi DirectX demo 
This is the first time I refer to Delphi DirectX demo, but it was so cute...
As you can see at picture it's Rubic cube demo program/game, written by Nikolaj Kovaltchuk. Currently it's closed source but free. It includes library of most known positions, computer solver, good looking 3D view and it's written in Delphi/Direct3D! So while browsing pages above don't forget about Delphi demo download (there is a link to ZIP download at the bottom of page). Or hook at this direct download link rubic.zip - 586Kb (exe + D3DX8 helper DLL).
  10-Mar-2002
Utilities 
I've posted links to two utilities in Delphi resources section. These are CRLF converting utility and pascal preprocessor. In articles section you can find description of pascal preprocessor.
  06-Mar-2002
New site layout 
These were hard days of updating / moving / reformatting site contents. But now you can see (as I hope) more structured and easy to navigate site. New layout allows posting pictures in news, download areas, so they will come.
Some more content is still to come, currently I'm planning to post two command line utilities, rewritten articles about how to compile sources using DirectX library in Delphi/ C++Builder/ TMT pascal. So browse new site layout and notify me about broken links, etc.
  23-Feb-2002
DirectX SDK examples 
Fixed external dependencies in Delphi version of Lighting sample. Now it should compile against DirectX 8.0 version of D3DFramework library (D3DFrame.zip) and current Direct3D 8.0 headers.
  19-Feb-2002
DirectX SDK examples 
Uploaded new sample from DirectX 8.1 SDK althrow it compiles and runs just fine in 8.0 version. It's "Lighting": Delphi version and TMT pascal version.
  18-Feb-2002
TMT pascal 
New site section is up and running!!!
It's DirectX SDK resources for TMT pascal!
  14-Feb-2002
Borland & .NET 
Yesterday I forgot to mention what current DirectX 8.1 is not compatible with .NET even in MS products. But DirectX 9 is promized to have special version for .NET family of languages.
  13-Feb-2002
Borland & .NET 
Borland Unveils Product Strategy for Microsoft .NET Platform: Yahoo Press Release; Borland NET homepage.
  29-Jan-2002
Direct Show examples 
Posted updated DMOTexture3D example. This example demonstrates usage of DirectShow with Direct3D8, DMO filter realization in Delphi and 2D/3D transition effects with help of destination alpha. More info on download page.
  19-Jan-2002
Delphi Direct3D headers 
Posted updated headers for both DirectX 8.0 and DirectX 8.1. Updated D3DX8 - fixed UNICODE (WideChar) versions of some functions, list below. In 8.0: D3DXCompileEffectFromFile. In 8.1: D3DXCreateEffectFromFile/Resource, D3DXGetImageInfoFromFile/Resource, D3DXSaveSurfaceToFile, D3DXLoadVolumeFromFile/Resource, D3DXSaveVolumeToFile.
  13-Jan-2002
Delphi Direct3D headers 
Posted updated headers for both DirectX 8.0 and DirectX 8.1. Now, as promised, debug version of D3DX8 links directly to library provided by Microsoft. So as side effect you are reqired to have debug version of DirectX8 SDK installed to be able to run agains Debug version of D3DX (but this is right thing anyway). Also in this release fixed "D3DXSaveVolumeToFile" function in D3DX 8.1.
Note: to use debug versions you should define "DEBUG" conditional system in project properties and rebuid agains headers from "JEDI" directory.
  08-Jan-2002
C++Builder DirectX libraries 
Uploaded C++Builder LIB's for DirectX 8.1 and updated C++Builder LIB's for DirectX 8.0b. These libraries need to compile Direct3D code in C++Builder as LIB files provided by MS have incompatible format. With this revision I've changed naming scheme for D3DX8 libs - now they are named just like MS ones - d3dx8.lib and d3dx8d.lib. For compatibility reasons d3dx8ab.lib and d3dx8abD.lib are also provided. Now debug version of D3DX8 (d3dx8d.lib) are references directly to debug DLL provided by Microsoft not to proxy D3DX8abD.dll. Soon to be released new version of D3DX8 headers for Delphi will stop using this proxy dll too. So I hope some confusion, like including both DLL's (retail and debug) with release code, will finish soon.
  06-Jan-2002
TMT pascal 
Announcement. I'm proud to announce what TMT Pascal compiler version 4.0 out in december 2001 supports DirectX (up to 8.0) through JEDI based headers.
Since I've taken direct partipiation in prepare of TMT Pascal DirectX package - sometime you can see DirectX 8.1 update to TMT Pascal on this site.


Please inform me of any grammar or general errors, contained on these pages, Alexey Barkovoy

Hosted by uCoz