Allegro.cc - Online Community

Allegro.cc Forums » Allegro Development » Allegro 5.0.0 released!

This thread is locked; no one can reply to it. rss feed Print
Allegro 5.0.0 released!
Ron Novy
Member #6,982
March 2006
avatar

He's alive! :D

There was a VBE/AF driver, but VBE/AF always sucked...

Quote:

* On the subject of VBE/AF in general:
*
* Kendall Bennett and Tom Ryan of SciTech software deserve
* significant thanks for coming up with such a magnificent API and
* then helping me write this driver, after the VESA people (may they
* be smitten with plagues of locusts and then develop subtle memory
* leaks in their code :-) decided to charge stupid sums of money for
* copies of the /AF specification. Unfortunately, SciTech have
* subsequently abandoned VBE/AF in favour of a closed, proprietary
* system called Nucleus. Ah well, I'm sure that this makes sense
* for them in commercial terms, even if it is something of a
* disappointment for us idealistic hacker types...
*
* The problem with Nucleus is that the spec is only available under
* NDA, so I cannot support it directly in Allegro. The plan,
* therefore, is to write a Nucleus to VBE/AF wrapper driver.
* This requires a few callback routines that stock VBE/AF doesn't
* provide, hence the Nucleus-specific extensions in this file. It
* doesn't provide direct Nucleus support, but hopefully will enable
* someone (whether us or SciTech) to add that support in the future
* via an external driver binary.
*
* By Shawn Hargreaves.

After reading that, I don't blame him for not wanting to add support for 3D acceleration. Back then it would have been a real pain to write and support too. But today, with OpenGL, we have a nice cross-platform way to deal with hardware... So in my opinion, there really isn't any big argument against adding hardware acceleration or 3D acceleration to Allegro.

Just need to wait for things to mature before you say 'never'... ::)

----
Oh... Bieber! I thought everyone was chanting Beaver... Now it doesn't make any sense at all. :-/

Elias
Member #358
May 2000

He indirectly influenced some stuff in A5 - e.g. his change of the default blending mode from linear alpha to pre-multiplied alpha in XNA 4 made me realize the difference (and slight advantage) so Allegro 5 also uses pre-multiplied by default now :)

--
"Either help out or stop whining" - Evert

William Labbett
Member #4,486
March 2004
avatar

\O/ cool. No more recompiling the svn and rc versions!

Well done guys.

Andrei Ellman
Member #3,434
April 2003

Congratulations \o/ /°\ \o/

Evert said:

5.0 doesn't do palette effects

Is this just things like fades, or are we talking about code that relies on colourmap-tables?

--
Don't let the illegitimates turn you into carbon.

Evert
Member #794
November 2000
avatar

Is this just things like fades, or are we talking about code that relies on colourmap-tables?

There are no palettes, no bitmaps that index colour entries from a palette, no palette graphics modes.

Dennis
Member #1,090
July 2003
avatar

A5! Belated congratulations everyone.

Recompiled my current project (previously used 4.9.<something> from SVN) yesterday.

Everything fine except for one minor thing:
All my bitmap font output suddenly wasn't with a transparent background anymore and instead was rendered opaque(-ish) over the black target with a pink background (alpha = 0 though).

I had chosen that pink(255,0,255,0) as background for nostalgic reasons in my bitmap font generation routine, assuming that with an alpha of 0 it would never show anyway (and that worked with 4.9) but not in 5 anymore.

Playing around a bit with al_set_blender, more specifically, using al_set_blender(ALLEGRO_ADD, ALLEGRO_ALPHA, ALLEGRO_INVERSE_ALPHA);
I could get it back to rendering exactly as in 4.9. Another solution which seemed to have the same effect was to change the transparent background of the font to (0,0,0,0) and not explicitly use al_set_blender at all.

Elias said:

so Allegro 5 also uses pre-multiplied by default now

I really wish I had read that earlier. That's what I get for not reading the changelogs thoroughly.

lillo
Member #303
April 2000
avatar

Late to the party, but here I am...

Congrats to all the devs! A5 looks beautiful, and a much needed revamp, critical to attract new devs and to be competitive again today.

I have been hanging around the community for the last 5 years or so, but real life issues have left me with no time to really get involved either with Allegro, either with anything else that wasn't related to my job; despite this, I hope I will find the time to write something using A5 sooner or later.

So congrats all!

PS: haven't seen the news about A5 on gamedev.net or any other significant site... time for the PR team (!) to start moving?

--
Angelo Mottola
lillo AT users DOT sourceforge DOT net
Enhanced Creations++

Elias
Member #358
May 2000

lillo said:

time for the PR team (!) to start moving

Indeed. All the allegro.cc users are the PR team btw. whether they knew it or not :)

--
"Either help out or stop whining" - Evert

Dennis
Member #1,090
July 2003
avatar

lillo said:

haven't seen the news about A5 on gamedev.net or any other significant site

So, you're thinking of the GDR as insignificant, eh? .. Noted. (well actually I hope it stays that way ;D )

Elias
Member #358
May 2000

Haha, I like the "(fore real)" in the post title there :)

--
"Either help out or stop whining" - Evert

Peter Wang
Member #23
April 2000

I wonder how many of the old timers check what's happening every now and again. Surely they're not that busy. Hi, lillo :)

Don Freeman
Member #5,110
October 2004
avatar

Did the issue of creating a new display at a certain position ever get fixed/solved? I know if works on Windows now, but I thought I remembered it wasn't guarantied to work on all platforms...It would be awesome if it did, could really come in handy in my current project, if not...there are other ways to do what I want, but it would be a lot simpler though.

--
"Everyone tells me I should forget about you, you don’t deserve me. They’re right, you don’t deserve me, but I deserve you."
"It’s so simple to be wise. Just think of something stupid to say and then don’t say it."

Evert
Member #794
November 2000
avatar

Did the issue of creating a new display at a certain position ever get fixed/solved? I know if works on Windows now, but I thought I remembered it wasn't guarantied to work on all platforms...It would be awesome if it did, could really come in handy in my current project, if not...there are other ways to do what I want, but it would be a lot simpler though.

Works on OS X, not sure about X11, but I'd think so.

Rampage
Member #3,035
December 2002
avatar

Congratulations to all the developers! This is great for the community.

-R

Don Freeman
Member #5,110
October 2004
avatar

Evert said:

Works on OS X, not sure about X11, but I'd think so.

If so, making a GUI for Allegro 5 would be a lot simpler as well. ;) When I get some more time, I'll try it out on Linux as well.

--
"Everyone tells me I should forget about you, you don’t deserve me. They’re right, you don’t deserve me, but I deserve you."
"It’s so simple to be wise. Just think of something stupid to say and then don’t say it."

Evert
Member #794
November 2000
avatar

The only reason I don't know about X11 is because I don't have an X11 build of Allegro to test it with. The X11 port is probably the best tested of the three major ports (Windows, OS X, X11) though.

An Ly
Member #185
April 2000
avatar

OMG, so no more alleggl? Yayer!

Well done guys. Allegro got me into programming games and I've neglected her for a few years but I may have to come visit again.

Billybob
Member #3,136
January 2003

Wooo! Many thanks to all the developers!

Stefan Hendriks
Member #1,957
March 2005

Very late reply, but great to see finally it has arrived.

Too bad about the palette stuff not being in. My game heavily uses that to map team colors on units and structures. Is there any way to 'solve' this team mapping problem with Allegro 5?

Dennis
Member #1,090
July 2003
avatar

If you're using an OpenGL display, glPixelMap can be used to remap individual colors. Don't know if there is something similar for DirectX.

Stefan Hendriks
Member #1,957
March 2005

Well, I don't want to use any underlying implementation that Allegro might use. If possible I'd use Allegro functions. :)

Dennis
Member #1,090
July 2003
avatar

In that case, I can think of two other ways to achieve team color drawing.

One would be to keep multiple different bitmaps in memory (one for each different team color) but you'd have to do the remapping yourself after loading the image by directly replacing the pixels in the copies.

The other method would be to have additional transparent bitmaps for each frame of everything, which just contain the parts to be rendered in the team color in gray scale and then use al_draw_tinted_bitmap to render them over the base frame.

Stefan Hendriks
Member #1,957
March 2005

The second method sounds the most 'logical' to me. In fact, I could combine two methods by pre-processing images. Thanks! It will take a long time before I'll upgrade to Allegro 4, I want to seperate Allegro (or whatever library implementation) from my Game layer so theoretically I could use other libraries if needed (ie, if i'd like to port it to android). But the first step would be to go Allegro 5 :)

Peter Wang
Member #23
April 2000

For the former, it might be worth modifying one of the existing image loaders to accept a custom palette, then do the remapping while loading. It might be easier than remapping after the colour indices have been lost.

Elias
Member #358
May 2000

Independent from that we also want to add an 8-bit format for ALLEGRO_BITMAP. It could use GL_LUMINANCE and save quite a bit of memory for big fonts if we can have fonts using that instead of rgba. Could also have an 8-bit 332 color format which is supported by some devices. Those two should be quite simple to add.

And once we have them instead of accepting a palette image loaders could just check a flag to ignore the palette info and instead directly map each pixel to the 8-bit format. (In fact that flag could even work with 16/32 bit already just would be more wasteful.)

--
"Either help out or stop whining" - Evert



Go to: