On Tue, Sep 11, 2001 at 04:14:40AM -0700, LordHavoc wrote:
> <snip>
> > 2. Create twilight/baselib. FIXME: better name?
> > A place to put mathlib, strlib, console, cvar, cmd, bspfile, common,
> > and all of the other things which were classically used by both the
> > engine and the tools. The code here should be built into a static
> > library for the engine to link, but we should not discount making it a
> > dynamic library in the future.
>
> I hate libs, you even ranted about how evil QF's libs were, so why do
> you propose this?
QF started being broken the second they decided that the engine should be
loading things as plugins. Linking a static lib into the engine is not a
problem, it's just a convenience simplifying makefiles really. I don't
even want to try to build a dynamic lib even for tools in the lifetime of
the current codebase, unless and until we cannot reasonably avoid it.
> > 3. Create twilight/renderer.
> > Here we'll place all of the shared stuff necessary for the client's
> > rendering. Starting with all of the gl_* files, more or less. They
> > should lose their gl_ prefix probably when they move. I'm not sold yet
> > on the idea that that vid_sdl belongs in here, but I'm not really sure
> > where to put it really.
>
> If the renderer is to stay GL only, then vid_sdl has no reason to go
> into renderer, the renderer would be implied to be GL.
If the code is gonna stay GL only and SDL only, then vid_sdl is part of
the renderer. I'm not sold on this however.
> > 4. Create twilight/sound.
> > Currently, there is not much to Project Twilight in the form of sound.
> > Only a handfull of files. But if we add support for more kinds of
> > music such as mp3, Ogg Vorbis, etc, I believe it will make more sense
> > to give these things a place of their own.
>
> Hmm, seems excessive, but ok.
It does now, but it won't feel that way later I think.
> > These directories should be as free of outside dependencies as possible.
> > Clearly most of them will depend on "baselib" and just about all of them
> > will depend on SDL for certain. Headers for each module should move to
> > that module. That'll mean more include paths in the engine, but it also
> > means that the modules themselves will be more bite-sized. The exception
> > to this is of course baselib, whose headers should live in the shared
> > include directory we have now, possibly a subdirectory of that even
> > waiting for the day that these headers will actually be installed on the
> > system.
>
> Make baselib depend on SDL? then you don't need to manually specify SDL
> :)
Reasonable.
> I don't like having multiple include paths either, but I'd tolerate it.
Essentially I want to see the headers remain with the code that uses them,
with the exception of baselib (someone PLEASE give me a name for that!)
which needs to be treated as special since at some point a long time from
now in a galaxy far, far away, it will be used by good and bad developer
tools alike who will do war upon eachother.. The guy with the bad tools
will wear a black mask and shout through a little speaker in his nifty
black suit. The guy with the good tools will have a bigger suit with a
quickcam on top and a shower curtain hanging off of it. The good guy
won't shout, but you will hear strange sounds and chimes when he says
something. Of course the chimes may as well be all you hear, for all the
good what little he says will do you. Er wait, I'm getting confused. I
think it's time for bed.
> The only way to break compatibility is to make a twilight mod (or more
> likely TC), and then develop for that mod, changing it to fit the
> changing engine.
This is planned. As is making it easy for other people to do mods of our
TC, which we hope will be as T as we can get.
--
Joseph Carter <[EMAIL PROTECTED]> Free software developer
<Culus> And don't get me started on perl!
<Culus> :>
<shaleh> perl is beyond evil
<jim> you don't know perl yet?
<netgod> gotta love a language with no definable syntax
PGP signature