/// <summary>
/// Internal method for adding a solid renderable
/// </summary>
/// <param name="technique">Technique to use for this renderable.</param>
/// <param name="renderable">Renderable to add to the queue.</param>
/// <param name="noShadows">True to add to the no shadow group, false otherwise.</param>
protected void AddSolidRenderable(Technique technique, IRenderable renderable, bool noShadows)
{
SortedList passMap = null;
if (noShadows)
{
passMap = this.solidPassesNoShadow;
}
else
{
passMap = this.solidPasses;
}
for (var i = 0; i < technique.PassCount; i++)
{
var pass = technique.GetPass(i);
if (passMap[pass] == null)
{
// add a new list to hold renderables for this pass
passMap.Add(pass, new RenderableList());
}
// add to solid list for this pass
var solidList = (RenderableList)passMap[pass];
solidList.Add(renderable);
}
}