base.saveCubeMap is broken more then in 1.5.4

Bug #311040 reported by Treeform
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Panda3D
Fix Released
Medium
rdb

Bug Description

base.saveCubeMap would break if other buffers where running in 1.5.4 range
but in 1.6.0 cvs head it competently messes up the and cases tons of errors to come from

AssertionError: do_has_ram_image() at line 2688 of c:\p\panda3d\panda\src\gobj\texture.cxx
:display:gsg:glgsg(error): EXT_framebuffer_object reports non-framebuffer-completeness.
:display:gsg:glgsg(error): FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT

and then every frame after:
...
:display:gsg:glgsg(error): EXT_framebuffer_object reports non-framebuffer-completeness.
:display:gsg:glgsg(error): FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT
...
:display:gsg:glgsg(error): EXT_framebuffer_object reports non-framebuffer-completeness.
:display:gsg:glgsg(error): FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT
...

Treeform (starplant)
Changed in panda3d:
assignee: nobody → starplant
importance: Undecided → Medium
milestone: none → 1.6.0
status: New → Confirmed
Revision history for this message
rdb (rdb) wrote :

Could you provide some sample code?

Revision history for this message
Treeform (starplant) wrote : Re: [Bug 311040] Re: base.saveCubeMap is broken more then in 1.5.4

import direct.directbase.DirectStart
base.saveCubeMap('maps/mask-#.png', size = 512)

-------------------------------------------------------------------------

DirectStart: Starting the game.
Known pipe types:
  wglGraphicsPipe
(all display modules loaded.)
:util(warning): Adjusting global clock's real time by 1.53595e-005 seconds.
:display:gsg:glgsg(error): EXT_framebuffer_object reports
non-framebuffer-completeness.
:display:gsg:glgsg(error): FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT
tex cube_map maps/mask-#.png
  cube map, 512 x 512 pixels, each 4 bytes, rgba
  min default, mag default, aniso 1, border 0 0 0 1
  no ram image

Assertion failed: do_has_ram_image() at line 2688 of
c:\p\panda3d\panda\src\gobj\texture.cxx
Traceback (most recent call last):
  File "C:\p\pstuff\cubemapmaker\zip\planetcooker.py", line 14, in <module>
    base.saveCubeMap('maps/mask-#.png', size = 512)
  File "C:\Panda3D-1.6.0\direct\src\showbase\ShowBase.py", line 2046,
in saveCubeMap
    source = tex)
  File "C:\Panda3D-1.6.0\direct\src\showbase\ShowBase.py", line 1983,
in screenshot
    saved = source.write(filename)
AssertionError: do_has_ram_image() at line 2688 of
c:\p\panda3d\panda\src\gobj\texture.cxx

On Thu, Feb 19, 2009 at 10:59 PM, pro-rsoft <email address hidden> wrote:
> Could you provide some sample code?
>
> --
> base.saveCubeMap is broken more then in 1.5.4
> https://bugs.launchpad.net/bugs/311040
> You received this bug notification because you are a direct subscriber
> of the bug.
>

Revision history for this message
rdb (rdb) wrote :

Okay, I've traced it down to these lines in panda/src/glstuff/glGraphicsBuffer_src.cxx :
        if (get_rtm_mode(i) != RTM_bind_or_copy) {
          continue;
        }
Uncomment them to make it work. For some reason, it doesn't want to do anything when the mode isn't RTM_bind_or_copy.
I don't have a clue what RTM_bind_or_copy is, I gotta check that before I can safely disable this.

rdb (rdb)
Changed in panda3d:
assignee: starplant → niertie1
status: Confirmed → In Progress
Revision history for this message
rdb (rdb) wrote :
Changed in panda3d:
status: In Progress → Fix Committed
rdb (rdb)
Changed in panda3d:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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