Shadow Mapping not working on latest devel builds

Bug #913361 reported by consultit
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Panda3D
Fix Released
High
Unassigned

Bug Description

Up to devel builds before 20111227 this code worked fine:

################
from direct.showbase.ShowBase import ShowBase
from pandac.PandaModules import *
from direct.actor.Actor import Actor

app = ShowBase()

# panda
pandaActor = Actor("panda-model",{"walk": "panda-walk4"})
pandaActor.setScale(0.01, 0.01, 0.01)
pandaActor.reparentTo(render)
pandaActor.loop("walk")
#plane
cm = CardMaker("plane")
cm.setFrame(-20, 20, -20, 20)
plane = render.attachNewNode(cm.generate())
plane.setP(270)
plane.setPos(0, 0, 0)

#Directional
Light1 = DirectionalLight("light1")
Light1.getLens().setFilmSize(40,40)
Light1.getLens().setNearFar(-20,20)
##Light1.showFrustum()
Light1Node = render.attachNewNode(Light1)
Light1Node.setHpr(90, -45, 0)
render.setLight(Light1Node)

#Spot
Light2 = Spotlight("light4")
Light2.setColor(Vec4(1, 1, 0, 1))
Light2Node = render.attachNewNode(Light2)
Light2Node.setPos(-50, -50, 50)
Light2Node.lookAt(0, 0, 0)
render.setLight(Light2Node)

#Shadow enable
Light1.setShadowCaster(True)
Light2.setShadowCaster(True)
render.setShaderAuto()

#camera
app.cam.setPos(0, -50, 20)
app.cam.lookAt(0, 0, 0)

#run
app.run()

#######################

But latest builds (I tried up to 20120108) give this output on console:

Known pipe types:
  glxGraphicsPipe
(all display modules loaded.)
:display:gsg:glgsg(error): at 4179 of panda/src/glstuff/glGraphicsStateGuardian_src.cxx : invalid operation
...
(.... more lines as above...)
...
:display:gsg:glgsg(error): at 4179 of panda/src/glstuff/glGraphicsStateGuardian_src.cxx : invalid operation
:display(error): Deactivating glxGraphicsStateGuardian.

and window output freezes.

System on which I tried :
* AMD64 - Linux Debian Squeeze - NVIDIA GeForce 9400 GT with driver version 270.41.19

Stable version (1.7.2) works fine.

Bye

Revision history for this message
rdb (rdb) wrote :

Thanks for reporting the issue. It appeared to be due to a change to the FBO code zhao made, which I've reverted for now. Your code seems to work fine on my Mac OS X machine now.

I poked the squeeze_amd64 buildbot, so the latest build incorporates my changes.

Changed in panda3d:
importance: Undecided → High
status: New → Fix Released
Revision history for this message
consultit (consultit) wrote : Re: [Bug 913361] Re: Shadow Mapping not working on latest devel builds
Download full text (3.1 KiB)

I tried that latest build and code works fine again.

Bye

dom 08/01/12 14:20 , rdb <email address hidden> ha inviato:
> Thanks for reporting the issue. It appeared to be due to a change to
>
> the FBO code zhao made, which I've reverted for now. Your code seems to
>
> work fine on my Mac OS X machine now.
>
>
>
> I poked the squeeze_amd64 buildbot, so the latest build incorporates my
>
> changes.
>
>
>
> ** Changed in: panda3d
>
> Importance: Undecided => High
>
>
>
> ** Changed in: panda3d
>
> Status: New => Fix Released
>
>
>
> --
>
> You received this bug notification because you are subscribed to the bug
>
> report.
>
> https://bugs.launchpad.net/bugs/913361
>
>
> Title:
>
> Shadow Mapping not working on latest devel builds
>
>
>
> Status in Panda3D:
>
> Fix Released
>
>
>
> Bug description:
>
> Up to devel builds before 20111227 this code worked fine:
>
>
>
> ################
>
> from direct.showbase.ShowBase import ShowBase
>
> from pandac.PandaModules import *
>
> from direct.actor.Actor import Actor
>
>
>
> app = ShowBase()
>
>
>
> # panda
>
> pandaActor = Actor("panda-model",{"walk":
> "panda-walk4"})
> pandaActor.setScale(0.01, 0.01, 0.01)
>
> pandaActor.reparentTo(render)
>
> pandaActor.loop("walk")
>
> #plane
>
> cm = CardMaker("plane")
>
> cm.setFrame(-20, 20, -20, 20)
>
> plane = render.attachNewNode(cm.generate())
>
> plane.setP(270)
>
> plane.setPos(0, 0, 0)
>
>
>
> #Directional
>
> Light1 = DirectionalLight("light1")
>
> Light1.getLens().setFilmSize(40,40)
>
> Light1.getLens().setNearFar(-20,20)
>
> ##Light1.showFrustum()
>
> Light1Node = render.attachNewNode(Light1)
>
> Light1Node.setHpr(90, -45, 0)
>
> render.setLight(Light1Node)
>
>
>
> #Spot
>
> Light2 = Spotlight("light4")
>
> Light2.setColor(Vec4(1, 1, 0, 1))
>
> Light2Node = render.attachNewNode(Light2)
>
> Light2Node.setPos(-50, -50, 50)
>
> Light2Node.lookAt(0, 0, 0)
>
> render.setLight(Light2Node)
>
>
>
> #Shadow enable
>
> Light1.setShadowCaster(True)
>
> Light2.setShadowCaster(True)
>
> render.setShaderAuto()
>
>
>
> #camera
>
> app.cam.setPos(0, -50, 20)
>
> app.cam.lookAt(0, 0, 0)
>
>
>
> #run
>
> app.run()
>
>
>
> #######################
>
>
>
> But latest builds (I tried up to 20120108) give this output on
>
> console:
>
>
>
> Known pipe types:
>
> glxGraphicsPipe
>
> (all display modules loaded.)
>
> :display:gsg:glgsg(error): at 4179 of
> panda/src/glstuff/glGraphicsStateGuardian_src.cxx : invalid operation
> ...
>
> (.... more lines as above...)
>
> ...
>
> :display:gsg:glgsg(error): at 4179 of
> panda/src/glstuff/glGraphicsStateGuardian_src.cxx : invalid operation
> :display(error): Deactivating glxGraphicsStateGuardian.
>
>
>
> and window output freezes.
>
>
>
> System on which I tried :
>
> * AMD64 - Linux Debian Squeeze - NVIDIA GeForce 9400 GT with driver version
> 270.41.19
>
>
> Stable version (1.7.2) works fine.
>
>
>
> Bye
>
>
>
> To manage notifications about this bug go to:
>
> https://bugs.launchpad.net/panda3d/+bug/913361/+subscriptions
>
>
>

---- Nuova grafica e nuove funzionalità! Crea subito Gratis la tua nuova Cas...

Read more...

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.