Friday, June 01, 2007

why not soy.windows

We started down the path for a soy.windows with the goal of having many possible Window classes, ie, a fullscreen window, vs a borderless splash window, etc.

After much learning on how these are implemented it became clear that a single Window class, with these features as options, is preferable. Further, there's function/variable linking limitations that require some hacks to work around, not something we really want to be doing.

The new Screen layer is extremely decent; it solves our fullscreen issue, it allows the game to manage display on multi-headed systems, it provides a clean and simple API for obtaining screen size and other display information, and even provides a nice "hook" for input.

We also have a problem with the usleep function, more specifically, in that win32 doesn't have it (they use a "Sleep" function instead). We were going to have to have optional building for _core in any event because of this.

So to simplify the API, make things easier on us, and generally make it run more smoothly, soy.windows was folded back into _core.

No comments: