| @ -0,0 +1,69 @@ | |||||
| /******************************************************************************************* | |||||
| * | |||||
| * raylib Camera System - Camera Modes Setup and Control Functions | |||||
| * | |||||
| * Copyright (c) 2015 Marc Palau and Ramon Santamaria | |||||
| * | |||||
| * This software is provided "as-is", without any express or implied warranty. In no event | |||||
| * will the authors be held liable for any damages arising from the use of this software. | |||||
| * | |||||
| * Permission is granted to anyone to use this software for any purpose, including commercial | |||||
| * applications, and to alter it and redistribute it freely, subject to the following restrictions: | |||||
| * | |||||
| * 1. The origin of this software must not be misrepresented; you must not claim that you | |||||
| * wrote the original software. If you use this software in a product, an acknowledgment | |||||
| * in the product documentation would be appreciated but is not required. | |||||
| * | |||||
| * 2. Altered source versions must be plainly marked as such, and must not be misrepresented | |||||
| * as being the original software. | |||||
| * | |||||
| * 3. This notice may not be removed or altered from any source distribution. | |||||
| * | |||||
| **********************************************************************************************/ | |||||
| #ifndef CAMERA_H | |||||
| #define CAMERA_H | |||||
| #include "raylib.h" | |||||
| //---------------------------------------------------------------------------------- | |||||
| // Defines and Macros | |||||
| //---------------------------------------------------------------------------------- | |||||
| //... | |||||
| //---------------------------------------------------------------------------------- | |||||
| // Types and Structures Definition | |||||
| //---------------------------------------------------------------------------------- | |||||
| // Camera modes | |||||
| typedef enum { CAMERA_CUSTOM = 0, CAMERA_FREE, CAMERA_ORBITAL, CAMERA_FIRST_PERSON, CAMERA_THIRD_PERSON } CameraMode; | |||||
| #ifdef __cplusplus | |||||
| extern "C" { // Prevents name mangling of functions | |||||
| #endif | |||||
| //---------------------------------------------------------------------------------- | |||||
| // Global Variables Definition | |||||
| //---------------------------------------------------------------------------------- | |||||
| //... | |||||
| //---------------------------------------------------------------------------------- | |||||
| // Module Functions Declaration | |||||
| //---------------------------------------------------------------------------------- | |||||
| void SetCameraMode(int mode); // Select camera mode (multiple camera modes available) | |||||
| Camera UpdateCamera(Vector3 *position); // Update camera with position | |||||
| void SetCameraControls(int front, int left, int back, int right, int up, int down); | |||||
| void SetCameraMouseSensitivity(float sensitivity); | |||||
| void SetCameraResetPosition(Vector3 resetPosition); | |||||
| void SetCameraResetControl(int resetKey); | |||||
| void SetCameraPawnControl(int pawnControlKey); | |||||
| void SetCameraFnControl(int fnControlKey); | |||||
| void SetCameraSmoothZoomControl(int smoothZoomControlKey); | |||||
| void SetCameraOrbitalTarget(Vector3 target); | |||||
| #ifdef __cplusplus | |||||
| } | |||||
| #endif | |||||
| #endif // CAMERA_H | |||||