BennuGD 2 ideas suggestions

Started by handsource-dyko, October 01, 2014, 10:51:08 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.


I've read the announchment about BennuGD 2 and have checked out the topic about it. I quite like the idea to have 4-6 modules, since you'll most likely going to use most functions.
I suggest to keep the old and new 2 version seperate as they have done with python2 and 3, so that you have the current version with the old SDL 1.2, and that you have the new SDL 2.0 version as seperate branches. I think it would be a good idea to allow both versions to co-exist (not a problem on windows, but difficult on unix with it's bin directory). So that you have bgdc.exe and bgdi.exe (the current version) and bgdc2.exe and bgdi2.exe (the new version) so that they don't interfere with each other.

I'd quite like to have a form of textinput support, as I think that would be generally usefull. Another thing that I'd like is some functions for creating dynamic data structures such as linked lists / dynamic array's and dictonaries to manage collections of generic data as well as string lists (python and free pascal have some great examples of this). This could be usefull for item managment systems in games, or even tools created with bennu.

About OOP, I'm not sure, maybe usefull in some cases, but I think the existing process system is good enough for that. What I sometimes miss, is a way to communicate with other programs. Say, you have two programs running side by side, and that they can exchange data or commands with each other. A bit like a pipe, but in a bi-directional way. This way I could make a gui menu in Lazarus/visiual basic/python/etc, and the bunnu program could then receive commands from that. I had thought of enviornment variables, but since I've heard about the bash shellshock bug I think that may be dangerous. In python you can create / change envoirnment variables, but in bennu you can only read the contents with get_env().

Maybe mod_touch and mod_curl could become builtin?

I also think we need to split the documentation wiki into two sections, one for the existing bennu and one for the new bennu2.

Since the new bennu will be hardware accellerated what will happen to functions that deal with 8 bit graphics? I quite like that we now have the ability to create and save map/fpg/fnt files, I think these functions are
important to keep (just the functionality, but I don't mind if the syntax changes).

Anyway I think it's exiting that BennuGD 2 allows us to do new things and make some improvements to the language.


It will be separate branch...

is a good idea new names for bennugd2 binaries... thanks.

I'm thinking in a textinput support.

for IPC mechanism we have time

setenv is a possible feature

8 bits graphs are removed... but, you can use 8 bits graphs (maps/fpg/png/etc) but it will be converted to 32 bit.

save for map/fpg/png are removed. (at this moment... maybe in the future can be possible)

thanks for your comments.
Download Lastest BennuGD Release:


Allright, so it remains possible to read/load 8 bit formats? What about hardnessmaps? They only work well with map_get_pixel, with rgb modes they always had issues. I don't really mind the conversion to 32 bits, we have fpgedit or the old version to work around this. Does anything change in the file formats? Or do the current 32 bit fpgs stay the way they are?


you can use all depth maps... when it is loaded it will be converted internally to 32bits...

at this moment no map_get_pixel functions are availables...
Download Lastest BennuGD Release:


I've seen that SDL2 has multiple window and mesagebox support and that touch support is now builitin. It looks like SDL2 has a completly reworked input system and that joysticks can now be detected as they are plugged / unplugged during runtime. Strange that they dropped audio cd support. Not that I would miss it in bennu, but it's strange that sdl doesn't have it anymore. I still listen to cds. Cd support is a must for dosbox, in order to play games with cd audio.

Another question, have you considered using cmake or visual studio for compiling the windows version instead of gcc/gnu-make for windows? I've never managed to setup mingw on windows. I got stuck once trying to compile it under windows and gave up. Gcc is such a PITA with it's autohell tools. A visual studio project file seems easier to setup and compile. Didn't fenix once have visual studio project files for compiling under windows?


Quote from: SplinterGU on October 01, 2014, 12:58:12 PM
you can use all depth maps... when it is loaded it will be converted internally to 32bits...

at this moment no map_get_pixel functions are availables...
Is it planned to be added at some point? Or will be a missing feature  in the next version?
Working on Anarkade. A couch multiplayer 2D shooter.


it is a point that I'll need explain in the future... at this moment my plan is add it but only for original map... you can't get pixels from modified textures... not at this moment...
Download Lastest BennuGD Release:


Hey Splinter,
Do you plan on using the new GameController API for BennuGD or are you still using the old joystick API ?
Using the new API for controllers should solve the numerious issues we have with Android for joysticks.