#1616: View Frustum Culling
-------------------------------+--------------------------------------------
 Reporter:  i-NoD              |              Owner:                  
     Type:  bug                |             Status:  new             
 Priority:  major              |          Milestone:  3.0             
Component:  Engine: Graphics   |            Version:  svn/trunk       
 Keywords:  clipping, culling  |   Operating_system:  All/Non-Specific
Blockedby:                     |           Blocking:                  
-------------------------------+--------------------------------------------
 Here is a small patch to enable the aforementioned feature for trunk.
 Could be easily adapted for 2.3 too.
 What's for: currently WZ uses very simple algorithm (in clipXY() ) based
 on the distance between the tested point and player on the grid, it
 doesn't care if user actually sees the point (OpenGL will remove redundant
 data anyway, but it's still better to not process it beforehand). While
 it's not a problem for current low-poly graphics or/and when you've turned
 shadows off, it helps much in case with high-poly graphics and shadows on
 - we will process tiles that are actually visible on screen.

 The feature was stripped of some extensive functionality due to
 optimizations (like sphere bounding). To do less calculation every frame
 clipVFC() is based and guarded by whole clipXY() framework, effectively
 skipping processing of distant tiles. Also, you don't want to use
 clipVFC() when you do need clipXY(), consider 'shake screen' functionality
 with building that exploded behind you (so it's not visible on screen) is
 still triggering shakes.

 Based on code from:
 http://robertmarkmorley.com/opengl/frustumculling.html (hint: use Time
 Machine)

-- 
Ticket URL: <http://developer.wz2100.net/ticket/1616>
Warzone 2100 Trac <http://developer.wz2100.net/>
The Warzone 2100 Project
_______________________________________________
Warzone-dev mailing list
Warzone-dev@gna.org
https://mail.gna.org/listinfo/warzone-dev

Reply via email to