123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- /* License Notice:
- **
- ** This program is free software: you can redistribute it and/or modify
- ** it under the terms of the GNU General Public License as published by
- ** the Free Software Foundation, either version 3 of the License, or
- ** (at your option) any later version.
- ** This program is distributed in the hope that it will be useful,
- ** but WITHOUT ANY WARRANTY; without even the implied warranty of
- ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ** GNU General Public License for more details.
- ** You should have received a copy of the GNU General Public License
- ** along with this program. If not, see <https://www.gnu.org/licenses/>.
- */
- /**
- * @file config.h
- * @author TooOld2Rock'nRoll
- * @date 2023/09/22
- * @brief Global information about the engine environment initial state.
- * @warning Changing any of the following values requires the library to be recompiled to take effect!
- * @todo Most of these values should go to a config.xml file, so it can change without recompiling the library.
- */
- #ifndef _INPUT_H_
- #define _INPUT_H_
- #ifdef __cplusplus
- extern "C" {
- #endif
- /*---- Definitions ----*/
- //THIS IS VERY BAD!!! SHOULD NOT EXIST!!!!
- #define GROUND_LEVEL_TEMP 1000
- #define GRAVITY_TEMP 1300 //pixels/sec
- //END OF VERY BAD!!!!
- /**@{ Library */
- ///Unable/Disable debug messages, options are [<b>true</b> | <b>false</b>]
- #define ENABLE_DEBUG true
- ///Which debug message level to show, options are [VERBOSE < TRACE < INFO < WARNING < ERROR]
- #define DEBUG_LEVEL INFO
- ///Unable/Disable OpenGl error messages, options are [<b>true</b> | <b>false</b>]
- #define ENABLE_OPENGL_DEBUG true
- ///Which debug message level to show, options are [GL_DEBUG_SEVERITY_NOTIFICATION < GL_DEBUG_SEVERITY_LOW < GL_DEBUG_SEVERITY_MEDIUM < GL_DEBUG_SEVERITY_HIGH]
- #define DEBUG_OPENGL_LEVEL GL_DEBUG_SEVERITY_LOW
- ///The key to load and access references to the library basic Shader
- #define BASIC_SHADER_KEY "arcade_fighter_basic_shader"
- ///The key to load and access references to the library default Camera view
- #define DEFAULT_CAMERA_KEY "arcade_fighter_default_camera"
- ///Default game loop style to use, options are [FIXED | VARIABLE | SEMI_FIXED | CHUNKY]
- #define GAME_LOOP_STYLE ArcadeFighter::delta_time_style_e::FIXED
- ///Bound the game rendering <b>F</b>rames <b>Per</b> <b>S</b>econd to a set value. (ignored for VARIABLE game loop style)
- #define GAME_MAX_FPS 30
- ///Bound the game loop logic handling to a set FPS. (only valid for CHUNKY game loop style)
- #define GAME_LOGIC_FPS 120
- ///The minimum number of listeners the library expects to exist.
- ///Recommended at least 4 spaces for listeners [API & Level & Player_1 & Player_2]
- #define MIN_EVENT_LISTENERS 4
- /**@}*/
- /**@{ Window */
- ///The decoration text of the window.
- #define WINDOW_TITLE "Arcade Fighter Library for Linux :D"
- ///Width of the program window when started, if no other flags used.
- #define START_WINDOW_WIDTH 460
- ///Height of the program window when started, if no other flags used.
- #define START_WINDOW_HEIGHT 380
- /**@}*/
- /**@{ Graphics */
- ///The target major version for OpenGl Core
- #define OPENGL_TARGET_MAJOR_VERSION 4
- ///The target minor version for OpenGl Core
- #define OPENGL_TARGET_MINOR_VERSION 3
- /**@}*/
- /**@{ Audio */
- ///A or list of audio file formats SDL_Mixer is expected to handle besides wave.
- ///@see https://wiki.libsdl.org/SDL2_mixer/MIX_InitFlags
- #define AUDIO_SUPPORTED_FORMATS MIX_INIT_MP3 | MIX_INIT_FLAC
- /**@}*/
- /**@{ Players */
- ///The maximum number of players (human or otherwise) the game will be able to handle concurrently.
- #define PLAYERS_COUNT 2
- /**@}*/
- /*---- Typedefs ----*/
- /*---- Enumerations ----*/
- /*---- Structures ----*/
- /*---- Global Variables ----*/
- /*---- Macros ----*/
- #ifdef __cplusplus
- } //extern "C"
- #endif
- #endif /* _INPUT_H_ */
|