[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Progress Update



Christian Reiniger wrote:

> > And you know what? It doesn't even show up on the profiler, with
> > hundreds of files varying between 300 and 300,000 bytes in size,
> > "opened" during the course of the game.
> 
> Well, as you said before Quadra isn't particularly I/O intensive.

No, but not any less than Quake.

> > How much time did you spend total on PenguinFile? At Ludus, one person
> > had to work about a grand total of two days on this, including
> > debugging.
> 
> Well, for a generic library the requirements are a bit different. How well
> does your system scale? Would you use in a Quake-size game?

With minor changes, yes. Minor as in "a few hours max". I'd just remove
the linked list and replace it with a simple hash table. To do it
faster, I'd probably steal one actually. ;-)

Good artists imitate, the best ones steal. That's what I've been told,
in any case... :-)

> > And it isn't completely lacking, the game can "load" multiple resource
> > files, with resources loaded later on replacing those with the same
> > identifiers loaded previously, and so on. The game simply load the main
> > "quadra.res", then looks for "quadra110.res", then "quadra111.res" (for
> > the 1.1.1 version). We only look for resource files of versions
> > differing only by the patch level, we do not look for "quadra101.res"
> > for example.
> 
> Well, choosing which resource files to load is the task of the game, not
> the I/O lib.

Of course. That's why Quadra does it itself.

> > It is *fixable*. Maybe we'll have to trash the file format one day, but
> 
> Can you simply add support for directories?

If you don't need enumeration, it's already in. We do not have methods
for enumeration in our interface, because we didn't need them. Adding
enumeration methods would take a few hours maybe.

-- 
Pierre Phaneuf
http://ludusdesign.com/