载入中...
搜索中...
未找到
eve::camera::PcgFreeCamera类 参考

Caller-owned six-degree free-camera state ported from Pcg FreeCamera. 更多...

#include <PcgFreeCamera.h>

Public 成员函数

Result< void > configure (bool enabled, bool lockCursor, bool holdRight, float lookSpeed, float moveSpeed, float sprintSpeed, bool scrollIncrease, float increase, float roll)
 Configure capture and movement settings atomically.
 
Result< void > capture (graphics::Camera3D *camera)
 Capture input and initialize pose from a live camera.
 
void release () noexcept
 Release input capture.
 
Result< void > update (graphics::Camera3D *camera, const PcgFreeCameraInput &input, float dt)
 Process one input snapshot and update the live camera.
 
Result< void > setRoll (float roll)
 Change roll and immediately update orientation on the next frame.
 
bool getCaptured () const noexcept
 Return capture state for cursor policy.
 
float getSprintSpeed () const noexcept
 Return current sprint speed after scroll changes.
 
float getYaw () const noexcept
 Return current yaw in degrees.
 
float getPitch () const noexcept
 Return current pitch in degrees.
 
float getRoll () const noexcept
 Return configured roll in degrees.
 

详细描述

Caller-owned six-degree free-camera state ported from Pcg FreeCamera.

在文件 PcgFreeCamera.h 第 5 行定义.

成员函数说明

◆ capture()

Result< void > eve::camera::PcgFreeCamera::capture ( graphics::Camera3D *  camera)

Capture input and initialize pose from a live camera.

在文件 PcgFreeCamera.cpp 第 10 行定义.

引用了 c, dx, dy, dz, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::InvalidArgument , 以及 eve::Result< T >::success().

被这些函数引用 update().

◆ configure()

Result< void > eve::camera::PcgFreeCamera::configure ( bool  enabled,
bool  lockCursor,
bool  holdRight,
float  lookSpeed,
float  moveSpeed,
float  sprintSpeed,
bool  scrollIncrease,
float  increase,
float  roll 
)

Configure capture and movement settings atomically.

在文件 PcgFreeCamera.cpp 第 9 行定义.

引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), finite, h, eve::InvalidArgument, roll , 以及 eve::Result< T >::success().

◆ getCaptured()

bool eve::camera::PcgFreeCamera::getCaptured ( ) const
inlinenoexcept

Return capture state for cursor policy.

在文件 PcgFreeCamera.h 第 13 行定义.

◆ getPitch()

float eve::camera::PcgFreeCamera::getPitch ( ) const
inlinenoexcept

Return current pitch in degrees.

在文件 PcgFreeCamera.h 第 16 行定义.

◆ getRoll()

float eve::camera::PcgFreeCamera::getRoll ( ) const
inlinenoexcept

Return configured roll in degrees.

在文件 PcgFreeCamera.h 第 17 行定义.

◆ getSprintSpeed()

float eve::camera::PcgFreeCamera::getSprintSpeed ( ) const
inlinenoexcept

Return current sprint speed after scroll changes.

在文件 PcgFreeCamera.h 第 14 行定义.

◆ getYaw()

float eve::camera::PcgFreeCamera::getYaw ( ) const
inlinenoexcept

Return current yaw in degrees.

在文件 PcgFreeCamera.h 第 15 行定义.

◆ release()

void eve::camera::PcgFreeCamera::release ( )
inlinenoexcept

Release input capture.

在文件 PcgFreeCamera.h 第 10 行定义.

◆ setRoll()

Result< void > eve::camera::PcgFreeCamera::setRoll ( float  roll)

Change roll and immediately update orientation on the next frame.

在文件 PcgFreeCamera.cpp 第 11 行定义.

引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), finite, eve::InvalidArgument, r , 以及 eve::Result< T >::success().

◆ update()


该类的文档由以下文件生成: