A Game library for ISE Eiffel.
This is a library for game development using the Eiffel Language. The library is compatible with the IDE EiffelStudio 16.05 and newer from ISE.
The library is compatible with Linux, macOS & Windows. It should also work with any other operating system (FreeBSD, Android, IOS, etc.), but it is not officially supported.
The Audio and Audio_Sound_File sub-libraries are under the LGPL license. Every other sub-libraries are under the zlib license. Every examples are under the GPL license.
The project uses those libraries: SDL2, SDL2_image, SDL2_gfx, SDL2_ttf, OpenAL, Libsndfile, libmpg123, GLEW.
Join our community on Matrix at #eiffel_game2:libreti.net
- I assume that you already have a functional EiffelStudio on your system. If not, install it.
- If you obtained the library sources by cloning the git repository, fetch submodules (run
git submodule init
andgit submodule update
in the library folder) - Rename the library folder (containing this README.md) to
game2
. - Add the
game2
folder library in thecontrib/library
folder of EiffelStudio. This folder is usually under/usr/lib/EiffelStudio_XX.XX
or/usr/local/Eiffel_XX.XX
. - Install the C libraries SDL2, SDL2_image, SDL2_gfx, SDL2_ttf, OpenAL, libsndfile, libmpg123, OpenGL, GLU, libepoxy along with their development toolkits and dependencies:
sudo apt-get install libsdl2-dev libsdl2-gfx-dev libsdl2-image-dev libsdl2-ttf-dev libopenal-dev libsndfile1-dev libmpg123-dev libepoxy-dev libgl1-mesa-dev libglu1-mesa-dev libglew-dev libavcodec-dev libavformat-dev libavutil-dev libswresample-dev libswscale-dev
- Execute the
compile_c_library.sh
script (from thegame2
directory). - Create a project and add the sub-libraries you need (
.ecf
files) in the project. (You can use theEIFFEL_LIBRARY
environment variable to add those libraries. For example:$EIFFEL_LIBRARY/contrib/library/game2/game_core/game_core.ecf
)
Note: If you have a dependency error while running the apt-get command like libsdl2-dev depending of libgles2-mesa-dev
, install the latest and try this:
sudo apt-get install libgles2-mesa-dev
sudo apt-get install libsdl2-dev libsdl2-gfx-dev libsdl2-image-dev libsdl2-ttf-dev libopenal-dev libsndfile1-dev libmpg123-dev libepoxy-dev libgl1-mesa-dev libglu1-mesa-dev libglew-dev libavcodec-dev libavformat-dev libavutil-dev libswresample-dev libswscale-dev
- Note: For an easy installation, see: https://github.com/tioui/Eiffel_Game2/tree/windows_build.
- You must have a working EiffelStudio. If you don't have it already, install it.
- Rename the library folder (containing this README.md) to
game2
. - Add the
game2
library folder in thecontrib/library
folder of EiffelStudio. This folder is usually underC:\Program Files\Eiffel Software\
. - Install the C library dependencies. To get them, download the files at https://github.com/tioui/Eiffel_Game2/raw/windows_build/C_libraries.zip. After extracting them, you should have a C_lib_win directory. Put the C_lib_win directory in the root directory of the Eiffel_Game2 repository.
- Using the "EiffelStudio command prompt" (within your Start menu), execute the
compile_c_library.bat
script in thegame2
directory. - Create a project and add the libraries you need (
.ecf
files) in the project. (You can use theEIFFEL_LIBRARY
environment variable to add those libraries. For example:$EIFFEL_LIBRARY/contrib/library/game2/game_core/game_core.ecf
) - Put all
.dll
files withinC_lib_win\DLLXX\
in the new project directory or inC:\Windows\System32\
.
To be created...