728x90
GAME MAKER 강좌
KAYAN
◈ 비디오 제어 함수들
(▲ 비디오 파일 재생)
아래 함수들은 비디오를 세부적으로 제어할 수 있는 함수들입니다.
◎ video_set_volume(value) :볼륨조절 (0~1, 0 : 최소 1 : 최대) ◎ video_get_volume( ) : 현재 볼륨 반환 (0~1) ◎ video_pause( ) : 일시정지 ◎ video_resume( ) : 재생 재개 ◎ video_enable_loop(enable) : 비디오 반복재생(0 : 반복재생 안함 1 : 반복재생) ◎ video_is_looping() : 반복 재생 여부 반환 (0 또는 1) ◎ video_seek_to(time) : 탐색(밀리 초. 1/1000 초) ◎ video_get_duration( ) : 비디오의 길이를 밀리초 단위로 반환 ◎ video_get_position( ) : 비디오의 현재 위치를 밀리초 단위로 반환 ◎ video_get_status( ) : 비디오의 상태를 반환 - video_status_closed : 현재 로드된 비디오가 없거나 비디오가 video_close( )로 종료 - video_status_preparing : 비디오가 현재 준비 중이거나 아직 재생을 시작하지 않음 - video_status_playing : 비디오가 현재 재생 중임 - video_status_paused : 비디오가 일시정지 됨 ◎ video_get_format( ) : 비디오의 색상 형식을 반환 - video_format_rgba : 비디오 서피스는 RGBA 색상 모델을 사용 - video_format_yuv : 비디오 서피스는 YUV 색상 모델을 사용 |
※ Windows, macOS, Opera GX, Android, iOS 및 HTML5는 비디오에 RGBA 모델을 사용합니다.
먼저 아래 함수는 비디오의 볼륨을 조절할 수 있습니다.
◎ video_set_volume(value) :볼륨조절 (0~1, 0 : 최소 1 : 최대) |
값은 0~1 사이의 값을 지정할 수 있습니다.
예)
video_open("splash.mp4"); video_set_volume(0.5); |
다음 함수로 현재 볼륨의 값을 확인할 수 있습니다.
◎ video_get_volume( ) : 현재 볼륨 반환 (0~1) |
예)
/// Step 이벤트 var _video_volume = video_get_volume( ); if (_video_volume < 1) { _video_volume += 0.02; video_set_volume(_video_volume); } |
다음 함수는 비디오를 일시정지, 또는 재생 재개할 수 있습니다.
◎ video_pause( ) : 일시정지 ◎ video_resume( ) : 재생 재개 |
예)
var _status = video_get_status(); if (keyboard_check_pressed(vk_space)) { if (_status == video_status_playing) { video_pause( ); } else if (status == video_status_paused) { video_resume( ); } } |
아래 함수는 비디오를 반복 재생할 지를 설정할 수 있습니다.
◎ video_enable_loop(enable) : 비디오 반복재생(0 : 반복재생 안함 1 : 반복재생) |
기본적으로 1번만 재생합니다.
예)
video_open("Loading.mp4"); video_enable_loop(true); |
현재 비디오가 반복 재생 중인지를 체크할 수 있습니다.
◎ video_is_looping( ) : 반복 재생 여부 반환 (0 또는 1) |
예)
if (video_is_looping( )) { obj_player.control_enabled = false; } |
다음 함수는 비디오에서 지정한 시간으로 이동 시킬 수 있습니다.
◎ video_seek_to(time) : 탐색(밀리 초. 1/1000 초) |
시간은 밀리초(1/1000 초)로 지정합니다.
예를들어 1초를 지정할 경우 1000을 지정합니다.
예)
if (keyboard_check_pressed(vk_right)) { var _video_position = video_get_position( ); _video_position += 2000; if (_video_position < video_get_duration( )) { video_seek_to(_video_position); } else { video_close( ); } } |
아래 함수로 비디오의 전체 길이와 재생중인 현재 위치를 알아볼 수 있습니다.
◎ video_get_duration( ) : 비디오의 길이를 밀리초 단위로 반환 ◎ video_get_position( ) : 비디오의 현재 위치를 밀리초 단위로 반환 |
단위는 밀리초(1/1000)로 반환합니다.
예)
if (keyboard_check_pressed(vk_right)) { var _video_position = video_get_position( ); _video_position += 2000; if (_video_position < video_get_duration( )) { video_seek_to(_video_position); } else { video_close( ); } } |
아래 함수로 비디오의 현재 상태를 알아볼 수 있습니다.
◎ video_get_status( ) : 비디오의 상태를 반환 - video_status_closed : 현재 로드된 비디오가 없거나 비디오가 video_close( )로 종료 - video_status_preparing : 비디오가 현재 준비 중이거나 아직 재생을 시작하지 않음 - video_status_playing : 비디오가 현재 재생 중임 - video_status_paused : 비디오가 일시정지 됨 |
예)
var _status = video_get_status(); if (keyboard_check_pressed(vk_space)) { if (_status == video_status_playing) { video_pause( ); } else if (status == video_status_paused) { video_resume( ); } } |
아래 함수는 비디오의 색상 형식을 알아볼 수 있습니다.
◎ video_get_format( ) : 비디오의 색상 형식을 반환 - video_format_rgba : 비디오 서피스는 RGBA 색상 모델을 사용 - video_format_yuv : 비디오 서피스는 YUV 색상 모델을 사용 |
※ Windows, macOS, Opera GX, Android, iOS 및 HTML5는 비디오에 RGBA 모델을 사용합니다.
300x250
'GameMaker강좌[GMS2] > GMS2기초강좌' 카테고리의 다른 글
[게임메이커 강좌-기초][GMS2] 게임메이커에서 비디오 재생-1 : 기본 (0) | 2024.03.22 |
---|---|
[게임메이커 강좌-기초][GMS2] GIF 이미지 저장 기능 (0) | 2024.03.21 |
[게임메이커 강좌-기초][GMS2] 스프라이트 이미지 저장하기 (0) | 2024.03.20 |
[게임메이커 강좌-기초][GMS2] 추가한 스프라이트 이미지에 충돌 마스크 설정 (0) | 2024.03.20 |
[게임메이커 강좌-기초][GMS2] 게임상에서 외부 이미지 추가하기 (2) | 2024.03.19 |
댓글