View previous topic :: View next topic |
Author |
Message |
Baker

Joined: 14 Mar 2006 Posts: 1538
|
Posted: Tue Jan 06, 2009 10:08 pm Post subject: Quake Sprite Files |
|
|
What format are the Quake sprite files in?
Is there any special reason they are .spr files?
My guess is that they are just 2d graphics with transparency so I guess I'm asking why they need their own file format?
Or is there something extra going on I am not considering.
I am doing a little experiment where I am trying to eliminate all the annoyances with the 2d graphics in standard Quake would like to add these sprite files in the kill list.
My list of things I think are really outdated to deal with in 2008 are:
1. .lmp files ... turn them into pcx files using the Quake palette.
2. gfx.wad ... turn them into pcx files using the Quake palette.
3. conchars ... turn them into pcx files using the Quake palette.
4. sprites ... if possible ... turn them into pcx files using the Quake palette.
5. .pak files = annoying = uncompressed zip = better
All of the above would be fully compatible with even software Quake (8-bit only) but people wouldn't need a wide array of retarded tools to assist doing something archaic.
I mean why should I need adquedit or fimg to edit a simple 2d graphic? Make it work with the image editors everyone has.
I consider these things barriers to modding.
continuing rant ... attacking pak and pk3 files wrote: | And why use pakscape for pk3 files? What advantage does pk3 have? None. If you use uncompressed zip for game data files, everyone would be able to edit it with something many people already have.
The compression in pk3 saves disk space at the expense of loading times, so most big pk3 files should be uncompressed anyway. So why use pk3? The same logic as the tga beats png format.
And 7zip, Rar or if a game uses an installer will all compress game data far better than whatever .pk3 uses from 10 years ago. |
|
|
Back to top |
|
 |
Baker

Joined: 14 Mar 2006 Posts: 1538
|
Posted: Tue Jan 06, 2009 10:14 pm Post subject: |
|
|
ugggh .. they have data in them
And frames ... |
|
Back to top |
|
 |
MDave

Joined: 17 Dec 2007 Posts: 75
|
Posted: Wed Jan 07, 2009 1:19 am Post subject: |
|
|
Then what needs to be done is using a script file that specifies all the little details about each sprite/image sorta like a stripped down q3 .shader format, which is simple enough.
Or a very easy to use, all-in-one multi-platform modern GUI program with preview windows and tools. Basically an up to date adquedit  |
|
Back to top |
|
 |
ceriux

Joined: 06 Sep 2008 Posts: 969 Location: Florida, USA
|
Posted: Wed Jan 07, 2009 5:07 pm Post subject: |
|
|
iv never used pcx files looks like it could make things a little complicated for modders (or me) lol. _________________ QuakeDB - Quake ModDB Group |
|
Back to top |
|
 |
Baker

Joined: 14 Mar 2006 Posts: 1538
|
Posted: Wed Jan 07, 2009 5:16 pm Post subject: |
|
|
ceriux wrote: | iv never used pcx files looks like it could make things a little complicated for modders (or me) lol. |
PCX files are simple 8-bit graphics files, little different than .bmp files.
They are supported in every mainstream drawing application (Photoshop, Paint Shop Pro, Gimp, etc. etc.).
I wasn't big on PCX files in the past (I thought of them as "old"), but some logic that aguirRe related to me once kicked in. His engine has long supported pcx textures and it even works with WinQuake. |
|
Back to top |
|
 |
ceriux

Joined: 06 Sep 2008 Posts: 969 Location: Florida, USA
|
Posted: Wed Jan 07, 2009 5:33 pm Post subject: |
|
|
why not use tga's? (if possible) then they wouldnt be held back by quakes pallet? _________________ QuakeDB - Quake ModDB Group |
|
Back to top |
|
 |
Baker

