improved csg rendering using overlap graph subtraction sequences
The Sequenced Convex Subtraction (SCS) algorithm for Constructive Solid Geometry (CSG) sequentially subtracts convex volumes from the z-buffer. The performance of the algorithm is determined by the length of the subtraction sequence used. View-independent subtraction sequences are O ( n 2 ) in length. These can be reduced to O ( kn ) if the maximum depth complexity k, which ranges between 1 and n, is known or can be determined.We present an improvement to subtraction sequence generation which uses object space overlap information to give O ( n ) length sequences in the best case and (unchanged) O ( n 2 ) sequences in the worst case. The approach is based on what we term an overlap graph. We also discuss a unifying approach combining overlap graph based processing with the Sequenced Convex Subtraction (SCS) CSG rendering algorithm. Finally, we present experimental results which show performance improvements, depending on the spatial arrangements of objects.
csg rendering algorithm graph algorithm