Release candidate for 1.5.0...

Hey guys… the latest automated build, 2008.02.28, is a release candidate for version 1.5.0. I need you guys to run it and tell me which sample programs work correctly, and which don’t.

Download in progress :slight_smile:

Download in progress :slight_smile:

Gagh, I read in the release notes,
after all that trouble I had with normal maps,
now it’ll probably be as easy as clicking a button or something!
Thanks, I’m going to download it later on tonight!
(I’m still resting from my earlier normal mapping struggles)

Python 2.5.2 (final) is available already. It’s good to update Panda’s python :slight_smile:

i second birukoff.

OK, will do.

When per-pixel lighting is enabled, setTexScale doesn’t work. No any warnings, anything.

ts = TextureStage('textureStage0')
ts.setMode(TextureStage.MModulate)
nodePath.setTexture(ts, texture)
nodePath.setTexScale(ts, 4, 4)

Many texture modes don’t work either (MReplace, for example). Will it be fixed in release?

All the examples work for me.

1 toon shader not powerfull enough
2nd works
3rd toon shadre does not support multiple render torgets
File “./Procedural-Cube/Tut-Procedural-Cube.py”, line 156, in toggleTex
cube.setTexture(self.testTexture)
TypeError: NodePath.setTexture() argument 1 must be Texture, not NoneType
particle pannel Z and Y cords need to be flipped (ring and square emitters are flat they should face you)
shadow demo: video driver cannot create an offscreen buffer
shadow demo: video driver cannot create an offscreen buffer

could you enable libpandaode? discourse.panda3d.org/viewtopic.php … ibpandaode
its part of panda in the svn and only c++ can call it so far.

Birukoff – wow, you’re digging deep already.

The answer is, no, the shader generator doesn’t yet support all the features of the rendering pipeline. Here’s the current status:

//               Currently supports:
//               - flat colors
//               - vertex colors
//               - lighting
//               - normal maps
//               - gloss maps
//               - glow maps
//               - materials, but not updates to materials
//               - 2D textures
//               - texture stage modes: modulate, decal, add
//               - light ramps (for cartoon shading)
//
//               Not yet supported:
//               - 3D textures, cube textures
//               - texture stage modes: replace, blend
//               - color scale attrib
//               - texgen
//               - texmatrix
//               - fog
//               - other TextureStage::Modes
//

That’s what I was wondering about was fog,
I was never able to get it to work in 142.
I think I spent 3 weeks trying to get fog to work with normal maps.

you would have to write your own shader in order to make fog work with normal maps - but josh might beat you to it with his super automated shaders!

Shadow demo doesn’t work well. Panda has no shadow. Teapot shadow is projected on the teapot itself. See the screenshot;

oh i had the same problem before but not any more … i dont know what is going on with your card now…

This makes the shadows work:

  LBuffer = base.graphicsEngine.makeOutput(
                 base.pipe, "offscreen buffer", -2,
                 props, winprops,
                 0,#GraphicsPipe.BFCanBindEvery | GraphicsPipe.BFRttCumulative | GraphicsPipe.BFRefuseWindow,
                 base.win.getGsg(),base.win)

I think my card can only create parasite buffers should this take into account such cards?

Birukoff - could you do me a favor? Add this print statement to the shadow program, and tell me what it prints:

        print "buffer type=", LBuffer.getType()

I use ATI X1600 Mobility with drivers v8.1. Since the logs contain quite a few error messages, I post them fully.

Log from Panda 1.5.0:

Commandline: C:\Panda3D-2008.02.28\python\ppython.exe C:\PANDA3~1.28\samples\Shadows\TUT-SH~2.PY
Workingdirectory: C:\Panda3D-2008.02.28\samples\Shadows
Timeout: 0 ms

Known pipe types:
  wglGraphicsPipe
(all display modules loaded.)
:util(warning): Adjusting global clock's real time by 0.0103351 seconds.
:util(warning): Adjusting global clock's real time by -2.3677 seconds.
DirectStart: Starting the game.
Warning: DirectNotify: category 'Interval' already exists

buffer type= GLGraphicsBuffer

:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2634 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display(error): Deactivating wglGraphicsStateGuardian.

Process "Panda 1.5.0 RC1" terminated, ExitCode: 00000000

Log from Panda 1.4.2:

Commandline: C:\Panda3D-1.4.2\python\ppython.exe C:\PANDA3~1.2\samples\SA71F8~1\TUT-SH~2.PY
Workingdirectory: C:\Panda3D-1.4.2\samples\Sample-Programs--Shadows
Timeout: 0 ms

Known pipe types:
  wglGraphicsPipe
(3 aux display modules not yet loaded.)
:util(warning): Adjusting global clock's real time by 0.888319 seconds.
:util(warning): Adjusting global clock's real time by -0.145642 seconds.
DirectStart: Starting the game.
Warning: DirectNotify: category 'Interval' already exists

buffer type= GLGraphicsBuffer

:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display:gsg:glgsg(error): at 2424 of c:\temp\mkpr\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : GL error 1282
:display(error): Deactivating wglGraphicsStateGuardian.

Process "Panda 1.4.2" terminated, ExitCode: 00000000

I have just discovered that probably it has nothing to do with this particular release. Panda has no shadow and the teapot shadow is projected on the teapot itself both in 1.4.2 and 1.5.0. Sorry for not checking it earlier :blush:
Also, I must add the shadow appears on the teapot only when I increase Push-Bias value.

I’ve just put up a new release candidate. (2008.03.04)

  • shadow problem was a Radeon driver bug. Added code to detect radeons and disable the problematic code.

  • made the shadow sample less picky about what kind of buffer it uses.

  • fixed some buffer related texture-copy issues.

  • added warnings if you try to use an unimplemented aspect of the shader generator - ie, fog, color scale, tex matrix, or tex gen.

  • upgraded to python 2.5.2.

  • fixed that bug in the procedural cube demo.

  • included all of David’s recent bugfixes.

  • toon-basic still requires a full-featured driver including ARB_framebuffer_object and ARB_draw_buffers. If you got “not powerful enough” before, you’re still going to get it.

  • I don’t have time to do libpandaode. I need to get this out the door. But I’ll try to get it into 1.5.1.

  • No idea if I fixed birukoff’s anonymous error.

Shadow sample now works well on my radeon.