1. New wiki work - an Allegro game kit.

Hi

After lots of playing around with loads of options, I've decided to commit to creating a game creation kit, bringing together various modules and wrappers from what is currently available from the Euphoria community, and add and hopefully enhance them so that it should be relatively easy to create some great games for Euphoria.

The modules I've chosen (and no doubt there will be some controversy here) are

  • Phix (Pete Lomax)
  • Allegro 4.2 (Ray Smith)
  • FMOD (Aku)
  • Freeimage (Greg Habarek)
  • Joystick (Mic)

I've decided to use 4.2, as the Allegro 5 demos are fairly sparse, and I believe (though not confirmed) that there are some name mangling issues. FMOD has been greatly enhanced, Freeimage has been slightly modified, and Joystick has been updated for multiaxis / multibutton devices. They have all been modfied to be Phix compliant.

As part of the jpeg experimentation, I've created a Freeimage wrapper to convert jpgs to bmps on the fly, which in turn has also allowed the creation of jpg2bmp.exe, a command line / batch convertor, or drag'n'drop. It has been compressed with petite, hence it's very small size.

I've started a wiki for it (which anyone is welcome to add to / modify / improve), which will hopefully be a one stop resource for simple game creation with Euphoria. I'm in the process of creating a game with it, stage by stage to illustrate game creation, have included some graphic demos from Stephen Shaws SDLBasic site ( http://shawweb.myzen.co.uk/stephen/sdlbasic.htm ), and also a box.net link to the complete kit with demos, help files, and a very comprehensive allegro add on toolkit.

The wiki page is at http://openeuphoria.org/wiki/view/allegro.wc.

Hope you enjoy it as much as I am creating it (still ongoing), as part of the original joy of programming for me was creating very simple games, and solving interesting problems, this kit almost takes me right back there.

Cheers

Chris

new topic     » topic index » view message » categorize

2. Re: New wiki work - an Allegro game kit.

I like the idea of having a game development API for Euphoria. I'm sorta surprised you didn't use my SDL2 wrapper as the backbone, but I can see what you would go with something like Allegro 4. If there weren't so many hurdles to go through to wrap XNA or Monogame, I think those would be a good idea for a game development kit for Euphoria.

new topic     » goto parent     » topic index » view message » categorize

3. Re: New wiki work - an Allegro game kit.

Hi

It wasn't personal, it was just the easiest set of 'modules' to get running. Actually I'm quite proud of the fmod wrapper update, even though the dll is very old.

I think the Monogame / XNA route is probably a little beyond the intentions of this project too!

It's kind of stalled at the moment - real life getting in the way, but it's always in my mind, so expect more chapters on robot's revenge coming soon. I've started on map and level creation. I do like the screams!

Of course, there's nothing stopping you writing an euSDL2 kit - it's just about gathering everything together to make game creation for eu as simple as possible, with examples - we are all well aware that we'll never write the next Doom with the kits, but everyone started somewhere. I've even got a very simple flight sim growing in my head, and a 3d chess game. Just wish I could get them in the computer.

Cheers

Chris

new topic     » goto parent     » topic index » view message » categorize

4. Re: New wiki work - an Allegro game kit.

Nice creating games, isn't it?

Especially when you will be able to give it an educatory side as well,

AND make it that hard almost nobody will ever be able to beat YOU at YOUR game. unless he found a better algorhythm to do so, than you built into it.

Easy, peasy, to write such game as long as it is no Shoot'em-up OR too tricky or graphically intricate to bring it on any monitor.

new topic     » goto parent     » topic index » view message » categorize

5. Re: New wiki work - an Allegro game kit.

Ekhnat0n said...

AND make it that hard almost nobody will ever be able to beat YOU at YOUR game. unless he found a better algorhythm to do so, than you built into it.

Hehe - not really in the spirit of what I do.

Ekhnat0n said...

Easy, peasy, to write such game as long as it is no Shoot'em-up OR too tricky or graphically intricate to bring it on any monitor.

Allegro needs windows to work, so it will only run on monitors that run windows.

Cheers

Chris

new topic     » goto parent     » topic index » view message » categorize

6. WellRe: New wiki work - an Allegro game kit.

Alas, Chris,

That is exactly the way I won't EVER go, because Linux has windows as well and Mac even has better graphics but isn't as robust as Linux is.

AND I HATE funding a multi-billionair, LET HIM FUND ME, pretty please, he wouldn't even notice the $ 2,000,000 was missing (I could even do it with under 500,000 but it would a lesser big bang), that would MY business allow to start with a GIANT BOOOMMMM, by going thru the sound-barrier of applause and top each and every hit-game ever before.

I would make it a thriller in several sequells.

But then alas not even the most audacious group of crowd-funders seems to be interested, because they will not reap as many benefits as I would (JUST TO finance a charity-fund I would give it all to, with an exception of a mere 2% for R&D)

new topic     » goto parent     » topic index » view message » categorize

7. WellRe: New wiki work - an Allegro game kit.

ok.

new topic     » goto parent     » topic index » view message » categorize

8. WellRe: New wiki work - an Allegro game kit.

ChrisB said...

ok.

In what way ok, Chris?

In me not offering my soul to the devil? OR In a way of telling me my plan or vision is absolutely loonatickily ludacrous?

My motto on the Ubuntu-site I guess currently has to be

I think it is hilarious, it takes ONE lunatic like me, to see the madness of reality (or if you like it better) society.

MIND YOU, we have an almost full moon when witches, werewolves and the like, go wild, as they are an imaginary kind of lunatics (Luna=Moon).

Maybe I am a different kind of witch (which in fact I partially am.... a wizard) that goes towards the final curtain.

new topic     » goto parent     » topic index » view message » categorize

9. WellRe: New wiki work - an Allegro game kit.

I might start a EuSDL2 kit. Though I will most likely continue to keep wrapping as new versions of SDL2 are released. If XNA/Monogame were written in C and had the DLLs, I would probably wrap those. Of course if XNA/MonoGame is ever ported to C and the needed DLLs are made, I might just wrap it. Though I don't see it happening as XNA/Monogame is written in C# using the .NET Framework.

new topic     » goto parent     » topic index » view message » categorize

10. WellRe: New wiki work - an Allegro game kit.

Icy_Viking said...

Of course if XNA/MonoGame is ever ported to C and the needed DLLs are made, I might just wrap it. Though I don't see it happening as XNA/Monogame is written in C# using the .NET Framework.

It can certainly be done:

https://stackoverflow.com/questions/5947835/wrapping-c-sharp-code-to-be-called-from-c

Here's an example using COM:

https://www.codeproject.com/Articles/9903/Calling-Managed-Code-from-Unmanaged-Code-and-vice

https://www.experts-exchange.com/questions/22006727/Wrapping-a-managed-C-DLL-in-a-unmanaged-C-project.html

Another example, but without COM:

https://www.codeproject.com/articles/378826/how-to-wrap-a-csharp-library-for-use-in-java

One could also create a wrapper C dll that had an init function that takes a lot of function pointers, and then a helper C# dll that wraps XNA/MonoGame in delegates and then calls the C init function via p/invoke to pass the function pointers inside the delegates. Then the C wrapper would call a function pointer which would pass to XNA/MonoGame.

http://blogs.microsoft.co.il/sasha/2012/01/28/managed-unmanaged-interoperability-in-the-2010s-part-2-pinvoke-unmanaged-to-managed/

new topic     » goto parent     » topic index » view message » categorize

11. WellRe: New wiki work - an Allegro game kit.

jimcbrown said...
Icy_Viking said...

Of course if XNA/MonoGame is ever ported to C and the needed DLLs are made, I might just wrap it. Though I don't see it happening as XNA/Monogame is written in C# using the .NET Framework.

It can certainly be done:

https://stackoverflow.com/questions/5947835/wrapping-c-sharp-code-to-be-called-from-c

Here's an example using COM:

https://www.codeproject.com/Articles/9903/Calling-Managed-Code-from-Unmanaged-Code-and-vice

https://www.experts-exchange.com/questions/22006727/Wrapping-a-managed-C-DLL-in-a-unmanaged-C-project.html

Another example, but without COM:

https://www.codeproject.com/articles/378826/how-to-wrap-a-csharp-library-for-use-in-java

One could also create a wrapper C dll that had an init function that takes a lot of function pointers, and then a helper C# dll that wraps XNA/MonoGame in delegates and then calls the C init function via p/invoke to pass the function pointers inside the delegates. Then the C wrapper would call a function pointer which would pass to XNA/MonoGame.

http://blogs.microsoft.co.il/sasha/2012/01/28/managed-unmanaged-interoperability-in-the-2010s-part-2-pinvoke-unmanaged-to-managed/

Well those are some useful examples. I might take a crack at it, though Monogame is fairly big, so it would take a good chunk of time to wrap it. Still this is good to know.

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu