--- Log opened Sun Aug 17 00:00:49 2008 |
00:01 | <@ToxicFrog> | Part of this is so that he can exploit openGL scaling to get the tiles the right size at arbitrary resolutions. |
00:02 | <@ToxicFrog> | The system requirements are still insanely high, but they are - and have only ever been - CPU and memory. |
00:02 | <@ToxicFrog> | The video requirements are "something that supports openGL quads and scaling |
00:05 | <@TheWatcher> | I've nothing against using quads for text - all games based off any of the quake and doom engines to it quite extensively - but for a text only game... |
00:05 | <@ToxicFrog> | Win2k does run well in virtualbox, according to the forums. The question is what sort of opengl support - if any - it has. |
00:05 | <@ToxicFrog> | DF is not a text only game! |
00:05 | <@ToxicFrog> | It never was! |
00:05 | <@ToxicFrog> | It was never planned to be! |
00:06 | <@McMartin> | It still cries out for being framebuffered instead. |
00:06 | <@McMartin> | Because it is flagrantly tile-based. |
00:06 | <@ToxicFrog> | It uses mostly-textual graphics out of the box (I believe only the dwarves have actual graphical tiles) because Content Is Hard. |
00:06 | <@ToxicFrog> | Granted. |
00:06 | <@ToxicFrog> | That would mean you would have to do the scaling on the CPU, though. |
00:07 | <@ToxicFrog> | And the CPU is already the bottleneck. |
00:07 | <@McMartin> | You can pre-zoom them. |
00:07 | <@ToxicFrog> | Hmm, true |
00:07 | <@McMartin> | You need integral multiples to do it right, but, well, restrict to integral multiples. |
00:08 | <@McMartin> | Or, hell |
00:08 | <@ToxicFrog> | At present it doesn't have that restriction. |
00:08 | <@McMartin> | Have differently-sized tile sets. |
00:08 | <@McMartin> | Well, yeah. |
00:08 | <@McMartin> | You only put this restriction in in framebuffer mode. |
00:08 | <@ToxicFrog> | It does support differently sized tile sets. |
00:08 | <@McMartin> | People don't complain about this if OpenGL scaling is optional. |
00:08 | <@McMartin> | I believe I can say this with some authority |
00:08 | <@ToxicFrog> | True. |
00:09 | <@McMartin> | If you only are runnable at 320x240, though, people *will* complain. |
00:12 | <@MyCatVerbs> | McMartin: the people with old CRTs won't. ^_^ |
00:13 | <@McMartin> | Yes they will. |
00:14 | <@McMartin> | Their old CRTs were tuned for 320x200. |
00:15 | <@MyCatVerbs> | Well played. |
00:15 | <@McMartin> | (Actually, that was a headache for us in UQM too) |
00:16 | <@McMartin> | (Since when we re-ripped the superior DOS graphics, they were scaled for a 320x200 screen, which doesn't play well with 640x480, the default display size) |
00:16 | <@MyCatVerbs> | Actually, how *do* you cope with modern resolutions? |
00:16 | <@McMartin> | The 3DO was 320x240, so we use DOS graphics in the 3DO screen layout. |
00:16 | <@MyCatVerbs> | Your sprites must be designed for, what, 25? 50 DPI? |
00:17 | | * MyCatVerbs ponders. |
00:17 | <@McMartin> | We do soft scaling in various ways from 320x240 up to 640x480, and then use OpenGL if the user wants any other resolution. |
00:17 | <@McMartin> | And we render one[*] quad per screen. |
00:17 | <@McMartin> | [* Offer void for multiple display layers, such as during crossfades] |
00:17 | <@MyCatVerbs> | Could you upscale, and then *cheat* by putting a HUD in the spare screen real estate? |
00:17 | <@McMartin> | They effectively did that for us when they made the 3DO version. |
00:18 | <@McMartin> | Check the conversation screen, notice the 20-pixel-high VCR interface. |
00:18 | <@MyCatVerbs> | Sensible. So what was wrong with the3DO re: sprites. Less RAM or something? |
00:18 | <@McMartin> | Poorer color palette. |
00:18 | <@MyCatVerbs> | Ah, makes sense. How bad, out of curiosity? |
00:19 | <@McMartin> | PC was 256 colors of your choice out of the full 24-bit color spectrum. |
00:19 | <@McMartin> | 3DO is "you get these colors." |
00:19 | <@McMartin> | Er, "You get these 256 colors" |
00:19 | <@McMartin> | And hardware support for mixed blits and fades, which I believe was why they did it that way |
00:19 | <@McMartin> | Essentially 16 color levels for 16 hues, IIRC. |
00:20 | <@McMartin> | They were good enough about it that you have to really look to notice |
00:20 | <@McMartin> | But if you play them side by side, the 3DO one is a bit more washed out. |
00:20 | <@McMartin> | But the PC version did swap the full-screen palette for different parts of the game. |
00:21 | <@McMartin> | We keep the 8-bit images in UQM, because a number of the effects are done via palette animation |
00:21 | <@McMartin> | Which we slowly and painfully replicate in true-color. |
00:22 | | You're now known as TheWatcher[T-2] |
00:22 | <@MyCatVerbs> | "Slow and painful" being relative to, like, 500MHz CPUs which issue multiple micro-ops in a single instruction and have a minimum of about 8k of on-chip L1 D-cache. :P |
00:22 | <@MyCatVerbs> | Oh and that's only when we're talking about players who still game on really old machines. Still sounds painful, though. |
00:23 | <@McMartin> | I started UQM development on a 500MHz Celeron with a Voodoo 3. |
00:24 | <@McMartin> | And yeah, it couldn't handle SuperSAI |
00:24 | <@McMartin> | And the 3dfx cards couldn't do textures big enough for OpenGL mode to work at all. |
00:25 | <@MyCatVerbs> | Huh. But you weren't using OpenGL mode at that point, were you? |
00:26 | <@McMartin> | OpenGL was actually in at the start |
00:26 | <@McMartin> | The code we inherited had had an intern working on it for three months. |
00:26 | <@McMartin> | It was a very bad OpenGL interface that I replaced with an SDL framebuffer interface |
00:27 | <@McMartin> | This was then supplemented by a superior OpenGL interface that we kept for about four years. |
00:27 | <@McMartin> | Then I redesigned the entire graphics engine so that it had multiple display layers, which let us get rid of a lot of ugly hacks in the crossfades and treat the SDL and OpenGL layers as interchangable backends. |
00:28 | | You're now known as TheWatcher[zZzZ] |
00:29 | <@ToxicFrog> | Hmm. |
00:30 | <@ToxicFrog> | The new version reacts...poorly when I switch desktops while it's running. |
00:30 | <@McMartin> | It being VBox or DF? |
00:30 | <@McMartin> | Or UQM? |
00:31 | <@ToxicFrog> | DF. |
00:31 | <@ToxicFrog> | Works fine if Always On Visible Workspace, though. |
00:33 | <@MyCatVerbs> | McMartin: cool. Interesting to hear about. |
00:34 | <@MyCatVerbs> | Out of curiosity, have you actually been adding features in UQM? Or primarily hacking on bugfixes, portability, code quality, etc? |
00:34 | <@McMartin> | There are feature adds. |
00:35 | <@McMartin> | The remix project - the ability to use OGG to replace MOD in general - is the most obvious and longest-standing |
00:35 | <@MyCatVerbs> | Sweet. |
00:35 | <@McMartin> | Netplay Supermelee is the most recent. |
00:35 | <@MyCatVerbs> | Just curious, because whenever I ask you about things, usually it's the meaty nuts'n'bolts stuff you tell me about. :) |
00:35 | <@McMartin> | Translation support from the same binary is the current biggie, but whether that's feature addition or "code quality" is debatable. |
00:36 | <@McMartin> | A russian translation has been done, it seems. |
00:36 | <@McMartin> | But it needs binary support right now. |
00:36 | <@MyCatVerbs> | Mmm. |
00:36 | <@McMartin> | Merging the features from PC and 3DO is a feature add depending on which one you started with. |
00:36 | <@McMartin> | On the PC, better graphics, namable savegames |
00:36 | <@McMartin> | On the 3DO, ship info videos and dialogue. |
00:37 | <@McMartin> | The fact that you can SuperSAI or HQ2X the graphics on the upscale, or do cubic interpolation on the MODs, may count. |
00:37 | <@MyCatVerbs> | Oh certainly that's a feature add. Or at least it's a step towards making the best possible SC2 implementation. |
00:38 | <@MyCatVerbs> | I mean, though, I'd understand if you weren't actually all that interested in adding new features until you have the whole engine in a state where it's actually pleasant to hack on. No one likes adding features to brittle code, after all. |
00:38 | <@McMartin> | (For various reasons, we can't actually *call* them SuperSAI or HQ2X - they're semi-clean-room reimplementations so that the resulting code is GPLable) |
00:38 | <@McMartin> | Our primary goal is to preserve the original, so we're unlikely to add any feature that can't be readily turned off. |
00:38 | <@McMartin> | And it *really* doesn't have an engine-data split. |
00:40 | <@MyCatVerbs> | Mmmm? I thought an engine-data split was one of your goals? |
00:40 | <@McMartin> | Well, a certain degree of it. |
00:40 | <@McMartin> | But that's things like the starmap and planet tables. |
00:40 | <@McMartin> | And moving them out of source. |
00:40 | <@McMartin> | The tables are keyed to an engine that is, essentially, Only For Playing SC2 Or Close Variants, though. |
00:41 | <@MyCatVerbs> | No point replacing those with something more generic? |
00:42 | <@McMartin> | How do you make, say, planet exploration more generic? |
00:43 | <@McMartin> | The tables are essentially tables of seeds for the procedural map/solar system generators. |
00:43 | <@MyCatVerbs> | Oh, of course. I misparsed. Thought you meant highly specific data structures and the like. |
00:43 | <@McMartin> | Basically, "You can't give it up without giving up procedural content generation, which, given the amount of content, is lolno." |
01:32 | | AnnoDomini [AnnoDomini@Nightstar-29118.neoplus.adsl.tpnet.pl] has quit [Quit: Patience is a virtue.] |
01:51 | | gnolam is now known as Salman_Rushdie |
01:54 | | Salman_Rushdie is now known as gnolam |
02:42 | | gnolam [lenin@Nightstar-2037.A163.cust.bahnhof.se] has quit [Quit: Z?] |
03:39 | <@McMartin> | Wow |
03:39 | | * McMartin finds a Win98 image, and manages to completely hose VBox. |
03:39 | <@McMartin> | As in "200% CPU usage for 20+ minutes" |
03:39 | <@McMartin> | And then I aborted it. |
03:52 | | Attilla [~The.Attil@92.0.29.ns-20195] has quit [Quit: <Insert Humorous and/or serious exit message here>] |
04:03 | <@ToxicFrog> | McMartin: when installing: disable network, sound, and USB support, and make sure all the advanced options except ACPI are off. Same for the first boot. |
04:03 | <@ToxicFrog> | After that you can start enabling peripherals one by one and installing drivers for them. |
04:04 | <@ToxicFrog> | Oh, and make sure it's configured for <512MB of memory. |
04:22 | <@McMartin> | How much vmem did you give it? |
04:26 | | Thaqui [~Thaqui@Nightstar-11452.jetstream.xtra.co.nz] has joined #code |
04:26 | | mode/#code [+o Thaqui] by ChanServ |
04:42 | <@ToxicFrog> | 64. |
06:59 | <@McMartin> | In other virtualization news: http://www.theregister.co.uk/2008/08/13/vmware_apologises_12_august_code/ |
06:59 | <@McMartin> | DIAF, Blargh. |
07:01 | <@McMartin> | (Did my link go through? It should have, but...) |
07:27 | | gnolam [lenin@Nightstar-2037.A163.cust.bahnhof.se] has joined #Code |
07:27 | | mode/#code [+o gnolam] by ChanServ |
08:16 | | Thaqui [~Thaqui@Nightstar-11452.jetstream.xtra.co.nz] has left #code [MORE constitution LESS destitution MORE pros...perity.] |
09:05 | | You're now known as TheWatcher |
09:05 | | AnnoDomini [AnnoDomini@Nightstar-29118.neoplus.adsl.tpnet.pl] has joined #Code |
09:05 | | mode/#code [+o AnnoDomini] by ChanServ |
11:23 | | Netsplit DeepThought.NY.US.Nightstar.Net <-> Blargh.CA.US.Nightstar.Net quits: @gnolam, @Kazriko |
11:37 | | Attilla [~The.Attil@92.0.29.ns-20195] has joined #code |
11:37 | | mode/#code [+o Attilla] by ChanServ |
12:10 | | Netsplit over, joins: Kazriko |
12:10 | | Netsplit over, joins: gnolam |
12:10 | | Reiver [~reaverta@Admin.Nightstar.Net] has quit [Nick collision (older nick overruled)] |
12:10 | | mode/#code [+o Kazriko] by ChanServ |
12:10 | | mode/#code [+o gnolam] by ChanServ |
12:10 | | Reiv [~reaverta@Admin.Nightstar.Net] has joined #Code |
12:15 | | johndoe [~johndoe@84.22.140.ns-11797] has joined #code |
12:16 | | johndoe [~johndoe@84.22.140.ns-11797] has left #code [] |
12:21 | | Reiv is now known as Reiver |
12:33 | | AnnoDomini [AnnoDomini@Nightstar-29118.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
12:36 | | AnnoDomini [AnnoDomini@Nightstar-28950.neoplus.adsl.tpnet.pl] has joined #Code |
12:36 | | mode/#code [+o AnnoDomini] by ChanServ |
12:42 | <@ToxicFrog> | McMartin: yes, it did |
15:00 | | You're now known as TheWatcher[afk] |
17:35 | | You're now known as TheWatcher |
17:59 | | AnnoDomini is now known as Elizabeth |
18:03 | | EvilDarkLord is now known as Rico |
18:35 | | crem [~moo@Nightstar-28703.adsl.mgts.by] has quit [Ping Timeout] |
19:06 | | crem [~moo@Nightstar-28703.adsl.mgts.by] has joined #code |
21:35 | | Shoukanjuu [~Shoukanju@Nightstar-18822.dhcp.embarqhsd.net] has joined #code |
21:36 | < Shoukanjuu> | I am returned. |
22:16 | | C_tiger [~c_wyz@Nightstar-6750.hsd1.wa.comcast.net] has joined #code |
22:23 | | Elizabeth is now known as AnnoDomini |
22:24 | | Rico is now known as EvilDarkLord |
22:41 | | C_tiger [~c_wyz@Nightstar-6750.hsd1.wa.comcast.net] has quit [Ping Timeout] |
22:46 | | C_tiger [~c_wyz@Nightstar-6750.hsd1.wa.comcast.net] has joined #code |
22:47 | | C_tiger [~c_wyz@Nightstar-6750.hsd1.wa.comcast.net] has quit [Connection reset by peer] |
22:53 | | C_tiger [~c_wyz@Nightstar-6750.hsd1.wa.comcast.net] has joined #code |
--- Log closed Mon Aug 18 00:00:20 2008 |