Jump to content
  • Advertisement
Sign in to follow this  
cyrfer

OGRE texture shadows

This topic is 2794 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 just wondering if someone can clue me in on the easy way to use texture shadows in OGRE. I assume the best look comes from the using the SHADOWTYPE_TEXTURE_ADDITIVE technique, and then doing some filtering in a shader, and for big areas using PSSM or CSMs. Before I add the fancy stuff, I'd just like to see some decent shadows. I've got the world's simplest scene, one directional light, and I'm seeing blocky texture shadows for a 512x512 texture on a 800x600 window. I know I'm doing something wrong.

What I really want to know is, do I really need the scene designer to specify every single property for the texture shadows (our artists will innevitably mess it up), or can I hard code some of them? For example, when you call:
scene_manager->setShadowCameraSetup( cam_setup ), is there ever a time when you would want something other than the LiSPSMShadowCameraSetup ?

I think not, and I'm happy about reducing the complexity of setting up the shadow stuff already. Do other simplifications exist? What do you use for all these...and why?
scene_manager->setShadowTextureCount( 2 );
scene_manager->setShadowTextureSize( 512 );
scene_manager->setShadowFarDistance( 0.0 );
scene_manager->setShadowDirLightTextureOffset( 0.9 );
scene_manager->setShadowTextureFadeStart( 0.7 );
scene_manager->setShadowTextureFadeEnd( 0.9 );
scene_manager->setShadowTextureSelfShadow( false );

Many thanks.

Share this post


Link to post
Share on other sites
Advertisement

I think not, and I'm happy about reducing the complexity of setting up the shadow stuff already. Do other simplifications exist? What do you use for all these...and why?
scene_manager->setShadowTextureCount( 2 );
scene_manager->setShadowTextureSize( 512 );
scene_manager->setShadowFarDistance( 0.0 );
scene_manager->setShadowDirLightTextureOffset( 0.9 );
scene_manager->setShadowTextureFadeStart( 0.7 );
scene_manager->setShadowTextureFadeEnd( 0.9 );
scene_manager->setShadowTextureSelfShadow( false );

I don't have a direct answer to your question, but quite apart from letting your artists tune these parameters, you are probably going to want to let your users tune them, for performance reasons. Shadows are generally one of the worse culprits for chewing up performance on lower-end machines, so the users will often need to be able to reduce shadow quality/size/distance, and even disable them altogether.

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.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!