Allegro.cc - Online Community

Allegro.cc Forums » Allegro Development » How to join allegro development ?

This thread is locked; no one can reply to it. rss feed Print
How to join allegro development ?
dhia hassen
Member #16,240
March 2016

I wanna join allegro 5 development , how can i do that ? where to post my code , how to add and edit code and who will accept or reject it , and depending on what rules

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

SiegeLord
Member #7,827
October 2006
avatar

Also you can send pull requests to the github repository: https://github.com/liballeg/allegro5. The most basic requirement is for the style to match the surrounding code. A more involved requirement is that it sort of should fit the style of Allegro... e.g. don't send us game-engine-like changes :P.

"For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18
[SiegeLord's Abode][Codes]:[DAllegro5]:[RustAllegro]

dhia hassen
Member #16,240
March 2016

thanks alot , is there any way to join the official team ?

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

beoran
Member #12,636
March 2011

Welcome and thanks for your interest in Allegro! The easiest way to get started will probably be to clone the github repository so you can make pull requests, as SiegeLord stated. As for what you could do, it depends on your interests and available platforms to work on.

On all platforms we need bugfixes and small enhancements to existing functionality. As for desirable "big" features for the future, I think VULKAN support on all platforms, as well as Wayland and maybe Mir support on Linux would be nice. Another idea I have is that maybe we should render TTF fonts as primitives and not as bitmaps. Futhermore, the audio recording and video plugins can use some improvements. Multilingual input with input methods on all platforms would also be nice.

Our main competitor here is SDL, I personally think it would be nice if we could match most important features of SDL that Allegro is still missing. Or, if we could at least fix certain problems that exist on Allegro and not on SDL. :P

There's an old roadmap on the wiki, but I think it's obsolete. I think we should update it? https://wiki.allegro.cc/index.php?title=Allegro_roadmap

ks
Member #1,086
March 2001

As a bit of an aside, with respect to font rendering, might it be useful to borrow code from anti-grain (http://www.antigrain.com/). If I recall correctly, v2.4x is liberally licensed. Compiled demos are available on the page.

Mark Oates
Member #1,146
March 2001
avatar

TTF to primitives would be nice. That would have direct applications to 3D which currently aren't available.

Imagine an extruded 3D font with a glitzy shader. 8-)

--
Visit CLUBCATT.com for cat shirts, cat mugs, puzzles, art and more <-- coupon code ALLEGRO4LIFE at checkout and get $3 off any order of 3 or more items!

AllegroFlareAllegroFlare DocsAllegroFlare GitHub

Rodolfo Lam
Member #16,045
August 2015

That sounds like a good start for a demoscene intro xD

dhia hassen
Member #16,240
March 2016

@Bearan
the best thing to do in competition with SDL is to make the android build on windows as easy as SDL , i don't know why you didn't do that yet !! ??? , that's the only thing preventing me and many many others from porting thier awsome game to android and make allegro more popular , i think we should make it even more easy than SDL , maybe by a smart python script that works on all platforms ( not the boring Cmake that is not well working on windows ) , the python script should then expect some input and environment variables and add pass commands to ant and the ndk (ant is much easier than gradle and it is tiny ), i work that way with my games and it is the best way ever , if we implement it more allegro games will come to android and you won't believe the success , i really want to help doing this thing if i find help from you ::)

beoran
Member #12,636
March 2011

Hmm, I can see that making it easier to use Allegro 5 on Android and IOS is probably an important factor these days. But personally I haven't tried it myself so I can't be of too much help for now. Elias and Trent are probably better placed to assist you on that front. I agree that a build script that makes the Allegro build for Android easier is a nice feature, however, if possible it should be written in CMake since that we already use.

Max Savenkov
Member #4,613
May 2004
avatar

Personally, I found building Allegro for Android to be not a very big problem, by using NVidia's AndroidWorks and modern CMake's support of this Visual Studio plugin. It's not completely straightforward, but workable.

Unfortunately, CMake can't generate AndroidStudio/Gradle projects, but nowadays, Gradle can reference CMake projects, so it's an option for those who are willing to use Google's "official" Android IDE.

What I thing would be very daunting for beginners is building dependencies, because most of them are not well-suited for cross-compilation on Windows (on Linux, it's a different story, but newbies on Linux probably are more knowledgeable in general). Most of libraries Allegro use are quite stable, so a package of pre-build dependencies for Android and iOS would be a welcome thing.

beoran
Member #12,636
March 2011

Well, we already have volunteers here who graciously compile Allegro and it's dependencies for Windows. Anyone volunteering to do the same for Android would be most welcome.

Max Savenkov
Member #4,613
May 2004
avatar

What does dependencies maintenance include? Compiling any new stable version of a dependency when it comes out? I mean, most of the time, Allegro only needs a certain version of dependency compiled once (for all possible architectures), and can live with it for quite a few years...

dhia hassen
Member #16,240
March 2016

Nice suggestions , but you guys are missing something here , SDL2 succeeded on ios and android because it made the building process platform independent and IDE independent ( this is what you really want ) , don't rely on android studio or gradle , maybe someone (like me) don't wanna use that huge Android sudio IDE for some reason , you don't want that to prevent him from using allegro , maybe someone is not using gradle too , so the best solution that will make everyone on every platform soo happy and satisfied with allegro is by using a Ant build script ( the tiny ant ;) ) that is useful even with the commandline only , and the easiest way to compile ... i think that that's why SDL2 owned this domain , it didn't bother people with opinion-related IDE choice , everyone can compiled SDL in a soo soooo soooo easy steps with ANT on every platform , let allegro be so , not using cmake because it doesn't work so well on windows , and because not everyone is using microsoft visual studio especially the last version that doesn't work on win 7 ( the most widely used win version ) , so let's write a ANT-script for the hole allegro library , that's the best choise

Max Savenkov
Member #4,613
May 2004
avatar

Maintaining a platform-dependent build script is too much of a pain, I think. CMake does its job well for the most part.

Also, Ant is awful, and is not recommended by Google for use anymore. If you have modern Android SDK, you can and should use Gradle, which is also awful, but WAY better than Ant, and also happens to have CMake integration.

Elias
Member #358
May 2000

I just put Allegro binaries on jcenter which is what Android Studio uses to look for dependencies - so building an Allegro game for Android just got quite a bit more simple (and building Allegro is no longer required):

https://github.com/liballeg/android

(The github repository also includes the script used to build Allegro for all the different Android architectures and upload the result to jcenter.)

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

Max Savenkov
Member #4,613
May 2004
avatar

Elias, you're a true hero!

dhia hassen
Member #16,240
March 2016

From here http://stackoverflow.com/questions/12017580/c-build-systems-what-to-use it looks like Cmake is the most crosssplatform ( well nothing new here XD ) , but something to note is that in Cmake we should be careful to let our script be crossplatrform because some rules need to be followed ( from the same link ) , currently im not using android studio , because it is hige and slow , i know many developers with this problem, writing an allegro build script is still recommended , from here ( https://docs.gradle.org/current/userguide/tutorial_gradle_command_line.html ) and here ( https://developer.android.com/studio/build/building-cmdline.html ) gradle is soo useful from commandline , so the build script will not need the IDE

Go to: