Here's a few more avatars added to the shadow example. SHADOW_AREA is set to 10,10 and SHADOW_RES is set to 512 to maintain sharp shadows. Are you able to get 5 shadows here?
Code:
import viz
viz.go()
#Add ground model
ground = viz.add('tut_ground.wrl')
#Add avatars
avatar = viz.add('vcc_female.cfg',pos=(-4,0,12),euler=(180,0,0))
avatar2 = viz.add('duck.cfg',pos=(-2,0,12),euler=(180,0,0))
avatar3 = viz.add('vcc_male.cfg',pos=(0,0,12),euler=(180,0,0))
avatar4 = viz.add('male.cfg',pos=(2,0,12),euler=(180,0,0))
avatar5 = viz.add('female.cfg',pos=(4,0,12),euler=(180,0,0))
avatar.state(5)
avatar2.state(1)
avatar3.state(7)
avatar4.state(9)
avatar5.state(5)
#Shadow resolution (power of two)
#Higher values mean sharper shadows, but take more texture memory
SHADOW_RES = 512
#Postion of shadow projector
SHADOW_POS = [0,10,12]
#Controls size of orthographic shadow projector
#Large values mean larger area is covered, but resolution will be diluted
SHADOW_AREA = [10,10]
#Create shadow projector
import Shadow
shadow = Shadow.ShadowProjector(size=SHADOW_RES,pos=SHADOW_POS,area=SHADOW_AREA)
#Add avatar as a shadow caster
shadow.addCaster(avatar)
shadow.addCaster(avatar2)
shadow.addCaster(avatar3)
shadow.addCaster(avatar4)
shadow.addCaster(avatar5)
#Add ground as shadow receiver
shadow.addReceiver(ground)