Subject:
|
Re: Mac Brick CAD and the Imerial Star Destroyer
|
Newsgroups:
|
lugnet.cad.dev.mac
|
Date:
|
Mon, 17 May 2004 17:22:49 GMT
|
Viewed:
|
2404 times
|
| |
| |
In lugnet.cad.dev.mac, Andrew Allan wrote:
> Yes,
>
> When loading I make a list of all the unique bricks in the model (colour and
> type) these are then cached as OpenGL lists of so when drawing, I then just call
> the various OpenGL lists.
I have a few comments--based on my experience writing LDView--that I think could
improve your load performance. First of all, I believe what you are saying
above (and a little later in your post) is that you only cache complete bricks.
If this is the case, you should be able to improve your load performance
substantially by caching the decoded version of every single file. Note, this
is the version in your own internal memory format, prior to the file being
compiled into a display list.
LDView does this, and the model takes about 20 seconds to load and compile on a
2.4GHz P4. Only about 10 seconds of that is loading, the rest is compiling the
display list. And the current LDView doesn't do a very good job there, since
after loading the model it flattens it into one single huge list of geometry,
copying the internal versions of every brick as it goes. It then creates one
giant display list for the entire model.
The next version of LDView that I'm working on is a lot more reasonable, doesn't
do any of that, and loads the model in around 6 seconds. Memory usage is rather
remarkably different between the two LDView versions, also. The current one
uses around 600 megs for the model, the next one uses quite a bit less than 100
megs (I don't remember how much, just that it was well under 100 megs).
One other thing can be done to cut down on memory usage, but it's a lot harder.
That is to only have one set of display lists per part, instead of having one
display list for each color of each part. In order to make this work, you have
to split the part into up to at least 3 display lists. One contains all the
color 16 geometry, another contains all the color 24 geometry, and the third
contains all the other geometry.
--Travis Cobbs
|
|
Message is in Reply To:
| | Re: Mac Brick CAD and the Imerial Star Destroyer
|
| (...) Yes, When loading I make a list of all the unique bricks in the model (colour and type) these are then cached as OpenGL lists of so when drawing, I then just call the various OpenGL lists. For the imperial star destroyer, this means even a (...) (21 years ago, 17-May-04, to lugnet.cad.dev.mac)
|
19 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|