Jump to content
  • Advertisement
Sign in to follow this  
benjamin bunny

Try my shadows demo

This topic is 5440 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm still looking at ways I can improve it, so there's a chance I'll optimise the shadows a bit more. Doing scissor test optimisations and ranged lights will probably improve the speed of shadow rendering by quite a bit.

I may also play with parallax bump mapping, which Ysaneya suggested above.

Share this post


Link to post
Share on other sites
Advertisement

"No offense, but I have no interest in making my demos work on crappy intel integrated chipsets with 5-year-old technology..",


That's fine then - although I sort of feel curious now and want to see it work !

It is interesting though - that even in the high tech world of software people know basically close to zero about something as important and integral to their job as graphics cards.

I think it's a quandry - do we write the best games using the best cards that only serious gamers would use - or do we write games that the majority can play easily. I'm not sure of the answer myself ...

Share this post


Link to post
Share on other sites
Quote:
Original post by Tera_Dragon
I've got an ATI card, with chip type RS200M. But when I go to d/l the latest drivers from ati.com there are only the following options:


If it's an ATi and it's not a Radeon 9500 or greater then there's no way it's going to work on your hardware.

Share this post


Link to post
Share on other sites
Quote:
Original post by benjamin bunny
Quote:
Original post by Tera_Dragon
I've got an ATI card, with chip type RS200M. But when I go to d/l the latest drivers from ati.com there are only the following options:


If it's an ATi and it's not a Radeon 9500 or greater then there's no way it's going to work on your hardware.

:( damn crappy laptop.

Share this post


Link to post
Share on other sites
I think though, that there are many optimizations that can be done for the shaders.Like using normalization cubes, not normalizing the normals, or using texture lookups instead of pow() functions. It will reduce the quality, but it will run faster on older cards(like mine). Also, why don't you use CG runtime? It will produce better programs based on they type of the card.

Share this post


Link to post
Share on other sites
Quote:
Original post by Optus
After I confirm(or deny, for that matter) full screen mode I get:

Error loading shader: vertex shader attach error

Function : Mirage::ShaderManager::loadProgram
File: \BenMobile\My Documents\Projects\democd\DemoCD\source\modules\ShaderManager\ShaderManager.cpp
Line : 146

Immediately after this it General protection faults.

I also get this error.

My hardware:
Athlon XP 2600+
1GB RAM
GeForce FX5200

I haven't tried updating my graphics drivers - I currently have the nVidia 56.72 drivers installed.

Share this post


Link to post
Share on other sites
it looks realy great.
but i just wonder why when i turn the AA on it doesnt affect
the FPS .even when i change the AA from nvidia's display driver


amd athlon xp2400+
512 MB PC3200
nvidia geforce fx5900XT

Share this post


Link to post
Share on other sites
>>I'd like to do it, but it's not really an option due to time constraints. <<

so much to do so little time.
personally i would nt worry about optimizing it at this stage just try to get it looking as good as possible on your card.
yes add parallax mapping its very easy to do, just 3 lines more to the shader

float height = texture2D( tex0, gl_TexCoord[0].xy).a;
height = height * parallax_amount - ( parallax_amount * 0.5 );
texUV = gl_TexCoord[0].xy + (V.xy * height);

in this case tex0.a holds the textures heights.
though this will make the shaders run even slower :)

personally getting it right visually first is more correct.
if u do decide to make it quicker the best way like i said is to stick as much stuff in the vertex shader as possible, often without to much impact on the visuals (just a lot quicker), what u most likely will need to do first though is go through all the meshes in the scene checking to see if any triangles edges are to long and if so tesselating them to a certain length.
this creates a lot more vertices but will improve framerate by letting u stick more stuff in the vertex shaders.
increasing vertex count is practically a non issue eg a gffx5200 (the slowest shader card around) can do more than 50 million verts/sec.
with most of the stuff i'm doing now i dont even crack the 1million mark. using 2% of the cards potential :)

Share this post


Link to post
Share on other sites
Well at one point I was calculating the eye vector in vertex coords and then interpolating it. It wasn't pretty. I may add a DOT3 extension code path though, which would work on a lot more hardware and would save me writing more shaders.

As it happens I'd just finished implementing parallax mapping when you made your post. I make it just 2 extra lines in Cg (I could make it one, but it wouldn't be pretty). It seems a pretty dirty hack though, and although I'm getting good results from most angles, from more obtuse angles I get some bad artifacts. I'm in the process of blurring my normal maps to see if I can reduce this, but it's making the bricks look like they've melted [smile]. Any idea how to reduce this? I'm using the offset limiting method described here

Share this post


Link to post
Share on other sites
>>Any idea how to reduce this<<

due to the way parallaxmapping works theres no much u can do except to use a small parallax_amount value.
>> I'm in the process of blurring my normal maps to see if I can reduce this<<
are u using the normalmaps to get the the parallax amount, im just using a heightmap (blurring does give a better result because the steps between the values are not so large)
(edit)also try to maximize the image spread in the texture channel eg instead of heights in the texture going from say 32->55 adjust the levels to 0->255

>>Well at one point I was calculating the eye vector in vertex coords and then interpolating it. It wasn't pretty.<<

yes if youve got large polygons working by per vertex aint the best, thats why its best to go through first splitting the edges that are longer than a certain length and use the tesselated meshes, this will minimize the visual errors (thoiugh of course its not gonna look as good as 100% perpixel) but its gonna run a lot faster

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!