Logo by DaveyD (anonymous IP: 18.189.143.1,2258) | ||||||||||||||
| ||||||||||||||
Audio (343) Datatype (51) Demo (203) Development (602) Document (24) Driver (97) Emulation (149) Game (1011) Graphics (500) Library (118) Network (234) Office (66) Utility (932) Video (69) Total files: 4399 Full index file Recent index file
Amigans.net OpenAmiga Aminet IntuitionBase
Support the site
|
This is the port of Foobillard++ to AmigaOS4 over gl4es (which works over ogles2 & warp3dnova). To have good perfomance and no visuall glitches, you should have as minimum: ogles2.library : >= 2.11 Warp3DNova.library : >= 1.68 RadeonHD : >= 3.7 This port based on the latest, v3.42beta, stable source release. Actual code with all the AmigaOS4 and other changes listed below can be found at https://github.com/kas1e/FoobillardPlusPlus Original source code and main page can be found at http://foobillardplus.sourceforge.net ... How to run and how to play ... Just unpack and double-click on an icon. By default, it runs in 1024x768 window mode, and most of the settings set to HIGH. All the settings can be controlled or via options in the menu (preferable way of course), or via manual change of config file placed in root dir of a game which called .foobillardrc Once game runs, press "f1" to see basic control kyes. For switch between window/fullscreen use "alt+enter". You can also put to the data/music directory your favorite .mp3 or .ogg tracks and they will be automatically taken by the game, so you can switch them via music-player which spawn once you press that button at the top/right side. For a better understanding of how to play and control the game, choose "Manual" in the game's menu (then Odyssey will be called with big Html tutorial in). ... Performance note ... If you read an original README file coming with archive, you will notice that requirements are 1.6GHZ CPU with all graphics settings set to LOW. So, as you can imagine SAMs are too slow for this and only x1000/x5000 can be fit in. But we all tried our best so to have it be faster than expected: with the latest release of ogles2.library (where Daniel tried his best with optimization), and also the fact that this version builds with all kind of optimization (together with enabled LTO in GCC 8.2.0 build), and also that this port rewritten from SDL1 to SDL2: all that give us in end pretty playable game. Since v1.01 game were rebuilt with real VBO support, which gives a huge speed boost. On my x5000 with RadeonHD r7-250 and with all necessary libraries such as ogles2.library v2.11, warp3dnova.library v1.68 and radeonhd3.7 in 1920x1080x32, everything at max, "view options/ball details:VERY HIGH", "graphics/reflection/resolution: very high" i had 65-75FPS. FPS counter has come from the gl4es counter, which you can activate via "setenv LIBGL_FPS 1" in the shell, and taken average value when fully played 1 default game. You can also watch HD-recorded youtube video of v1.01 version there: https://youtu.be/thpvMDWIfvE And there is an older video of v1.00 (without VBO support, so not _that_ fluid as v1.01): https://youtu.be/hQVabA_ReoQ ... ChangeLog ... v1.01 (2019/12/23) -- rebuild with enabled VBO support in GL4ES which double the FPS in the whole game! Now you can choose all the high-details and have stable 60fps in 1920x1080 fullscreen modes. -- rebuild with fully removed debug output from SDL2 -- workaround: changed the max_ball_details_VERYHIGH value for better visuals -- readme you reading now changed to be up2date, fixed grammars v1.00 (first amigaos4 release): -- added SDL2 support via --enable-sdl2. This port builds over SDL2. -- gl4es is used for OpenGL (so ogles2/warp3dnova) -- amigaos4 paths, stack cookie -- built with GCC 8.2.0 and enabled LTO. -- added big-endian changes in the place where loading of ball_ball.raw happens and is expected to be in LE format -- when you choose in a menu "manual", "game_history" or "touranment_history" Odyssey is used, but you can change it to any browser you need (or by changing config file, or by changing ViewOptions/Browser in the menu). -- running of external commands (such as a browser) done via aos4's IDOS->SystemTags() in Async mode (thanks to Salas00 for code which works when run game and from the shell and from wb icon) -- original game's code bug: in billard3d.c/load_config() forgotten fclose(), because of which save_config() on exit didn't works -- original game's code bug: in sound_stuff.c/strsound() there was some typo from author strcpy(s,&s[strlen(s)-4]) , while should be strcpy(s,&s1[strlen(s1)-4]), which cause heavy memory issues in end (c) Daytona -- original game's code bug: parent_entry in the menu_new() wasn't initialized, which cause crashes later in some situation in the menu_choose(); visually it just crashes when you choice some of menus (c) Georg -- original game's code bug: when blitting menu entries, sometime blitting happens outside of left bounds and thus trashing memory and cause heap corruption, which in end lead to crash on free(textdata) later (c) Georg -- original game's code bug: initially checking on minimum screen mode was wrong and thus skip some modes which can fits. ... Thanks to ... 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 ptitSeb for gl4es and all his help with everything: https://github.com/ptitSeb/gl4es/ to Capehill (and others) for actual SDL2 port and all his help with everything: https://github.com/AmigaPorts/SDL to Georg, who help to bug fix some original bugs and to all others who help directly or indirectly (c) kas1e, 2019 |
Copyright © 2004-2024 by Björn Hagström All Rights Reserved |