다음을 통해 공유


GameInputBatteryState

입력 장치의 배터리 상태를 기술합니다.

구문

typedef struct GameInputBatteryState {  
    float chargeRate;  
    float maxChargeRate;  
    float remainingCapacity;  
    float fullChargeCapacity;  
    GameInputBatteryStatus status;  
} GameInputBatteryState  

멤버

chargeRate
형식: float

장치의 충전 속도에 대한 와트 시간 값입니다. 장치가 예상값을 제공하지 않는 경우, chargeRate가 fullChargeCapacity의 +/- 10%로 설정되고, 충전 상태가 "유휴"이면 0으로 설정됩니다.

maxChargeRate
형식: float

손상 없이 배터리가 충전될 수 있는 최대 속도에 대한 와트 시간 값입니다.

remainingCapacity
형식: float

입력 장치 배터리의 남은 충전량에 대한 와트 시간 값입니다. 장치가 예상값을 제공하지 않는 경우 remainingCapacity가 남은 충전 비율을 곱한 fullChargeCapacity의 값으로 설정됩니다.

fullChargeCapacity
형식: float

입력 장치 배터리의 전체 용량에 대한 와트 시간 값입니다. 장치가 예상값을 제공하지 않는 경우 fullChargeCapacity가 1 와트 시간으로 설정됩니다.

status
형식: GameInputBatteryStatus

입력 장치의 배터리 상태입니다.

비고

모든 부동 소수점 값은 와트 시간으로 표시됩니다. 장치에 배터리가 없거나 현재 배터리 상태를 확인할 수 없으면 모든 부동 소수점 값이 0입니다. 그렇지 않으면 배터리가 충전될 때 음수 값이 되는 chargeRate 멤버를 제외한 모든 부동 소수점 값이 양수입니다.

장치에서 검색될 수 있을 때마다 정확한 와트 시간 값이 제공됩니다. 하지만 모든 장치가 이 정보를 제공하지는 않으며, 일부 값만 제공할 수도 있습니다. 정확한 와트 시간 수치를 사용할 수 없는 모든 부동 소수점 값에는 다음과 같이 기본값이 지정됩니다.

  • chargeRate는 충전/방전 중일 때 fullChargeCapacity 값의 +/- 10%로 설정되며, 충전 상태가 "유휴"일 때는 0으로 설정됩니다.
  • remainingCapacity는 남은 충전 비율을 곱한 fullChargeCapacity의 값으로 설정됩니다.
  • fullChargeCapacity는 1 와트 시간 값으로 설정됩니다.

많은 게임 컨트롤러에는 연속 충전 비율이 아닌 세부 충전 수준만 보고할 수 있는 저비용 배터리 충전 회로가 포함되어 있습니다. 이 경우 세부 값은 다음 표에 따른 충전 비율로 매핑됩니다.

세부 충전 수준 매핑된 백분율 값
꽉 참 100%
보통 70%
낮음 40%
위험 10%

배터리 전원을 "막대"로 표시하는 모든 UI 코드는 최상의 사용자 환경을 위해 배터리 수준을 표시할 때 이 표에 포함된 값을 따라야 합니다.

시스템에서 장치 연결을 해제할 때 IGameInputDevice::GetBatteryState 메서드가 호출되면 모든 부동 소수점 값이 0으로 설정되고, 상태 멤버가 GameInputBatteryUnknown으로 설정됩니다(장치가 연결될 때 유효한 값이 제공된 경우도 포함). 이 메서드는 단순히 로컬 메모리에 저장된 데이터를 검색하며, 어떤 컨텍스트에서도 안전하게 호출할 수 있습니다.

요구 사항

헤더: GameInput.h

지원되는 플랫폼: Windows, Xbox One 패밀리 콘솔 및 Xbox Series 콘솔

참고 항목

입력 API 개요
GameInput
IGameInputDevice::GetBatteryState