1 | /********************************************************************************************** |
2 | * |
3 | * raylib configuration flags |
4 | * |
5 | * This file defines all the configuration flags for the different raylib modules |
6 | * |
7 | * LICENSE: zlib/libpng |
8 | * |
9 | * Copyright (c) 2018-2020 Ahmad Fatoum & Ramon Santamaria (@raysan5) |
10 | * |
11 | * This software is provided "as-is", without any express or implied warranty. In no event |
12 | * will the authors be held liable for any damages arising from the use of this software. |
13 | * |
14 | * Permission is granted to anyone to use this software for any purpose, including commercial |
15 | * applications, and to alter it and redistribute it freely, subject to the following restrictions: |
16 | * |
17 | * 1. The origin of this software must not be misrepresented; you must not claim that you |
18 | * wrote the original software. If you use this software in a product, an acknowledgment |
19 | * in the product documentation would be appreciated but is not required. |
20 | * |
21 | * 2. Altered source versions must be plainly marked as such, and must not be misrepresented |
22 | * as being the original software. |
23 | * |
24 | * 3. This notice may not be removed or altered from any source distribution. |
25 | * |
26 | **********************************************************************************************/ |
27 | |
28 | #define RAYLIB_VERSION "3.0" |
29 | |
30 | // Edit to control what features Makefile'd raylib is compiled with |
31 | #if defined(RAYLIB_CMAKE) |
32 | // Edit CMakeOptions.txt for CMake instead |
33 | #include "cmake/config.h" |
34 | #else |
35 | |
36 | //------------------------------------------------------------------------------------ |
37 | // Module: core - Configuration Flags |
38 | //------------------------------------------------------------------------------------ |
39 | // Camera module is included (camera.h) and multiple predefined cameras are available: free, 1st/3rd person, orbital |
40 | #define SUPPORT_CAMERA_SYSTEM 1 |
41 | // Gestures module is included (gestures.h) to support gestures detection: tap, hold, swipe, drag |
42 | #define SUPPORT_GESTURES_SYSTEM 1 |
43 | // Mouse gestures are directly mapped like touches and processed by gestures system |
44 | #define SUPPORT_MOUSE_GESTURES 1 |
45 | // Reconfigure standard input to receive key inputs, works with SSH connection. |
46 | #define SUPPORT_SSH_KEYBOARD_RPI 1 |
47 | // Draw a mouse reference on screen (square cursor box) |
48 | #define SUPPORT_MOUSE_CURSOR_RPI 1 |
49 | // Use busy wait loop for timing sync, if not defined, a high-resolution timer is setup and used |
50 | //#define SUPPORT_BUSY_WAIT_LOOP 1 |
51 | // Use a half-busy wait loop, in this case frame sleeps for some time and runs a busy-wait-loop at the end |
52 | #define SUPPORT_HALFBUSY_WAIT_LOOP |
53 | // Wait for events passively (sleeping while no events) instead of polling them actively every frame |
54 | //#define SUPPORT_EVENTS_WAITING 1 |
55 | // Allow automatic screen capture of current screen pressing F12, defined in KeyCallback() |
56 | #define SUPPORT_SCREEN_CAPTURE 1 |
57 | // Allow automatic gif recording of current screen pressing CTRL+F12, defined in KeyCallback() |
58 | //#define SUPPORT_GIF_RECORDING 1 |
59 | // Allow scale all the drawn content to match the high-DPI equivalent size (only PLATFORM_DESKTOP) |
60 | //#define SUPPORT_HIGH_DPI 1 |
61 | // Support CompressData() and DecompressData() functions |
62 | #define SUPPORT_COMPRESSION_API 1 |
63 | // Support saving binary data automatically to a generated storage.data file. This file is managed internally. |
64 | #define SUPPORT_DATA_STORAGE 1 |
65 | |
66 | //------------------------------------------------------------------------------------ |
67 | // Module: rlgl - Configuration Flags |
68 | //------------------------------------------------------------------------------------ |
69 | // Support VR simulation functionality (stereo rendering) |
70 | #define SUPPORT_VR_SIMULATOR 1 |
71 | |
72 | //------------------------------------------------------------------------------------ |
73 | // Module: shapes - Configuration Flags |
74 | //------------------------------------------------------------------------------------ |
75 | // Draw rectangle shapes using font texture white character instead of default white texture |
76 | // Allows drawing rectangles and text with a single draw call, very useful for GUI systems! |
77 | #define SUPPORT_FONT_TEXTURE 1 |
78 | // Use QUADS instead of TRIANGLES for drawing when possible |
79 | // Some lines-based shapes could still use lines |
80 | #define SUPPORT_QUADS_DRAW_MODE 1 |
81 | |
82 | //------------------------------------------------------------------------------------ |
83 | // Module: textures - Configuration Flags |
84 | //------------------------------------------------------------------------------------ |
85 | // Selecte desired fileformats to be supported for image data loading |
86 | #define SUPPORT_FILEFORMAT_PNG 1 |
87 | #define SUPPORT_FILEFORMAT_BMP 1 |
88 | #define SUPPORT_FILEFORMAT_TGA 1 |
89 | //#define SUPPORT_FILEFORMAT_JPG 1 |
90 | #define SUPPORT_FILEFORMAT_GIF 1 |
91 | //#define SUPPORT_FILEFORMAT_PSD 1 |
92 | #define SUPPORT_FILEFORMAT_DDS 1 |
93 | #define SUPPORT_FILEFORMAT_HDR 1 |
94 | #define SUPPORT_FILEFORMAT_KTX 1 |
95 | #define SUPPORT_FILEFORMAT_ASTC 1 |
96 | //#define SUPPORT_FILEFORMAT_PKM 1 |
97 | //#define SUPPORT_FILEFORMAT_PVR 1 |
98 | |
99 | // Support image export functionality (.png, .bmp, .tga, .jpg) |
100 | #define SUPPORT_IMAGE_EXPORT 1 |
101 | // Support multiple image editing functions to scale, adjust colors, flip, draw on images, crop... |
102 | // If not defined only three image editing functions supported: ImageFormat(), ImageAlphaMask(), ImageToPOT() |
103 | #define SUPPORT_IMAGE_MANIPULATION 1 |
104 | // Support procedural image generation functionality (gradient, spot, perlin-noise, cellular) |
105 | #define SUPPORT_IMAGE_GENERATION 1 |
106 | |
107 | //------------------------------------------------------------------------------------ |
108 | // Module: text - Configuration Flags |
109 | //------------------------------------------------------------------------------------ |
110 | // Default font is loaded on window initialization to be available for the user to render simple text |
111 | // NOTE: If enabled, uses external module functions to load default raylib font |
112 | #define SUPPORT_DEFAULT_FONT 1 |
113 | // Selected desired font fileformats to be supported for loading |
114 | #define SUPPORT_FILEFORMAT_FNT 1 |
115 | #define SUPPORT_FILEFORMAT_TTF 1 |
116 | |
117 | //------------------------------------------------------------------------------------ |
118 | // Module: models - Configuration Flags |
119 | //------------------------------------------------------------------------------------ |
120 | // Selected desired model fileformats to be supported for loading |
121 | #define SUPPORT_FILEFORMAT_OBJ 1 |
122 | #define SUPPORT_FILEFORMAT_MTL 1 |
123 | #define SUPPORT_FILEFORMAT_IQM 1 |
124 | #define SUPPORT_FILEFORMAT_GLTF 1 |
125 | // Support procedural mesh generation functions, uses external par_shapes.h library |
126 | // NOTE: Some generated meshes DO NOT include generated texture coordinates |
127 | #define SUPPORT_MESH_GENERATION 1 |
128 | |
129 | //------------------------------------------------------------------------------------ |
130 | // Module: audio - Configuration Flags |
131 | //------------------------------------------------------------------------------------ |
132 | // Desired audio fileformats to be supported for loading |
133 | #define SUPPORT_FILEFORMAT_WAV 1 |
134 | #define SUPPORT_FILEFORMAT_OGG 1 |
135 | #define SUPPORT_FILEFORMAT_XM 1 |
136 | #define SUPPORT_FILEFORMAT_MOD 1 |
137 | //#define SUPPORT_FILEFORMAT_FLAC 1 |
138 | #define SUPPORT_FILEFORMAT_MP3 1 |
139 | |
140 | //------------------------------------------------------------------------------------ |
141 | // Module: utils - Configuration Flags |
142 | //------------------------------------------------------------------------------------ |
143 | // Show TRACELOG() output messages |
144 | // NOTE: By default LOG_DEBUG traces not shown |
145 | #define SUPPORT_TRACELOG 1 |
146 | //#define SUPPORT_TRACELOG_DEBUG 1 |
147 | |
148 | #endif //defined(RAYLIB_CMAKE) |
149 | |