3

I am working on 3d planet terrain visualization right now. My terrain visualization method is quite common and based on level of detail rendering. There are N levels of detail. One of such level is showed on the picture:

enter image description here

When required level of detail is searched frustum culling is performed.

The frustum culling is performed by intersection of frustum with oriented bounding boxes. These bounding boxes form bounding volume hierarchy, so when zoom in to the blue tile on the sphere is performed its green, yellow, etc parent tiles are checked for visibility.

Intersection of frustum with oriented bounding box consumes too much cpu time. So I'd like to ask what methods are commonly used to perform such kind culling ?

deephace
  • 324
  • 3
  • 15

1 Answers1

2

You can optimize the AABB checks, or use spheres. What is too much CPU time? How many AABB checks are being done? I would comment, but I don't have enough rep.

fionbio
  • 3,368
  • 2
  • 23
  • 38
  • Hi, I am using OBB checks. Using spheres or AABB isn't a good idea in my case because there are nodes whose sphere intersects frustum but they aren't visible, i.e. their bounding box is invisible. In my case it turns to be additional data loading which is not eligible. – deephace Dec 04 '12 at 12:48
  • 1
    @deephace just use sphere/frustum culling to cull things which you know are not visible. For things that pass sphere/frust culling, do a more exact vis test, e.g. OBB. – nmr Jan 04 '21 at 16:14
  • @nmr thanks for your reply! I don't remember the exact details of the algorithm I used, but I think I followed your idea. The overall algorithm was a sequence of rejection tests to speed up the computation, i.e. sphere, AABB, etc. – deephace Jan 05 '21 at 11:00