|
/*
|
|
* Copyright (C) 2017 Christopher J. Howard
|
|
*
|
|
* This file is part of Antkeeper Source Code.
|
|
*
|
|
* Antkeeper Source Code 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.
|
|
*
|
|
* Antkeeper Source Code 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 Antkeeper Source Code. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
#ifndef CONFIGURATION_HPP
|
|
#define CONFIGURATION_HPP
|
|
|
|
#include <emergent/emergent.hpp>
|
|
using namespace Emergent;
|
|
|
|
#define ANTKEEPER_VERSION_MAJOR @ANTKEEPER_VERSION_MAJOR@
|
|
#define ANTKEEPER_VERSION_MINOR @ANTKEEPER_VERSION_MINOR@
|
|
#define ANTKEEPER_VERSION_PATCH @ANTKEEPER_VERSION_PATCH@
|
|
#define ANTKEEPER_VERSION_STRING "@ANTKEEPER_VERSION@"
|
|
#cmakedefine ANTKEEPER_DEBUG
|
|
|
|
// Terrain dimensions
|
|
const float ANTKEEPER_TERRAIN_WIDTH = 100.0f;
|
|
const float ANTKEEPER_TERRAIN_BASE_HEIGHT = 35.7f;
|
|
const float ANTKEEPER_TERRAIN_DEPTH = ANTKEEPER_TERRAIN_WIDTH;
|
|
const float ANTKEEPER_OCTREE_PADDING = 5.0f;
|
|
|
|
// UI
|
|
const int ANTKEEPER_UI_LAYER_LOADING = 40;
|
|
const int ANTKEEPER_UI_LAYER_BLACKOUT = 30;
|
|
const int ANTKEEPER_UI_LAYER_MENU = 20;
|
|
const int ANTKEEPER_UI_LAYER_DARKEN = 10;
|
|
const int ANTKEEPER_UI_LAYER_HUD = 0;
|
|
|
|
const float WORLD_WIDTH = 100.0f; // cm
|
|
const float WORLD_HEIGHT = 100.0f; // cm
|
|
const float FRAMES_PER_SECOND = 60.0f;
|
|
const float TIMESTEP = 1.0f / FRAMES_PER_SECOND;
|
|
const float PHEROMONE_MATRIX_RESOLUTION = 5.12f;
|
|
const int PHEROMONE_MATRIX_COLUMNS = (int)(WORLD_WIDTH * PHEROMONE_MATRIX_RESOLUTION);
|
|
const int PHEROMONE_MATRIX_ROWS = (int)(WORLD_HEIGHT * PHEROMONE_MATRIX_RESOLUTION);
|
|
const Vector2 WORLD_BOUNDS_MIN = Vector2(-WORLD_WIDTH * 0.5f, -WORLD_HEIGHT * 0.5f);
|
|
const Vector2 WORLD_BOUNDS_MAX = Vector2(WORLD_WIDTH * 0.5f, WORLD_HEIGHT * 0.5f);
|
|
const float BRUSH_RADIUS = 0.5f;
|
|
const float EVAPORATION_FACTOR = 0.99925f;
|
|
const float DIFFUSIONS_PER_SECOND = 4.0f;
|
|
const int DIFFUSION_FRAME = static_cast<int>(FRAMES_PER_SECOND / DIFFUSIONS_PER_SECOND);
|
|
const float HOMING_PHEROMONE_COLOR[] = {0.55f, 0.55f, 0.00f, 0.0f}; // CMYK
|
|
const float RECRUITMENT_PHEROMONE_COLOR[] = {0.00f, 0.55f, 0.55f, 0.0f}; // CMYK
|
|
const float ALARM_PHEROMONE_COLOR[] = {0.00f, 0.00f, 1.00f, 0.0f}; // CMYK
|
|
|
|
#endif // CONFIGURATION_HPP
|