나는 게임을 만들었고 내가 사용 된 파이썬 라이브러리는 끔찍하다 (Pyglet). OSX 버전에서 Cocoa를 사용해보고 싶습니다.코코아 라이브러리를 만들고 파이썬에서 사용하는 방법
NSWindow 및 NSOpenGLView와 같은 클래스의 객체를 사용하여이 객체를 게임 루프 용 클래스에 넣을 수 있습니다.
PyObjC를 사용하여 동적 Objective-C 라이브러리를로드하는 방법을 알지 못합니다. 파이썬에서 NSTimer에 의해 반복 될 수있는 게임을 설정하는 클래스를 사용합니다.
그러나 루프 메서드는 많은 파이썬 클래스 중 하나에서 파이썬 메서드를 호출해야합니다. 내 게임은 게임의 다른 섹션 (Mapmaker, GameSession, AnacondaGame 등)에 사용되는 많은 파이썬 클래스로 구성됩니다. 게임 루프는 현재 섹션에 따라 이러한 클래스 중 하나에서 루프 메서드를 호출하고 정보를 전달해야합니다.
PyObjC는 "양방향"입니다. 어떻게 그렇게 했습니까?
또는 파이썬에서 호출 할 수있는 두 가지 메서드를 만들 수 있으며 파이썬 코드가 루프를 파이썬에 의해 제어되는 중간에 추가 할 수 있습니다.
PyObjC 웹 사이트의 "문서"는 파이썬과 그 밖의 다른 방법으로 코코아를 사용하는 방법 만 설명합니다.
내가 할 수없는 것은 인터페이스 빌더를 사용하여 고정 GUI를 만드는 것입니다. 라이브러리가 파이썬 입력을 기반으로 창을 만들어야하기 때문입니다.
Objective-C의 구문을 이해하는 것은 큰 문제가 아니며 필요한 개체를 만들기 위해 Cocoa 설명서를 재사용 할 수 있습니다.
도움 주셔서 감사합니다. 대단히 감사하겠습니다. 파이 게임 (pygame)과 파이 그렛 (pyglet)과 같은 깨진 라이브러리를 사용하는 것이 지겹다. 플랫폼 별 OS API를 사용하면 품질을 보장하는 가장 좋은 방법 인 것 같다.
나는 파이썬 메인 루프를 사용할 수 없을까? 파이썬을 시작할 준비가 된 NSApplication에서 run 메소드를 호출해야 할 것이다. 그런 다음 Objective-C 코드에서 일부 파이썬 메서드를 호출해야합니다. 운좋게도 pyglet을 사용하는 현재 코드는 run 메소드가 호출되는 것과 비슷한 것을 사용합니다. Objective-C의 호출 파이썬은 성가신 부분입니다. –
인터페이스 빌더가없는 코코아에 대한 훌륭한 자습서가 반드시 있어야합니까? –