3D

videosample2009061121380488.jpg

New Sample: XNA GS 3.1 Video Support

You probably heard by now that XNA Game Studio 3.1 is out.

After a quick download, uninstalling 3.0 and installing 3.1, I quickly put together this sample that shows how to use the new support for videos.

More info on the sample’s page, here.

VideoSample 2009-06-11 21-38-04-88

Or, if you’re in a hurry, here’s the direct link to the download: VideoSample.zip

multithreading.jpg

Screenshot

Multithreading

This post is intentionally vague :)

rimlighttest-2008-07-18-23-20-23-84.jpg

July Sample: Rim Lighting

I’m going to go on vacation soon, so I’m putting the July sample online. It’s not much, since I’ve been busy writing the Fur Rendering Tutorial, but I think it’s a nice effect.

The sample is dedicated to Rim Lighting, an effect seen in some "cute" games. Read more about it and get the source code here.

RimLightTest 2008-07-18 23-20-23-84

furrender-2008-07-09-01-26-51-97.jpg

Fur Rendering in XNA

My fur rendering article just went online on Ziggyware. It is an entry for the Summer Ziggyware XNA Article Contest, so if you like it, vote for it when voting begins, in a few days.

The article explains how to draw fur, animate it, and apply it on models.

You can read it here.

FurRender 2008-07-09 01-26-51-97

rimlighttest-2008-07-02-11-42-59-12.jpg

Coming Soon…

Fake Rim Lighting, for use in cute games (inspired by Super Mario Galaxy screenshots)

RimLightTest 2008-07-02 11-42-59-12 RimLightTest 2008-07-02 11-42-26-62

RimLightTest 2008-07-02 11-42-41-85

Fur

FurRender 2008-07-02 13-32-03-11 FurRender 2008-07-02 13-31-16-24

FurRender 2008-07-02 14-29-47-10 FurRender 2008-07-02 14-30-14-23

voxelzune.jpg

June Sample online: Voxels on Zune

For this month’s sample, I worked hard to try and render some heightmap terrain on Zune, using voxel rendering, but wasn’t very successful.

Voxel technology was used to render terrains in some older games, like Delta Force, Commanche series, and the game that did the best job ever with voxels (and one of my top 3 games of all time), Outcast.

Some pictures of the sample:

  • Running on the Zune, at 320*240

VoxelZune

  • Running on the PC, upscaled to 640 * 480

VoxelPC2

You can find the sample and source code here.

godswood-2008-06-05-23-18-16-73.jpg

School Projects with XNA

This semester at the university, we had a Graphics Processing Systems class. While old fixed-function OpenGl was used in courses and laboratory works, for the project, I chose to use my favorite graphics API in the whole world. Yup, you know what I’m talking about… the XNA Framework.

A few of my friends also got dragged into XNA, based on my two years of talking about how cool it is. Neither of them had any previous XNA experience, so I guided them to some tutorials and the creator’s club site and let them experience it from there. Also, popular request from them sparked the idea of an easy to use shadows library.

Godswood

From all the projects I’ve seen made, the one that I am most proud of is that of my beloved iubi-pufi-honey-bunny (read fiancee), Lidia. She made a great tree model inspired by George R. R. Martin’s works, all from scratch, and placed some mountains and water around it. After adding some falling snow, she decided to make the snow accumulate on the ground and trees, and came up with the idea to do some simple shader tricks and blend in the snow texture based on the time passed since the snow began to fall. The result looks very nice. Check it out for yourself, by downloading the binaries. (control the camera with directional keys and mouse, use [S] to toggle snow)

Godswood 2008-06-05 23-18-16-73 Godswood 2008-06-05 23-18-29-30

Godswood 2008-06-05 23-17-40-80

Island in the Ocean

For my project, I decided to try and implement Atmospheric Scattering and realistic water rendering. For atmospheric scattering, I learned from Javier Canton Ferrero’s sample. For realistic water rendering, I read, studied and converted to XNA Yuri Kryachko’s article from GPU Gems 2, “Using Vertex Texture Displacement for Realistic Water Rendering”. My palm trees were modeled by Lidia.

You can see the results below, and download the binaries here.

Use the gamepad, or keyboard+mouse for camera control. [Space] pauses the simulation, and [S] speeds it up.

image003 image004

image001

depthrecovery-2008-05-19-02-30-51-86.jpg

Can a 2D image intersect a 3D model?

Yes it can :)

My may sample is also my first public sample written in XNA Game Studio 3.0 CTP, and it shows how to restore the depth buffer from a depth texture.

This way, models drawn to a render target, with post processing applied to them can intersect and obscure normal models, drawn after all the post processing is done.

For more details, jump to the sample’s page: Restoring the Depth Buffer, where you can find a short explanation on how the sample works.

To dive right into the code, download it here. Please note that the sample is written in XNA Game Studio 3.0 CTP, but the technique also works just fine in 2.0.

DepthRecovery 2008-05-19 02-30-51-86