raylib.rcamera

rcamera - Basic camera system with support for multiple camera modes

CONFIGURATION:

#define CAMERA_IMPLEMENTATION Generates the implementation of the library into the included file. If not defined, the library is in header only mode and can be included in other headers or source files without problems. But only ONE file should hold the implementation.

#define CAMERA_STANDALONE If defined, the library can be used as standalone as a camera system but some functions must be redefined to manage inputs accordingly.

CONTRIBUTORS: Ramon Santamaria: Supervision, review, update and maintenance Christoph Wagner: Complete redesign, using raymath (2022) Marc Palau: Initial implementation (2014)

Members

Functions

CameraMoveForward
void CameraMoveForward(Camera* camera, float distance, bool moveInWorldPlane)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
CameraMoveRight
void CameraMoveRight(Camera* camera, float distance, bool moveInWorldPlane)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
CameraMoveToTarget
void CameraMoveToTarget(Camera* camera, float delta)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
CameraMoveUp
void CameraMoveUp(Camera* camera, float distance)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
CameraPitch
void CameraPitch(Camera* camera, float angle, bool lockView, bool rotateAroundTarget, bool rotateUp)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
CameraRoll
void CameraRoll(Camera* camera, float angle)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
CameraYaw
void CameraYaw(Camera* camera, float angle, bool rotateAroundTarget)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
GetCameraForward
Vector3 GetCameraForward(Camera* camera)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
GetCameraProjectionMatrix
Matrix GetCameraProjectionMatrix(Camera* camera, float aspect)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
GetCameraRight
Vector3 GetCameraRight(Camera* camera)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
GetCameraUp
Vector3 GetCameraUp(Camera* camera)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
GetCameraViewMatrix
Matrix GetCameraViewMatrix(Camera* camera)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.

Manifest constants

CAMERA_CULL_DISTANCE_FAR
enum CAMERA_CULL_DISTANCE_FAR;
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
CAMERA_CULL_DISTANCE_NEAR
enum CAMERA_CULL_DISTANCE_NEAR;
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.

Meta

License

zlib/libpng

Copyright (c) 2022-2023 Christoph Wagner (@Crydsch) & Ramon Santamaria (@raysan5)

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.