문제

나는 Pygame에 대한 경험이 있었지만 요즘 Pyglet 주변에는 많은 화제가있는 것 같습니다.

이 두 라이브러리는 어떻게 비교됩니까? 기능과 사용 편의성에서 다른 하나 이상을 사용하면 어떤 이점이 있습니까?

마지막으로, 하나는 다른 하나보다 더 피스닉이라고 말할 수 있습니까?

도움이 되었습니까?

해결책

나는 작은 2D 슈터를 위해 Pygame과 Pyglet을 모두 고려하고 있었고, 소스 코드를보고 나서 일부 튜토리얼은 Pyglet과 함께 갔다. 나는 결과에 매우 만족했다.

Pyglet은 즉시 일했으며 함께 일하기에 즐거웠으며 개념적으로 매우 깨끗했습니다. 그것은 확실히 나에게 피스닉 느낌을 가졌다 : 당신은 매우 빨리 간단하고 읽을 수있는 예를 얻을 수 있으며, 데코레이터를 사용하여 이벤트 처리에 좋은 효과를냅니다. 또한 특정 프로그램 구조를 강요하지 않았으므로 Pymunk의 물리 모델링에서 쉽게 혼합 할 수있었습니다.http://code.google.com/p/pymunk/).

그것은 OpenGL을 기반으로하고 특수 효과를 위해 이러한 기능을 사용할 수 있지만, 나는 그들에 대한 지식 없이도 잘 할 수있었습니다.

또한 PY2EXE 및 PY2APP에서도 잘 작동합니다. 많은 사람들이 Python 통역사를 설치하지 않기 때문에 중요합니다.

단점은 웹에 더 적은 정보가 적고 샘플 게임이 적기 때문에 웹에 정보가 적습니다.

또한 이전 버전에서 상당히 바뀌 었으므로 현재 위치가없는 튜토리얼 중 일부가 있습니다 ( "새로운 스타일 이벤트 루프"와 스프라이트 클래스가 주요 추가 기능으로).

예제를 다운로드하는 것이 좋습니다 (Astraea 포함이라고하는 멋진 소행성 복제품이 포함되어 있음). 스타일이 마음에 들는지 확인합니다.

다른 팁

Pygame : LGPL 라이센스

피그렛 : BSD 라이센스

Pygame은 SDL 라이브러리에 크게 의존합니다

피그렛은 종속성이 적은 순수한 파이썬 라이브러리입니다.

Pygame은 오랫동안 여기 주변에 있습니다. 많은 사람들이 그것을 사용했습니다.

피그렛은 새로운 lib입니다

Pygame은 게임 개발 (커서, 스프라이트, 조이스틱/게임 패드 지원)을 대상으로합니다.

피그렛은 더 일반적인 목적입니다 (스프라이트 클래스는 있지만)

Pyglet-Users 메일 링리스트에 대한이 토론도 찾았습니다. Pygame+Pyopengl에서 Pyglet까지

면책 조항 : 나는 아직 어느 쪽도 사용하지 않았고, 튜토리얼 만 시도해 보았습니다 ;-)

게임 자체 내에서 벡터 그래픽이나 프리미티브를 그리지 않으려는 경우 피그렛은 양호합니다. 자신의 게임 루프를 작성할 필요가없고 속도와 타이밍 및 응답성에 대해 걱정해야하기 때문에 훨씬 깨끗합니다.

그러나 그래픽을 날아 다니면서 그래픽을 생성 한 다음 변수 또는 파일로 저장 해야하는 경우, 낮은 수준의 OpenGL 기능으로 주위를 돌아 다니기 시작하기 때문에 Pyglet은 상당히 복잡해집니다. 이러한 시나리오에서 Pygame은 소프트웨어 렌더링 및 표면 클래스와 함께 훨씬 더 사용자 친화적입니다. 또는 Python 이미징 라이브러리를 사용하여 Pyglet과 인터페이스 할 수 있습니다.

분명히, 3D 게임의 경우, 당신은 어쨌든 OpenGL 기능으로 주위를 돌려야 할 것입니다.

빠른 스프라이트 라이브러리가 있다고 덧붙이고 싶습니다. 랍비 피그렛에게 좋은 보완 일 수 있습니다.

Pygame과 Pyglet을 모두 보았을 때 나는 Pyglet을 픽업하기가 더 쉬워졌고 며칠 내에 간단한 브레이크 아웃 스타일 게임을 쓸 수있었습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top