[brlcad-tracker] [ brlcad-Bugs-1812560 ] Cutaway view 210x slower
Open Source Solid Modeling CAD
Brought to you by:
brlcad
From: SourceForge.net <no...@so...> - 2007-10-13 09:33:40
|
Bugs item #1812560, was opened at 2007-10-12 21:15 Message generated for change (Comment added) made by clock3 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=640802&aid=1812560&group_id=105292 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Raytrace Group: unexpected behavior Status: Open Resolution: None Priority: 5 Private: No Submitted By: Karel Kulhavy (clock3) Assigned to: Nobody/Anonymous (nobody) Summary: Cutaway view 210x slower Initial Comment: OpenBSD 4.0 Pentium M 1500MHz BRL-CAD 7.10.3 from the CVS rt ronja.g head rt ronja.g headcut The headcut, cutaway view of head is 210x slower on my machine to render than the other. ---------------------------------------------------------------------- >Comment By: Karel Kulhavy (clock3) Date: 2007-10-13 09:33 Message: Logged In: YES user_id=1194787 Originator: YES File Added: bad.txt ---------------------------------------------------------------------- Comment By: Karel Kulhavy (clock3) Date: 2007-10-13 09:33 Message: Logged In: YES user_id=1194787 Originator: YES Did profiling. gprof -E mcount -E _mcount. OK.txt is the fast one, bad.txt is the slow one. File Added: OK.txt ---------------------------------------------------------------------- Comment By: John Anderson (johnranderson) Date: 2007-10-13 05:29 Message: Logged In: YES user_id=1185553 Originator: NO Typically cutaway images are produced using rt by subtracting (or intersecting) an RPP with a top level object. Rt performs this operation by pushing the subtraction (or intersection) down into each region. The RPP ends up being referenced by every region and also listed in every space partition box. The effect of this is that every region gets evaluated on every ray (because every ray hits the RPP which is part of every region). This significantly slows down the raytrace. In the ronja.g model, a bit better performance can be obtained by mirroring the cutaway RPP in the Y direction and intersecting with that rather than doing the subtraction (this produces smaller region bounding boxes, and so, better performance). Much better performance could be obtained with a special option to rt for doing cutaways that specified a cut plane. The calculated ray result could be modified according to the cut plane before being passed to the shader. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=640802&aid=1812560&group_id=105292 |