Joined: 14 Mar 2006 Posts: 1538
|
Posted: Wed Jan 07, 2009 5:39 pm Post subject: |
|
|
ceriux wrote: | why not use tga's? (if possible) then they wouldnt be held back by quakes pallet? |
TGA is generally used as a 24-bit [32-bit when an alpha channel is used] file format.
In a situation where 8-bit was important and it would be for WinQuake compatibility, people would screw it up over and over and over again.
My goal here isn't to change anything or break compatibility but to facilitate easy editing of all the 2d graphics used in Quake [exactly the way that they are] that presently requires a hell of a lot of different tools and far more work than it should.
[A number of engines support external TGA files for menu elements etc. but I'm not looking to add support for external elements but to transform the present elements.]
Last edited by Baker on Wed Jan 07, 2009 5:41 pm; edited 1 time in total |
|
Back to top |
|
 |
ceriux

Joined: 06 Sep 2008 Posts: 969 Location: Florida, USA
|
Posted: Wed Jan 07, 2009 5:41 pm Post subject: |
|
|
ahh ok ic, in that case maybe pcx is the way to go good luck on your studies moving tward a better modding evniorment  _________________ QuakeDB - Quake ModDB Group |
|
Back to top |
|
 |
goldenboy

Joined: 05 Sep 2008 Posts: 310 Location: Kiel
|
Posted: Wed Jan 07, 2009 11:24 pm Post subject: |
|
|
I consider these things barriers to modding.
They are.
I want to make some sprites for something, and it's just a horror. Same for the HUD files, conchars etc.
Making it all PCX would be great.
Not to mention that PCX is crossplatform, while lmp and spr aren't really.
ZIP files instead of pak/pk3 would be much appreciated, too. |
|
Back to top |
|
 |
goldenboy

Joined: 05 Sep 2008 Posts: 310 Location: Kiel
|
Posted: Wed Jan 07, 2009 11:28 pm Post subject: |
|
|
However, let's not forget that some mods expressively load .spr files from the QC, for example Remake includes func_emitter which expects a path like progs/blah.spr. Probably the same for Quoth, with its colored globes etc.
So backwards compatibility would be a problem.
If sprites were pcx files renamed to spr, that would probably work.
And, yeah, they can be animated like gifs, ie have multiple frames. Hm, perhaps you could just use gif. |
|
Back to top |
|
 |
Baker

Joined: 14 Mar 2006 Posts: 1538
|
Posted: Wed Jan 07, 2009 11:33 pm Post subject: |
|
|
goldenboy wrote: | However, let's not forget that some mods expressively load .spr files from the QC, for example Remake includes func_emitter which expects a path like progs/blah.spr. Probably the same for Quoth, with its colored globes etc.
So backwards compatibility would be a problem.
If sprites were pcx files renamed to spr, that would probably work. |
The fact that sprites are more complicated than I was initially thinking, means I won't be able to do this.
I do want to think of some sort of proper way to support Kurok's idea of "static" unanimated sprites maybe via this method, but I'll probably have to seek the opinion of the wise on how to best do this (and I don't plan to do this [the sprites thing] right away -- add to queue).
/Hehe on the animated gif idea. Actually that thought did cross my mind.
I think the closer "Quake" comes to not using weird "proprietary" methods for doing rather mainstream stuff, the better off it will be. |
|
Back to top |
|
 |
mh

Joined: 12 Jan 2008 Posts: 910
|
Posted: Thu Jan 08, 2009 12:27 am Post subject: |
|
|
Oh, if only I could remember the number of times I've come to grief over all of Quake's weird little formats.
Sprites are really just regular graphics collapsed by the sprgen program to a single file which also contains the animation information. The source is a QC file and some images (LBM format I seem to remember), the ourput is a SPR file. Convenient for storing all of the relevant info in the one place, but messy to work with.
Best replacement option would be a text-based script file (something that could be handled by COM_Parse would be preferable, rather than having to go down the alternate format route) and a series of images which may be any format loadable by the engine.
Second best would be a proper GUI-based replacement for sprgen which lets you import/export images, set flags and properties, etc.
So far as loading is concened, as was said, so long as the file is called *.spr, it's in the right place, and the engine knows how to tell the difference between it and regular sprites, there should be no problem. I don't see any reason why the text based script can't be called *.spr.
_________________________
One other thought - PCX files can't store alpha, so unless we either get universal agreement that palette index 255 is transparent, or use another format (like 8bpp PNG) they won't work. _________________ DirectQ Engine - New release 1.8.666a, 9th August 2010
MHQuake Blog (General)
Direct3D 8 Quake Engines |
|
Back to top |
|
 |
leileilol

Joined: 15 Oct 2004 Posts: 1321
|
Posted: Thu Jan 08, 2009 10:17 am Post subject: |
|
|
I propose someone to write a GUI win32 program that can edit .spr, .wad, and .lmp. |
|
Back to top |
|
 |
Willem
Joined: 23 Jan 2008 Posts: 73
|
Posted: Thu Jan 08, 2009 10:38 am Post subject: |
|
|
I'm working on an OSX program that will do that. I'm turning my ToeTag level editor into a Quake editing suite. It will include a level editor, WAD editor, PAK editor and others. I'm hoping for a model editor, sprite editor and QuakeC editor eventually as well. A whole "make a mod" suite of applications.
Of course, as I said, it's all OSX. I'll be releasing the source code though, as I have been with the level editor so far. _________________ www.wantonhubris.com |
|
Back to top |
|
 |
Baker

Joined: 14 Mar 2006 Posts: 1538
|
Posted: Thu Jan 08, 2009 10:47 am Post subject: |
|
|
Willem wrote: | I'm working on an OSX program that will do that. I'm turning my ToeTag level editor into a Quake editing suite. It will include a level editor, WAD editor, PAK editor and others. I'm hoping for a model editor, sprite editor and QuakeC editor eventually as well. A whole "make a mod" suite of applications.
Of course, as I said, it's all OSX. I'll be releasing the source code though, as I have been with the level editor so far. |
You were supposed to nice leileilol's link to FrikaC's fimg editor in his post.
I'd like to see the QuakeC compiler become for testing purposes only and remove the ability for an engine to use progs.dat and instead have engines have QuakeC just-in-time compilation and instead of using a progs.dat, it expects the source code in a progs.zip file.
This would end the problem of protectionist projects where people lose the QuakeC or severe bugs or limitations arise in the future as invariably happens with all closed source.
Most experienced modders release their sources, but the current "system" encourages bad practices and allows many new modders to make all the same mistakes of Quake's past ... a problem that could be avoided.
Last edited by Baker on Thu Jan 08, 2009 10:48 am; edited 1 time in total |
|
Back to top |
|
 |
|