On October 23 I started a new exciting project of a driving simulation for Windows and XBox360, named "Oversteer". After the first day, the oversteer project website received more than 300 visits and the most important italian portal about driving simulations drivingitalia.net posted an article in the news section and in the forum.
Thursday, October 25, 2007
Thursday, October 4, 2007
F1 Japan GP comment
Ferrari did a great mistake with the strategy: starting with intermediate tyres was a big risk and Ferrari's drivers went out of track several times during the safety car laps! The email from FIA which constrained teams to start with full wet tyres arrived to Ferrari after the GP start! But this fact is only an extenuating circumstance to the big mistake of starting with intermediate tyres. Kimi Raikkonen did not succeed to overtake Kovalainen in the last laps, losing the last chances to win the Drivers' Championship.
Fernando Alonso did a mistake due to the tenseness but also to some aerodynamics problems on his car, caused by a previous collision with Vettel. Lewis Hamilton was very able to manage such a difficult race but he was very lucky too because he had no damage in a collision with Kubica.
Vehicle dynamics for racing games
I found in the net an interesting tutorial (in english) about vehicle dynamics for racing games, written by Ted Zuvich. This tutorial is a good starting point to create a racecar simulation game.
download tutorial
Wednesday, October 3, 2007
My workshop at Webbit 2003
During Webbit , an international exposition of ICT technologies, which took place in Padova in May 2003, i did a workshop titled "3D Engine Architecture" for the italian website gameprog.it.3D Engine Architecture Workshop slides
Introduction to SDL library
SDL (Simple DirectMedia Layer) is a multiplatform multimedia library. It's very useful for writing 2D arcade games which can run on all the main platforms: Windows, Linux and Mac OS X. I wrote a little introductory article, which you can download from the link below.
article: Introduction to SDL
article: Introduction to SDL
Tuesday, October 2, 2007
DirectX 9.0 Shaders articles
This is a little series of articles about shaders in DirectX 9.0 i wrote in italian language for an italian magazine.
article1: Introduction to Vertex Shaders
article2: Using shaders in Win32 applications
article3: Lighting with shaders
article4: Pixel Shaders architecture
article1: Introduction to Vertex Shaders
article2: Using shaders in Win32 applications
article3: Lighting with shaders
article4: Pixel Shaders architecture
PortalX Engine Tutorials
After i created the prototype of the PortalX Engine, i realized it could be a good starting point for explaining how portal rendering works. So i wrote a series of tutorials about the design and the implementation of a simple portal engine. These 6 tutorials are now available for download in pdf format. I apologyze with foreign people, but they are in italian language because i wrote them for an italian magazine.
PortalX Tutorials download:
MD2 Bump mapping viewer
Looking at animated models in the widespread MD2 (Quake 2) format i noticed they generally are very poor of details because of the limited number of polygons supported by this format. So i had the idea to use bump mapping to improve their detail. I wrote a little viewer for MD2 models rendered with a bump mapping effect. I used shaders written in HLSL using the shader model 2.0 for DirectX 9.0c. The only difficulty was on pre-computing tangents. In fact an MD2 animated model stores a vertex list for every key-frame of the animations. So is necessary to compute tangents for every key-frame. In a typical model there are hundreds of key-frames so this operation is very slow if it's done after loading the model. The solution is to pre-compute the tangents and store it in a separate file; in fact the md2 format does not support tangent data in the vertex format.Features:
XBsp Engine
In 2004 i was reading about Quake 3 engine design and so i decided to create my own prototype of engine based on bsp trees. It uses an interesting trick to speed-up the rendering of a huge level: pre-computed potential visibility set. The entire level is subdivided in convex sectors and then for every possible position and orientation of player camera are computed the adjacent visible sectors. All these computations are done at level creation time by the bsp compiler which makes a .bsp file. At runtime the engine reads the potential visibilty set and renders only visible sectors. This permits a great improvement in performances. Another interesting trick is used for speed-up collision testing: the engine uses low detail meshed, called brushes, for a first collision test.Features:
- Scene management based on bsp trees, optimized for indoor environments
- Pre-computed Potential Visibility Set
- Scene file in Quake3 .bsp format
- Lighting based on lightmaps
- Animated characters in MD2 format
- Collision detection based on low detail meshes (brushes)
- Game data stored in compressed archive
- Sound support (mp3/ogg/wav/midi)
- Supported OS: MS Windows 2000/XP
- Uses DirectX 9.0 API
PortalX Engine
This is the first 3D Engine i developed. In early 2002 i was interested in a technique of space partitioning called "portal rendering" and so i developed a little prototype of engine based on this technique. I wrote a series of articles about the making of this engine, published by the italian magazine "Computer Programming".Features:
- Scene management based on portal rendering
- Custom scene file format (.px) (Is provided an exporter for 3DSMax)
- Realtime mirror effect
- Teleport effect
- Lighting based on lightmaps
- Animated characters in MD2 format
- Supported OS: MS Windows 2000/XP
- Uses DirectX 8.0 or OpenGL 1.3 API
Video of the demo:
Welcome!
In this blog we will speak about videogames programming and 3D Graphics in general. Another interesting theme is racecar vehicle dynamics and racecar simulation software.
Subscribe to:
Comments (Atom)
