1
0
Fork 0
Commit graph

13 commits

Author SHA1 Message Date
curt
f8e4de2d13 Bernie Bright <bbright@c031.aone.net.au> writes:
I've made some changes to the Scenery handling.  Basically just tidy ups.
The main difference is in tile.[ch]xx where I've changed list<fgFRAGMENT> to
vector<fgFRAGMENT>.  Studying our usage patterns this seems reasonable.
Lists are good if you need to insert/delete elements randomly but we
don't do that.  All access seems to be sequential.  Two additional
benefits are smaller memory usage - each list element requires pointers
to the next and previous elements, and faster access - vector iterators
are smaller and faster than list iterators.  This should also help
Charlie Hotchkiss' problem when compiling with Borland and STLport.

./Lib/Bucket/bucketutils.hxx
  Convenience functions for fgBUCKET.

./Simulator/Scenery/tile.cxx
./Simulator/Scenery/tile.hxx
  Changed fragment list to a vector.
  Added some convenience member functions.

./Simulator/Scenery/tilecache.cxx
./Simulator/Scenery/tilecache.hxx
  use const fgBUCKET& instead of fgBUCKET* where appropriate.

./Simulator/Scenery/tilemgr.cxx
./Simulator/Scenery/tilemgr.hxx
  uses all the new convenience functions.
1998-11-09 23:40:46 +00:00
curt
7e240adff1 Converted to Point3D class. 1998-10-16 00:51:46 +00:00
curt
8c2cd1284a Use erase() instead of while ( size() ) pop_front(); 1998-09-02 14:37:08 +00:00
curt
aa408d2829 material.cxx material.hxx obj.cxx obj.hxx texload.c texload.h moved to
../Objects
1998-08-25 16:52:38 +00:00
curt
aaa7174002 Tweaks ... 1998-08-24 20:11:39 +00:00
curt
e33dbca814 Attempting to iron out seg faults and crashes.
Did some shuffling to fix a initialization order problem between view
position, scenery elevation.
1998-08-22 14:49:55 +00:00
curt
5f1fd50f6a Used a forward declaration of classes fgTILE and fgMATERIAL to eliminate
the need for "void" pointers and casts.
Quick hack to count the number of scenery polygons that are being drawn.
1998-08-20 15:12:03 +00:00
curt
d212b2d459 material.cxx: don't load textures if they are disabled
obj.cxx: optimizations from Norman Vine
tile.cxx: minor tweaks
tile.hxx: addition of num_faces
tilemgr.cxx: minor tweaks
1998-08-12 21:13:03 +00:00
curt
a7cf4f0a53 material.cxx: whups, double method declaration with no definition.
obj.cxx: tweaks to avoid errors in SGI's CC.
tile.cxx: optimizations by Norman Vine.
tilemgr.cxx: optimizations by Norman Vine.
1998-07-24 21:42:06 +00:00
curt
f8356621c1 Add basic fgFACE methods contributed by Charlie Hotchkiss.
intersect optimization from Norman Vine.
1998-07-22 21:41:42 +00:00
curt
5ed5107fc1 Ground collision detection optimizations contributed by Norman Vine. 1998-07-16 17:34:24 +00:00
curt
262b2f0607 Added ground collision detection. This involved:
- saving the entire vertex list for each tile with the tile records.
- saving the face list for each fragment with the fragment records.
- code to intersect the current vertical line with the proper face in
  an efficient manner as possible.
Fixed a bug where the tiles weren't being shifted to "near" (0,0,0)
1998-07-12 03:18:27 +00:00
curt
a60f1d812d Added tile.cxx and tile.hxx.
Working on rewriting the tile management system so a tile is just a list
fragments, and the fragment record contains the display list for that fragment.
1998-05-23 14:09:20 +00:00