32 bit art for allegiance

Discussion area for user-created Allegiance models, textures, voicechats, music, and other ingame content.
madpeople
Posts: 4787
Joined: Tue Dec 16, 2003 8:00 am
Location: England

Post by madpeople »

in one thread on high res environments "banding" was commented upon, it was because allegiance art was in 16 bit not 32 bit, so the colour range was quite limited.

i asked in FAZ forum for allegiance to support 24 bit, YP gave this response:
Your_Persona wrote:QUOTE (Your_Persona @ Dec 20 2006, 05:32 PM) I compiled these a while ago.

http://austin.bluedepot.com/alleg/mdlc32bitalpha.zip
http://austin.bluedepot.com/alleg/mdlc32bitnoalpha.zip
http://austin.bluedepot.com/alleg/mdlc_24bit.zip

You should be able to test these out on the original high res artwork(not something that has already been converted to mdl, because that has already lost its color quality) that has been released recently.

Our current mdlc is 16bit.

You should be able to drop in the 24bit/32/32alpha textures into artwork/textures and do some benchmarks.

I would like to know the performance differences. If I need to add an option to the graphics menu to reduce the bit depth for older systems. Does 32bit/32withAlpha perform better as the bits are (aligned?) with the 32bit registers?
i would like our high res artists (especially the environment people) to make some 24 / 32nA (no alpha) / 32 bit versions of the highres art for testing.

now, you may want to know how to use these

make a folder somewhere, call it "converters" now in that folder make 4 folders "16Bit" "24Bit" "3Bit2NA" "32Bit"
in
"16Bit" extract
http://austin.bluedepot.com/mdlc.zip - this is the original converter tool, which you should be using anyway, since mdlfx can create buggy files that cause crashes
http://austin.bluedepot.com/mdlcMasterBat_1.zip - this is a nice front end for the original tool, made by YP. it lets you convert loads of files at once! /smile.gif" style="vertical-align:middle" emoid=":)" border="0" alt="smile.gif" />

in
"24Bit" extract
http://austin.bluedepot.com/alleg/mdlc_24bit.zip - this is the 24 bit version of mdlc, compiled by YP
http://austin.bluedepot.com/mdlcMasterBat_1.zip

in
"32BitNA" extract
http://austin.bluedepot.com/alleg/mdlc32bitnoalpha.zip - this is the 24 bit version of mdlc, compiled by YP
http://austin.bluedepot.com/mdlcMasterBat_1.zip

in
"32Bit" extract
http://austin.bluedepot.com/alleg/mdlc32bitalpha.zip - this is the 24 bit version of mdlc, compiled by YP
http://austin.bluedepot.com/mdlcMasterBat_1.zip

how to use them:
take the files you want to convert (these must be .bmp ! ) copy them to the correct folder - if you want to make 24 bit bmp.mdl's copy them to the "24Bit" folder
then run the MDLCmasterBat.exe in the folder you copied the files to (left button)
use it to select the files you want to convert, then click run batch file button (right button)
the converted files (bmp.mdl) should appear in the folder your working in
Orion
Posts: 1733
Joined: Tue Jul 01, 2003 7:00 am
Location: Planet Min·ne·so·ta
Contact:

Post by Orion »

I thought Allegiance already used 24-bit bmps, thats what I always have saved them as (then again, I did convert them to bmpmdl's later). What exactly is the advantage of 32 bit over 24.. considering 24-bit bmps already deliver the equivelent of 32bit colors for RGB (that is to say, other 32 bit formats provide 8 bits per color per pixel), but without the 8 bits of alpha channel (which isn't visible).

What would no alpha provide? 10.666 bits per color per pixel? /tongue.gif" style="vertical-align:middle" emoid=":P" border="0" alt="tongue.gif" />
Last edited by Orion on Wed Dec 20, 2006 7:59 pm, edited 1 time in total.
Image
asheron2k
Posts: 360
Joined: Sat Feb 05, 2005 8:00 am
Location: Texas

Post by asheron2k »

Isn't it obvious.. Pixel padding and bloat
Clay_Pigeon wrote:QUOTE(Clay_Pigeon @ May 13 2008, 08:24 PM) can i post a story about my cat flying an elf?
madpeople
Posts: 4787
Joined: Tue Dec 16, 2003 8:00 am
Location: England

