compositors & schemes

What it says on the tin: a place to discuss proposed new features.
Post Reply
flammable
Gnoblar
Posts: 17
Joined: Mon Mar 01, 2010 4:10 pm

compositors & schemes

Post by flammable » Mon Apr 19, 2010 7:09 pm

Hey recently I've been fighting with material and compositor schemes, you might have seen my thread.
Unfortunately they have won :P . The good news is that it's Ogre causing trouble and not me (problems in Ogre are fixed easier :) ).

* atleast I think so.

After working with compositors I've found 1 bug and I have 1 feature requests:
bug: If a compositor only contains techniques with scheme names Ogre says the technique has no supported techniques and, to make things worse, setting a scheme will crash.
To illustrate the problem:

Code: Select all

compositor Invalid_Compositor
{
	technique
	{
		scheme JustAName
	}
	
	technique
	{
		scheme Test
	}
}

compositor Valid_Compositor
{
	technique
	{
	}

	technique
	{
		scheme JustAName
	}
	
	technique
	{
		scheme Test
	}
}
Invalid_Compositor will output: Compositor Invalid_Compositor has no supported techniques and calling CompositorInstance::setScheme will crash, Valid_Compositor will work just fine.

feature request: Compositors lack the feature to set a material_scheme for render_quad passes. As it is now the material_scheme option only sets the scheme for render_scene passes.
Another example to illustrate the problem:

Code: Select all

compositor ACompositor
{	
	technique
	{
		target_output
		{
			material_scheme AnOtherVeryInterestingSchemeName
			
			pass render_scene
			{
				//materials used here with a supported technique for the scheme will use the scheme name.
			}
			
			pass render_quad
			{
				//materials used here won't do that.
			}
		}
	}
}
A thing to note: Viewport::setMaterialScheme doesn't have any effect on materials used in render_quad passes either. So in other words it's impossible to affect techniques used for post-screen effects.

btw: I'm using the 28 February 2010 stable branch.

I hope that these issues can be fixed (or don't have to be fixed because I'm thinking wrong)(or already are fixed :P ).
0 x

Post Reply