dinsdag 27 mei 2008
virtual cube maps
here are 2 pics of rendering to an unrolled depth cube map, just RGB for now, because depth cube maps are recently supported on geforce 8x hardware, it is unrolled for now, in a standard texture
Paul
woensdag 21 mei 2008
screenshots..
zondag 18 mei 2008
code changes
I've rewritten certain parts of the code, mainly 'alWorld.cpp', alShadowmap.cpp, and alCamera.cpp.
before alWorld had 2 arraylists, containing both deferred and forward shaded polys. I've moved this variables to the alCamera.h so every camera has it's own set of visible polygons..much more easier to maintain. Since i can query frustum calls directly from the camera class.
plus it is easier to create special effects like mirrors, portals.
I hope to implement shadowmapping today.
void alWorld::doShadowPass(alLight* light)
{
//setup matrices for this light
if(light->setupMatrices())
{
alShadowMap *map = light->getShadowMap();
//render to FBO(depth only)
map->begin();
alCamera * cam = map->getCamera();
//get intersecting polys
fillPolys(cam);
//fill depth buffer
zOnlyPass(cam);
//end fbo
map->end();
//wxLogMessage(_T("NumPolys is %d"), cam->getDeferredPolys()->size());
}
}
before alWorld had 2 arraylists, containing both deferred and forward shaded polys. I've moved this variables to the alCamera.h so every camera has it's own set of visible polygons..much more easier to maintain. Since i can query frustum calls directly from the camera class.
plus it is easier to create special effects like mirrors, portals.
I hope to implement shadowmapping today.
void alWorld::doShadowPass(alLight* light)
{
//setup matrices for this light
if(light->setupMatrices())
{
alShadowMap *map = light->getShadowMap();
//render to FBO(depth only)
map->begin();
alCamera * cam = map->getCamera();
//get intersecting polys
fillPolys(cam);
//fill depth buffer
zOnlyPass(cam);
//end fbo
map->end();
//wxLogMessage(_T("NumPolys is %d"), cam->getDeferredPolys()->size());
}
}
zaterdag 10 mei 2008
some thoughts..
i did some research..mostly reading white papers about deferred shading, mostly about setting up the g-buffer..but most of the papers stated that it is difficult..to do transparancy. But i don't see the big deal, i first render all deferred geometry, than do the lighting pass, (yes lightning is limited). Then switch to forward shading, and can all do of nice stuff. Right now i've set the limit to the 8 hardware openGL lights. Which i think is enough, for surfaces that really need to be highlighted, we can get some really nice effects.
Next big thing is integrating physics, i've set up the basic framework already, every material can have its special properties, mass, material, specific gravity. I'm going to integrate bullet physics
(http://www.bulletphysics.com/Bullet/wordpress/) they did a great job..i'm impressed especially by their softbody physics.
Paul
dinsdag 6 mei 2008
test
maandag 5 mei 2008
Abonneren op:
Posts (Atom)