PDA

View Full Version : iOQuake3 Dreamcast port?



OVERRiDE_DC
July 31st, 2009, 01:02
http://ioquake3.org/
Its an open-source 3d game engine, written in C and uses SDL.
It seems like a great candidate for a Dreamcast port, this engine would open up a lot of possibilities.

So, I am not experienced enough at programming, so I am curious what some of you current DC programmers think about the idea?

Screenshot of the engine in action:
http://ioquake3.org/images/screenshots/tremlinux.jpeg

JLF65
July 31st, 2009, 18:28
Not a chance. Quake 3 NEEDS a minimum of 32 MB of physical memory along with virtual memory. You can squeeze Q3 into 64 MB of physical memory without any virtual memory, but you're pushing it. The DC only has 16 MB of physical memory. The DC is powerful enough to run Q3, it just lacks the memory. :(

OVERRiDE_DC
July 31st, 2009, 20:01
Not a chance. Quake 3 NEEDS a minimum of 32 MB of physical memory along with virtual memory. You can squeeze Q3 into 64 MB of physical memory without any virtual memory, but you're pushing it. The DC only has 16 MB of physical memory. The DC is powerful enough to run Q3, it just lacks the memory. :(

I dont see any info on the site of hardware requirements, for the engine.

So, I assume you mean the game QuakeIII and its assets ( not the engine itself ) have those hardware requirements
http://www.idsoftware.com/games/quake/quake3-arena/index.php?game_section=sysreq

By assets I mean maps, models, textures, sfx, etc., and the thing to remember, is that every asset of a game like this can be heavily modified.

.BSP's can be split or simplified ( reduced polygons ), models can have textures compressed and polygons reduced, the engine is allready using .ogg audio format, so that will work perfectly. As long as the engine supports PVR texture compression, anything is possible.

Also, AFAIK the DC has 26mb of physical memory, and with a good Dev Team it should be enough RAM to work with...

http://en.wikipedia.org/wiki/Dreamcast#Technical_specifications

The Dreamcast has 16 MB 64 Bit 100 MHz of main RAM, 8 MB 4x16-bit 100 MHz video RAM and 2 MB 16-bit 66 MHz sound RAM. The hardware supports VQ Texture Compression (5:1 texture compression)

BTW, I can tell you we've managed to get mods with heavier requirements than quake III running on Dreamcast.
http://dcemulation.org/phpBB/viewtopic.php?f=45&p=1010949#p1010949

Besides, what im asking in my post is simply for the iOQuake3 engine to be ported, not the game Quake3.
It will then be up to external dev teams to port games / mods to the engine, and it will be possible to release a commercial game using this engine, as long as the game does not contain copyright material.

JLF65
July 31st, 2009, 20:53
The DC has 16 MB of system RAM - what you put the program and associated data into. It also has 8 MB of video RAM, and you would put texture data there. It has an additional 2 MB of audio RAM, where you could put samples. You cannot put ogg or mp3 data into audio RAM as the CPU needs to decode it. You'd have buffers of compressed audio in system RAM, which are then decoded into audio RAM. So you use less system RAM since the buffers hold compressed data.

You could put other things into video RAM, like level data, but it's not a good use of video RAM. We'd want to use the DC's compressed texture modes as that's its finest asset, but we still have level and model data and such in system RAM.

So you do have 26 MB of RAM total, but 10 MB of it is dedicate use RAM and not suitable for use by the game itself. From experiments others and myself have done on the PSP with Q3, just initializing the engine with no data loaded of any kind takes over 24 MB of RAM (we couldn't get the engine initialized on the Phat PSP in the space it had available), so I don't think there's any hope for a system with 8 MB less than that.

Guaripolo
August 1st, 2009, 16:28
well, i know that chui managed to get a quake1 modified engine (darkplaces), but still got some troubles with memory (ie he could load just small maps). In the other hand we got commercial quake3 working -surely it's HEAVY modified to fit into the dc ram- and that's where all are getting confused.

I think that with the sd adapter and some kind of pagination driver the dc can "expand" in some way the memory available (like neo4all does), but it will surely get ugly slowdowns in games like quake3.

Chui has commented that with the sd adapter he managed to double the system ram without slows, but i don't know more far from this.

JLF65
August 1st, 2009, 16:54
Sounds about right. With something like an SD adapter, you could do "virtual memory" which would expand what could be used. Without VM, you're stuck trying to modify the game to make it fit. I'd probably start with the DS version of Quake to make Quake for the DS - the author had to hack it to fit the DS even with a ram expansion card. That would probably work well on the DC.