그래서 마침내 XNA를 가지고 놀았고 2D 게임을 만들면서 놀았습니다 (iOS에서 그것을 개발 한 친구의 많은 예술 자산이 있습니다)
많은 것들이하기 쉽고 상자에서 나오는 것처럼 보이지만 대부분의 문헌 (예를 들어 구입 한 책들)은 2D에 너무 많은 관심을 기울이지 않기 때문에 많은 것들에 푹 빠져 있습니다.
다음 질문에 대한 설명이나 자세한 정보를 알려 주셔서 감사합니다.
게임 서비스의 요점은 무엇입니까? 객체를 서비스로 등록하는 다른 관용구를 이해하여 다른 GameComponent가 그것을 잡을 수는 있지만 어떻게 공개 또는 정적으로 만들 수 있습니까? 예를 들어 필자의 책은 Game.cs 클래스에 SpriteBatch 객체를 등록 할 것을 권장했습니다. 어쨌든 Game (Singleton) 인스턴스가 하나만 있어야하기 때문에 단순히 공개 / 정적으로 만드는 것이 어떻게 바람직한 지 잘 모르겠습니까?
GameComponent 또는 RenderableGameComponent에서 상속해야 할 때 혼란 스럽습니다. 모든 엔티티가 단일 관리자에 의해 작성되고 소유되고 다른 것들과 동일하게 관리자 / 컨트롤러 디자인을 따르려고합니다. 나는 현재 각 Manager / Controller가 GameComponent에서 상속 받았지만, Game 객체가 모든 Manager를 소유하고 수동으로 업데이트를 호출하고 그립니다.
Initialize가 ContentLoad () 전에 호출되는 것을 알았습니다. Initialize 에서 일부 엔티티 (예 : Sprite, Player 등)를 만들고 싶기 때문에이 성가신 것을 알았습니다. SpriteSheets 또는 Textures는로드 요청이 아직 발생하지 않았으므로 아직 발생하지 않았습니다. 아마도 초기화가 잘못되었거나 사람들이 ContentLoad에서 텍스처를 더 아래로 할당합니까?
그것들은 정말로 이해하지 못하는 나의 가장 큰 " WTF "인 것 같습니다