AmigaOS4 port of Irrlicht 1.8.4

Announce new projects or updates of Irrlicht Engine related tools, games, and applications.
Also check the Wiki
Post Reply
kas1e
Posts: 212
Joined: Sun Jan 21, 2018 8:39 am

AmigaOS4 port of Irrlicht 1.8.4

Post by kas1e »

I do not know where to post that, but I assume its the right place.

So, after some time of bugs fixes, bug reporting and all that stuff with bug help of CuteAlien (and not only him), I was able to finish AmigaOS4 port of Irrlicht 1.8.4! Together with it I port SuperTuxKart 0.8.1 (where they use modified Irrlicht), H-Craft and Night Of The Zombies.

There is a news article I post of Amiga related sites, hope it will be of any interest there as well:

1). Irrlicht Engine 1.8.4

Image

Back in past many of us always asking for some "demo/game engine" for modern Amigas with OpenGL support and stuff, which very well tested, documented and feature-rich. There is : Irrlicht Engine.

Image Image

The Irrlicht Engine is an open-source realtime 3D engine written in C++. It is cross-platform, using D3D (for win32), OpenGL (for others) and its own software renderers. It is a stable library which has been worked on for nearly 20 years. Irrlicht got a huge community and is used by hobbyists and professional companies alike. The engine is well documented. You can find enhancements for it all over the web, like alternative terrain renderers, portal renderers, exporters, world layers, tutorials, editors, language bindings and so on. And best of all: It's completely free.

For the years there were books written for, for example, those ones (press on the image to go on amazon page):

Image Image

The engine also big-endian aware for now (it was originally, and in last year I with help from all developers (and Irrlicht ones, and our ones), fix almost all remaining endian issues).

The original release of 1.8.4 was in July 2016, and work on 1.9.0 is ongoing right now with a lot of new features added and bugs fixed. Once there will be 1.9.0 out, the AmigaOS4 version will come out as well.

Through, 1.8.4 already very enough for making the games, and as examples of its usage there today 3 new games based on it.

AmigaOS4 port is on Github here: https://github.com/kas1e/Irrlicht/ and if you find any amigaos4 specific issues plz report them on issues page here: https://github.com/kas1e/Irrlicht/issues (and yes, odyssey didn't work with Github anymore, so you had to use Linux or win32 for Github).

It is released in 2 variants (which you can grab from os4depot as everything else):

irrlicht-1.8.4.lha - full archive, with all the sources, includes, documentation, precompiled binaries, link library and media files. Size of archive 115mb.
irrlicht-1.8.4_minimal.lha - that just includes and newlib's link library which is enough to start code over it. Size of archive 4mb.

The engine is fully tested to be compiled and on AmigaOS4 natively and over cross-compiler (see the readme_amigaos4.txt inside). As a basis for makefile(s), I use the latest GCC 8.3.0 from adtools, so if you on something older, you will have needs to adjust makefiles a bit (by removing -athread=native)

For examples check 'bin/AmigaOS4/' directory, because the directory 'examples' is for source codes. Every example on running asks you what rendering backed you want, so for AmigaOS4, it can be: OpenGL (via GL4ES/ogles2/warp3dnova in our case), Burning's Software Renderer (very accurate) and Software Renderer (not very accurate, but faster).To close example press alt+f4, or press on the close gadget as usual.

NOTE!: If you wish to program over Irrlicht Engine, you also should be sure that you have GL4ES SDK installed.

Compiling over MiniGL with some hacks possible, but it gives so bad results in compare, as well as gives lots of visual and crashing bugs. But for sake of tests, I was able to make some hacked MiniGL version just to show the difference (at least in those examples which runs somehow and before they crash:) ) in compare with gl4es one. See that pretty graph (as with all other images there, click on it for full size):

Image

And as usual, a video:

Image Youtube video of Irrlicht Engine in action on AmigaOS4, 1920x1080 full HD

2). SuperTuxKart 0.8.1

Image

One of the first Irrlicht based games I was able to deal with is SuperTuxKart 0.8.1:

Image Image

One may ask why 0.8.1 and not the very latest one? There are 2 reasons:

1). That was the last version where they use the public version of Irrlicht, and since 0.9 they move to their own engine, porting of which means porting another engine just for one game (and I am not sure, but probably they also dropping big-endian support since that too).

2). Their latest versions pretty slow even on the modern PCs (tested it myself of course), while visually they not _that_ better than 0.8.1 as one may expect for such an fps drop.

Surprisingly the hardest part there was to deal with amigaos4 paths (full of them, in all possible places, in different ways of usage). As well a game does use heavy Ftell()/Fseek(), which found some problems in Newlib, which was fixed in and will be available in the next os4 update, but in the meanwhile, I add some workaround code, so loading will be fast and on public Newlib.

NOTE!
One sad remark though: Don't enable "use frame buffer object" in options, or you will then crash with "invalid FBO attachment" when you choose a car. The issue is known, and we still trying to understand where it comes. Visually, without that enabled, it only gives you a little bit of slowness when you choose a car (rotation of cars will be not very fluid), but in other parts and in actual gameplay you will not notice that. Once we fix a bug I will make another release.

On x5000 with RadeonHD and latest ogles2/warp3dnova, you can expect up to 60FPS on some levels, while in other ones you may drop to just 15-20. Most of the time you will be around 30-40.

A game needs about 350 MB of RAM, 350 MB of GPU memory, 40 MB of system's VRAM memory and 350 MB of HDD space.

You can see it on video:

Image Youtube video of SuperTuxKart 0.8.1 in action on AmigaOS4, 1920x1080 full HD


3). H-CRAFT Championship

Image

H-Craft Championship is fun to play sci-fi-racer. It features 28+ racetracks, a fresh design and unique driving physics. It comes with a challenging Championship, an arcade, and 2 time-attack modes. Also on "Rivals" up to 4 players can have an exciting tournament on a single computer.

Image Image

The game was commercial and closed-source, but just a few years ago sources were open.

On x5000 with RadeonHD and latest ogles2/warp3dnova, you can expect 50-65 fps in 1920x1080.

You also need to read (or at least check) the tasty PDF coming with the game. As the game was commercial, it means that all was done as should, and it comes with good pdf tutorial.

There are a few brief moments which probably need to take attention on before you start:

-- to have FPS counter enabled press "F11" in an actual game.
-- to change between fullscreen/window mode, change in media/config.xml on line 23 "fullscreen" value (1 - fullscreen, 0 - window).
-- to change between different camera views press "C"

A game needs about 250MB of RAM, 300 MB of GPU memory, 35 MB of system's VRAM memory and 250 MB of HDD space.

See how it all in action:

Image video of H-CRAFT Championship in action on AmigaOS4, 1920x1080 full HD


4). Nights of The Zombies

Image

NIGHT OF THE ZOMBIES it's a first-person-shooter where you must survive endless waves of attacking zombies, earning points that may be used to purchase weapons, unlock new areas, etc. Every next round, zombies become stronger, faster and more hungry!

Image Image

Game is close-sourced, but the author gives me sources to make AmigaOS4 port, and later allow to made Pandora port by ptitSeb as well.

That one takes a bit of love:

-- we rewrite close-sourced IrrKlang (3d party sound/music library for Irrlicht which game use for win32) to SDL_Mixer
-- fixes a bunch of errors which win32 somehow handle and didn't crash
-- add support of not only old Irrlicht , but also of new one.
-- because of that game was fixed alignment issues in MS3D mesh loader of Irrlicht (by Salas00 and Corto).
-- rewrite a postprocessing shader to not use texture arrays which warp3dnova didn't support yet.
-- fixes a bunch of issues with signed/unsigned ints
-- fixed lots of warnings which GCC 8.2.0 throw and compile whole code with -Wall and -O4
-- fixed in gl4es calculation of FOG in pixel shader instead of vertex (initially that was done for speed reasons, but seems mesa on Linux and win32 doing it in pixel, so..)
-- usual endian and paths fixes

A game needs about 450 MB of RAM, 500 MB of GPU memory, 10 MB of system's VRAM memory and 350 MB of HDD space.

You also need 1280x720 (widescreen) or 1024x768 (normal screen) for fullscreen modes.

On running you will be asked if you want fullscreen. Pressing "y" will run it in fullscreen, and "n" in a window.

There is a video (with some experimental 1920x1080 mode added for fullscreen, which is not yet in release):

Image Youtube video of Night Of The Zombies in action on AmigaOS4, 1920x1080 full HD

Thanks for reading, and thanks to CuteAlien for all his help :)

@CuteAlien
Is it possible to upload full 1.8.4 amigaos4 release to sourceforge as well, just so to spread the word ?:)
CuteAlien
Admin
Posts: 9734
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: AmigaOS4 port of Irrlicht 1.8.4

Post by CuteAlien »

Wow, engine + 3 games, that's a lot of work!
Not sure if uploading to sourceforge makes sense as you probably continue developement on github. But I can mention it on the front-page and add a link in the downloads page if you want.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
kas1e
Posts: 212
Joined: Sun Jan 21, 2018 8:39 am

Re: AmigaOS4 port of Irrlicht 1.8.4

Post by kas1e »

@CureAlien
Sure, the more spreading of the word the better :)
There is link: http://os4depot.net/share/development/l ... rlicht.lha
CuteAlien
Admin
Posts: 9734
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: AmigaOS4 port of Irrlicht 1.8.4

Post by CuteAlien »

I've added a post to the front-page and the downloads section. If you want more info in that post (or a different text), just pm me. I can also put a link to some image in there (I can copy the image to our webserver if you want or link directly to your server).
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
kas1e
Posts: 212
Joined: Sun Jan 21, 2018 8:39 am

Re: AmigaOS4 port of Irrlicht 1.8.4

Post by kas1e »

Thanks! The text is surely fine! Maybe worth to add just one image, like this one:

http://kas1e.mikendezign.com/aos4/gl4es ... creen1.jpg
CuteAlien
Admin
Posts: 9734
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: AmigaOS4 port of Irrlicht 1.8.4

Post by CuteAlien »

OK, sure. Thought I scale them always a bit down on front-page so if you want another just mention it (just takes me a minute to switch, though takes a bit longer to show up as there are some caches involved in hosting).
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
netpipe
Posts: 670
Joined: Fri Jun 06, 2008 12:50 pm
Location: Edmonton, Alberta, Canada
Contact:

Re: AmigaOS4 port of Irrlicht 1.8.4

Post by netpipe »

i have omega the amiga emulator being ported to emscripten. maybe we can get this to run in browser too.
Live long and phosphor!
-- https://github.com/netpipe/Luna Game Engine Status 95%
GameDude
Posts: 498
Joined: Thu May 24, 2007 12:24 am

Re: AmigaOS4 port of Irrlicht 1.8.4

Post by GameDude »

That's pretty. I like how AmigaOS looks, though I've never really used it. Still its great to see Irrlicht is still being used.
netpipe
Posts: 670
Joined: Fri Jun 06, 2008 12:50 pm
Location: Edmonton, Alberta, Canada
Contact:

Re: AmigaOS4 port of Irrlicht 1.8.4

Post by netpipe »

https://www.amigaforever.com/ has pretty good selection of roms for 10 dollars.
Live long and phosphor!
-- https://github.com/netpipe/Luna Game Engine Status 95%
Post Reply