GL4ES round 4.5: Star Wars

Date 25-Aug-2022 23:27:04
Topic: software OS4


... First words ...

Hello, everyone ! There are small indermiddle releases while another big round of GL4ES ports is in progress.

But before we go further, I need to make a few notes about :






 NOTE1: Radeon RX users-BE SURE that you set Prefs: PowerManagment to HIGH! Automatic PowerManagment in Radeon RX drivers does not raise resources to maximum when needed,
and as a result, you will have low FPS in most games if your powermanagment is set on optimal, or low, or so values. So you should set it to HIGH, save, reboot,
and check that it is set to HIGH before trying to run games. Failure to do so will result in a significant drop in FPS!!!



NOTE2: Minimum requerements for everything as always latest 2D/3D drivers and libraries:

-- Warp3DNova.library >= 54.16
-- ogles2.library >= v3.3
-- RadeonHD >= 3.7 or RadeonRX >= 2.11 (with Prefs:PowerManagment set to HIGH)

Everything is part of Enhancer Software 2.2. If you are on anything less, you will have all sorts of issues, bugs, crashes, and rendering glitches of all sorts. You are warned!


NOTE3: If you have an x5000, make sure you have not one, but two RAM modules!Or your memory read/write will be twice as slow, and you will lose FPS! See the dedicated thread here:
x5000 benchmarks / speed up


... Intro ...



In 2002 and 2003, Raven Software made 2 more games in the Star Wars saga series : Star Wars Jedi Knight II: Jedi Outcast and Star Wars Jedi Knight: Jedi Academy.



Following Disney's decision to close LucasArts on April 3, 2013, the developers at Raven Software released the source code of those games based on which the OpenJK project was born.

In 2014, there were two ports for AmigaOS4 done by BSzili: https://github.com/BSzili/OpenJK/

They were MiniGL-based, which suffers from low framerates, bugs, and visual issues, as we all know.

Taking BSZili's code as base, I just removed the MiniGL init and deinit parts from it and replaced them with OpenGLES2 with a little adaptation, and so I created those 2 ports.

You can download them both from os4depot:

http://os4depot.net/share/game/fps/openjk_outcast.lha
http://os4depot.net/share/game/fps/openjk_academy.lha

1). Star Wars Jedi Knight II: Jedi Outcast




Jedi Outcast was released in 2002 and it is a classic FPS and was based on the same "id Tech 3" engine as Quake3. The original MiniGL port wasn't on the same level by speed as the MiniGL port of Quake3,
but that was expected due to modification, heavier textures, details, and the ability to play with settings a little bit more than with the original Quake3 Arena. The speed increase when we switch from
MiniGL to GL4ES is very noticable (in some places, the MiniGL version on heavy details drops to just 15 FPS, while with GL4ES we do have 120 FPS in some places).



Of course, it is still not 200-300-1000 FPS, but gameplay can be adequate now.

See how it's all in action at the beginning of the video:

Youtube video of Jedi Outcast gameplay in action on AmigaOS4, 1920x1080 full HD


2). Star Wars Jedi Knight: Jedi Academy



The Jedi Academy was released in 2003 as a sequel to 2002's Jedi Outcast and is the fourth and final installment in the Star Wars: Jedi Knight series.
Jedi Academy uses the same game engine as Jedi Outcast, id Tech 3, but features several technical improvements. Thus, it is more hungry for the resources as well.
With MiniGL in 1920x1080x32, all details maxed out with very high details, and everything enabled, we only get 12-13 FPS.While with the GL4ES port,
we do have a stable 30 FPS across the same places, which can be increased up to 60-70 FPS in less heavily loaded places of the maps.




Furthermore, with the latest versions of MiniGL (which is now 2.23), some changes were introduced that caused Jedi Academy to crash at the first levels, making it impossible to skip,
so with GL4ES we not only gain a bit of speed in the game, but we also make it crash free.

See how it all works (second part of video):

Youtube video of Jedi Academy gameplay in action on AmigaOS4, 1920x1080 full HD


To summorize, that the differences between old MiniGL builds and new GL4ES ones:

    -- GCC 11.2 with -O3 optimization was used.
    -- faster FPS (doubled the frame rate in comparison to MiniGL)
    -- faster loading of texture (up to 50-70% speed up)
    -- no crashes as with minigl rendering (there were few, especially visibly with the latest minigl builds)
    -- RadeonRX users can play in it too (while there is no NovaBridge released)



So, enjoy!

... Outro ...


And as usual, want to give a thank you:

to BSZili for the initial MiniGL ports: https://github.com/BSzili/OpenJK
to ptitSeb for gl4es and all his help with everything: https://github.com/ptitSeb/gl4es/
to Daniel for OpenGL ES2 and all his help with everything: http://www.goldencode.de/
to Hans for Warp3DNova and all his help with everything: https://keasigmadelta.com/
to Capehill for never-ending work on SDL1/2, glSnoop, and all his help with everything: https://github.com/AmigaPorts/SDL https://github.com/capehill/glsnoop
to AEON/AmigaKit because of which we have OpenGL ES2 and Warp3DNova: https://www.facebook.com/AEonTechnologyLtd/
to others for all the help and tests

And remember: May the AmigaNG be with you!









This article comes from AmigaWorld - Amiga Community Portal
https://amigaworld.net

The URL for this story is:
https://amigaworld.net/article.php?storyid=8786