• Home
  • Project Overview
      • Back
      • GitHub Repository
      • DoxyGen
      • Contact
      • To Do List
  • Blogs
      • Back
      • Ionuţ Cava
      • Daniel Igna
  • Gallery
      • Back
      • Video Gallery
      • Dev Screenshots
      • Other Media

Small updates

A small update to this [ Multi-Agent Framework Test 1 ]
-New materials, shaders, shadows, collisions and so forth.

Andsome deferred lighting. 30 random lights.

Although all coding efforts are towards the forward renderer, the deferred renderer has not been left behind and was updated with the new RenderStateBlock system and the new shader structure.



P.S.: The quality of the video sucks, but FRAPS is freakin' out and I had to use SnagIT 8-|

DoxyGen documentation posted!

 

 As of now [3-March-2012, 19:00 GMT], a new menu link has been added to the homepage linking to the newly generated DoxyGen Documentation.

 

 

This documentation will be updated every 2 or 3 (major) revisions. Feel free to browse it as ALL source code is covered there.

New A.I. system, PhysX 3.1.1 and fixed that damned water transparency and depth sorting issue

The A.I. part:

For a final's exam this semester, I had to develop a multi-agent system that could play team-based 2-on-2 tenis (with a soccer ball) and came up with this:

It's just the first test of the AI Framework used to create multiple agents for single or team-based interactions. Just a test of visual sensors, communication, coordination and stuff like that. Also a test of thread safety for the SceneGraph as each entity's local transformation matrix is modified by the AI thread and rendered in a separate thread. 3 threads, one pointer :) Some shadow artifacts occur during mid-video, but that's due to the not yet finished PSSM system I'm working on. Also. don't mind the complete lack of animations :)) I have better things to code for now. Performance is choppy due to the Profiler from VS2010, Fraps, the code being compiled as a debug build, shader failing on the ball. Also, the quality is low as this video is used to pass my AI exam, and I don't have a lot of time to waste on compression.

The PhysX part:

nVidia released the 3.x iteration of it's PhysX SDK which you can read about >>here<< so I thought of adding it to the framework. Specifically the 3.1.1 iteration (info >>here<< ) After some long coding sessions, the API was up and running, driverless and really fast. Only simple box-collisions for now, but it proves that the API is syncing data with the SceneGraph nicely and in a thread-safe manner:

The water transparency stuff:

Water wasn't really transparent, because 2 very important states, culling = off, blending = on, weren't set correctly while rendering. This was due to the absence of a Render State Manager and a Render Queue. Everything was rendered via a recursive callback on the SceneGraph. Adding a Render Queue sorting method and some minor changes to the State Manager, I finally managed to properly switch states and render transparent objects in a back-to-front order. The result? Well, semi-transparent water:

Underwater transparency

Fixed water and added shadows. Now ... the SceneGraph ...

Well, water is up and ... flowing :) Reflections are working nicely and so are caustic effects. Refractions are good but transparency needs tweaking. The hard part's over:

 

Reflections working

Under water caustic effects

And shadow map generation is getting better and better. Only directional lights are working for now, but still:

Shadow Maps

  Now that the engine supports some more rendering eye-candy, back to logic behind the scenes. SceneGraph implementation is buggy, crash-prone, Resource Manager doesn't work, Mesh - SubMesh <-> SceneGraphNode parent <-> children conversion not working etc. But ... things are looking promising for the future.

Broken water and Post Processing effects

Been working on fixing water rendering issues (water plane Y-position keeps changing with camera movement) and ended up adding PostFX ;)) I'll post the water issues later (when I find a fix for them, so that I don't seem stupid for missing something obvious), but the post processing engine was needed for underwater rendering. So, since the code was already written, why not have some fun with: Anaglyph rendering:

Anaglyph rendering Bloom: Bloom Now, Depth of Field is already implemented, but depth calculations are still buggy and the image is just too blurred. Will fix that later. On another note, just signed up for the GameDev section of this: ImagineCup

New features as of October 2011

Since the vegetation demo from June 2010 and October 2011, the following features have been implemented in the framework:

(click on each title to see a description)

- Format independent geometry importer (using ASSIMP)

- Water rendering with reflection/refraction and caustics

- SceneGraph based hierarchy system in each scene

- Post Processing effects such as: Depth of Field, Bloom, 3D anaglyph rendering

- Memory safe resource manager for creation, retrieval and removal of assets

- OPCode based networking system

- Multi-modal input event system (using OIS)

- Multithreaded event system

- XML defines (config, scene structure, material definitions)

- Deferred rendering system as an alternative to the forward rendering system

- API independent sound playback interface

- Multi-camera support and management

- Much, much more

  • Cross Platform Networking Code and Server Code
  • Under the hood preview for everyone :)

Page 4 of 5

  • 1
  • 2
  • 3
  • 4
  • 5
© Divide Studio 2007 - 2026
Back to top
  • Follow via Github
  • Follow via Youtube
  • Follow via Vimeo
  • Follow via LinkedIn
  • Follow via Flickr
  • Follow via X