| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- #include "Base.h"
- #include "Camera.h"
- namespace gameplay
- {
- Camera::Camera(void) :
- _cameraType(CameraPerspective),
- _fieldOfView(0.0f),
- _aspectRatio(0.0f),
- _nearPlane(0.0f),
- _farPlane(0.0f),
- _viewportWidth(0.0f),
- _viewportHeight(0.0f)
- {
- }
- Camera::~Camera(void)
- {
- }
- void Camera::setFieldOfView(float value)
- {
- _fieldOfView = value;
- }
- void Camera::setAspectRatio(float value)
- {
- _aspectRatio = value;
- }
- void Camera::setNearPlane(float value)
- {
- _nearPlane = value;
- }
- void Camera::setFarPlane(float value)
- {
- _farPlane = value;
- }
- unsigned int Camera::getTypeId(void) const
- {
- return CAMERA_ID;
- }
- const char* Camera::getElementName(void) const
- {
- return "Camera";
- }
- void Camera::writeBinary(FILE* file)
- {
- Object::writeBinary(file);
- write(_cameraType, file);
- write(_aspectRatio, file);
- write(_nearPlane, file);
- write(_farPlane, file);
- if (_cameraType == CameraPerspective)
- {
- write(_fieldOfView, file);
- }
- else if (_cameraType == CameraOrthographic)
- {
- write(getViewPortWidth(), file);
- write(getViewPortHeight(), file);
- }
- else
- {
- assert(false);
- }
- }
- void Camera::writeText(FILE* file)
- {
- fprintElementStart(file);
- fprintfElement(file, "cameraType", _cameraType == CameraPerspective ? "CameraPerspective" : "CameraOrthographic");
- fprintfElement(file, "aspectRatio", _aspectRatio);
- fprintfElement(file, "nearPlane", _nearPlane);
- fprintfElement(file, "farPlane", _farPlane);
- if (_cameraType == CameraPerspective)
- {
- fprintfElement(file, "fieldOfView", _fieldOfView);
- }
- else if (_cameraType == CameraOrthographic)
- {
- fprintfElement(file, "viewportWidth", _viewportWidth);
- fprintfElement(file, "viewportHeight", _viewportHeight);
- }
- else
- {
- assert(false);
- }
- fprintElementEnd(file);
- }
- void Camera::setPerspective()
- {
- _cameraType = CameraPerspective;
- }
- void Camera::setOrthographic()
- {
- _cameraType = CameraOrthographic;
- }
- void Camera::setViewportWidth(float width)
- {
- _viewportWidth = width;
- }
- void Camera::setViewportHeight(float height)
- {
- _viewportHeight = height;
- }
- float Camera::getViewPortWidth()
- {
- return _viewportWidth;
- }
- float Camera::getViewPortHeight()
- {
- return _viewportHeight;
- }
- }
|