[Scummvm-tracker] [ScummVM :: Bugs] #15486: TINYGL: triangles always override zbuffer from lines?

ScummVM :: Bugs trac at scummvm.org
Thu Nov 14 12:08:55 UTC 2024


#15486: TINYGL: triangles always override zbuffer from lines?
------------------------+----------------------
Reporter:  neuromancer  |      Owner:  (none)
    Type:  defect       |     Status:  new
Priority:  normal       |  Component:  Graphics
 Version:               |   Keywords:
    Game:               |
------------------------+----------------------
 It seems that when using TinyGL, rendering a line on top of a triangle can
 cause the line to be invisible, depending on the order of the rendering
 calls. In theory, the rendering order should not matter when depth
 testing/writing is enabled.
 This can be reproduced in the freescape engine, removing workaround for
 this issue located here:
 https://github.com/scummvm/scummvm/compare/638af45da0ad...79f7d38f3694
 #diff-
 be1a69b059b2d0790b564279ad27cce15d58d9dfe2e7d9d6e9ef7c81c5f5c0f4R362-R373

 To reproduce, modify the the affected code to render first planar, then
 non-planar objects:

 {{{
         for (auto &pair : offsetMap) {
                 pair._key->draw(gfx, pair._value);
         }

         for (auto &obj : nonPlanarObjects) {
                 obj->draw(gfx);
         }
 }}}

 Then, load the Total Eclipse CPC demo
 (https://downloads.scummvm.org/frs/demos/freescape/totaleclipse-cpc-
 demo.zip), switch the render to software, start the game and examine the
 plane from different angles.

 I have attached two images with and without the workaround.
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/15486>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list