오디오

Pyxen은 두 종류의 오디오를 지원합니다: 짧은 효과를 위한 사운드와 긴 트랙을 위한 음악. 둘 다 컴포넌트로 엔티티에 첨부됩니다.

사운드

Sound는 짧은 오디오 클립입니다 — 점프, 타격, 코인 획득. Sound 컴포넌트를 가진 엔티티를 생성하여 사운드를 재생합니다:

world.spawn(sound=Sound("jump"))

사운드는 즉시 재생됩니다. 재생 속성을 제어할 수 있습니다:

world.spawn(sound=Sound("laser", loop=True, gain=0.5, pan=-0.5))
속성의미
loop사운드 반복 여부
gain볼륨 (0.0 = 무음, 1.0 = 최대)
pan스테레오 위치 (-1.0 = 왼쪽, 0.0 = 가운데, 1.0 = 오른쪽)

사운드는 프로젝트 에셋의 오디오 파일에서 로드됩니다.

음악

Music은 Sound와 비슷하지만 긴 트랙을 위해 설계되었습니다. 음악은 메모리에 전체를 로드하지 않고 스트리밍됩니다:

world.spawn(music=Music("theme", loop=True))

Music은 같은 속성을 지원합니다: loop, gain, pan.

컴포넌트로서의 오디오

오디오가 엔티티에 첨부되므로, 다른 모든 것과 같은 방식으로 관리합니다:

# 배경 음악 시작
bgm = world.spawn(name="bgm", music=Music("overworld", loop=True))

# 나중에 정지
world.destroy(bgm)

이는 ECS 모델에 자연스럽게 맞습니다 — 오디오는 엔티티의 또 다른 컴포넌트일 뿐이며, 프레임 인스펙터에서 다른 것처럼 볼 수 있습니다.

지원 형식

Pyxen의 에셋 관리자를 통해 프로젝트에 오디오 파일을 추가하세요.

전체 API는 SoundMusic을 참조하세요.