Post by madpeople »

alleg uses 16 bit colour textures right now. all your textures get converted to 16 bit when you convert them.

well, use 24 bit then, i thought 32 bit was probably overkill.
Pook
Posts: 1758
Joined: Tue Aug 13, 2002 7:00 am
Location: Texas, USA

Post by Pook »

Not to piss in anyone's cheerios - but one of the draws of Allegiance is that you don't need a $500 video card to run it well.
Image
Freeza
Posts: 304
Joined: Sat Mar 05, 2005 8:00 am
Location: Northeast, U.S.A.

Post by Freeza »

Using 7 year old technology is fun.
Image
To Punish and Enslave...
madpeople
Posts: 4787
Joined: Tue Dec 16, 2003 8:00 am
Location: England

Post by madpeople »

Pook wrote:QUOTE (Pook @ Dec 20 2006, 11:22 PM) Not to piss in anyone's cheerios - but one of the draws of Allegiance is that you don't need a $500 video card to run it well.
these things are all optional.

all the high res things are optional.
all the high def sounds are optional

i thought it has been agreed that people have old equipment was an argument not to be used to stop development.

anyway, will switching from 16 bit to 24bit really slow things down that much?

is allegiance clever enough to transfer 2 sets of 16 bit colours along the 32bit data bus in one go, or do 16 bits of data bus go un-used?
if they do, then 24bit will not really make a difference, unless your running a 16bit processor.

but the point in making some 24 bit files is to see what difference they make to performance, and to make images look nicer with less of the banding we saw on some posters

anyway, if people still have their art in .bmp format it will only take a few mins to convert it with the new versions of mdlc.

assuming were going for 24bit as std, 32bit as something for future if we decide allegiance needs to use alpha channel?
Last edited by madpeople on Thu Dec 21, 2006 12:29 am, edited 1 time in total.
mdvalley
Posts: 324
Joined: Sun Nov 21, 2004 8:00 am

Post by mdvalley »

First of all, there is no such thing as a 32 bit bitmap file. They don’t go that high. Only up to 24.

In memory, a 32 bit bitmap data is one of two things: 24 bits plus padding, or 24 bits plus 8 for alpha. Allegiance reads data as the former, using a special color (read: black) to designate transparency. And you can't put alpha information in a bmp file anyways.

The padding is there because modern operating systems handle data more efficiently in 32 bit chunks than 24. 32 bit color on your monitor works the same way, in case you were wondering.

So yeah, Alleg uses black as transparent, with a dword (somewhere) in the MDL file to tell it whether to enable transparency for that texture.

I know we have a handful of 32-bit color mdl files. Specifically, the mouse cursor.

When Allegiance wants to make, say, the intro screen, it takes all the images and slaps them together in assembly language into one big image, then draws that to the screen. The thing is, the assembly language only works on 16 bit textures. The mouse is probably drawn separately.

I’m sure you can get away with using 32 bit textures on the 3d aspect, but what’s the point if the display is in 16 bit color?
Adaven
Posts: 1959
Joined: Sat Oct 25, 2003 7:00 am
Location: Greater Ozarks

Post by Adaven »

On a side note, about enabling transparency in the MDL file. All ship/rock/station textures are strictly opaque, i.e. black appears as black, not transparent. Is there a way to go and make that change you mention so that one could make part of an object translucent? There has to be something, because alephs and buildspheres are see through, and it'd open up a lot of creative opportunities if you could do if for other objects I think. So is this something you'd have to do in the .mdl or the bmp.mdl?
Last edited by Adaven on Thu Dec 21, 2006 5:49 am, edited 1 time in total.
mdvalley
Posts: 324
Joined: Sun Nov 21, 2004 8:00 am

Post by mdvalley »

For the alephs and build spheres, Alleg uses a trick called alpha blending. In short, it’s a way to make stuff semi-transparent without messing with alpha settings in the texture. We MIGHT be able to pull it off for a ship (or part of one), but it would need some code wrangling, and something in the mdl file to tell what’s transparent and what’s not (as well as code to parse that in, and Alleg’s mdl parser is WEIRD.)
Post Reply