💿🐜 Antkeeper source code https://antkeeper.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

78 lines
2.8 KiB

  1. /*
  2. * Copyright (C) 2021 Christopher J. Howard
  3. *
  4. * This file is part of Antkeeper source code.
  5. *
  6. * Antkeeper source code is free software: you can redistribute it and/or modify
  7. * it under the terms of the GNU General Public License as published by
  8. * the Free Software Foundation, either version 3 of the License, or
  9. * (at your option) any later version.
  10. *
  11. * Antkeeper source code is distributed in the hope that it will be useful,
  12. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14. * GNU General Public License for more details.
  15. *
  16. * You should have received a copy of the GNU General Public License
  17. * along with Antkeeper source code. If not, see <http://www.gnu.org/licenses/>.
  18. */
  19. #ifndef ANTKEEPER_CONFIG_HPP
  20. #define ANTKEEPER_CONFIG_HPP
  21. #include "math/vector-type.hpp"
  22. /// Global configuration constants.
  23. namespace config {
  24. constexpr int version_major = @PROJECT_VERSION_MAJOR@;
  25. constexpr int version_minor = @PROJECT_VERSION_MINOR@;
  26. constexpr int version_patch = @PROJECT_VERSION_PATCH@;
  27. constexpr char* version_string = "@PROJECT_VERSION@";
  28. constexpr math::vector<float, 3> global_forward = {0.0f, 0.0f, -1.0f};
  29. constexpr math::vector<float, 3> global_up = {0.0f, 1.0f, 0.0f};
  30. constexpr math::vector<float, 3> global_right = {1.0f, 0.0f, 0.0f};
  31. /// Duration of the menu fade in animation, in seconds.
  32. constexpr float menu_fade_in_duration = 0.25f;
  33. /// Duration of the menu fade out animation, in seconds.
  34. constexpr float menu_fade_out_duration = 0.125f;
  35. /// Padding of the a menu item mouseover bounds, as a percentage of the font size.
  36. constexpr float menu_mouseover_padding = 0.1f;
  37. /// Opacity of the menu background.
  38. constexpr float menu_bg_opacity = 2.0f / 3.0f;
  39. /// RGBA color of active menu items.
  40. constexpr float4 menu_active_color{1.0f, 1.0f, 1.0f, 1.0f};
  41. /// RGBA color of inactive menu items.
  42. constexpr float4 menu_inactive_color{1.0f, 1.0f, 1.0f, 0.5f};
  43. /// Duration of the title screen fade in, in seconds.
  44. constexpr float title_fade_in_duration = 1.0f;
  45. /// Duration of the fade out when quitting the game or returning to the main menu, in seconds.
  46. constexpr float quit_fade_out_duration = 0.5f;
  47. /// Duration of the fade out when a new colony is started, in seconds.
  48. constexpr float new_colony_fade_out_duration = 1.0f;
  49. /// Duration of the nuptial flight fade in, in seconds.
  50. constexpr float nuptial_flight_fade_in_duration = 5.0f;
  51. #define MATERIAL_PASS_MAX_AMBIENT_LIGHT_COUNT 1
  52. #define MATERIAL_PASS_MAX_POINT_LIGHT_COUNT 1
  53. #define MATERIAL_PASS_MAX_DIRECTIONAL_LIGHT_COUNT 2
  54. #define MATERIAL_PASS_MAX_SPOTLIGHT_COUNT 1
  55. #define MATERIAL_PASS_MAX_BONE_COUNT 64
  56. #define TERRAIN_PATCH_SIZE 200.0f
  57. #define TERRAIN_PATCH_RESOLUTION 4
  58. #define VEGETATION_PATCH_RESOLUTION 1
  59. } // namespace config
  60. #endif // ANTKEEPER_CONFIG_HPP