MonoGame에서 콘텐츠 등록하고 불러오기

페이지 업데이트 :
페이지 생성 날짜 :

이번에는 스프라이트로 그리는 텍스쳐 만들기 위해 이미지 파일을 제공 하 여 로드 하는 방법에 대해 설명 합니다.

처음 로드 그림을 제공 합니다. 장소는 어디 든 상관 없습니다.

読み込む画像を用意

MonoGame 프로젝트를 만든 후 「 Content 」 폴더 내에 있는 「 Content.mgcb 」 파일을 더블 클릭 하 여 엽니다.

「Content.mgcb」ファイルを開く

Visual Studio에 텍스트가 표시 되는 「 MonoGame Pipeline 」가 시작 되지 않는 경우 시작 메뉴에서 시작 하십시오. 시작 메뉴의 「 File 」-「 Open 」에서 「 Content.mgcb 」 파일을 엽니다.

「MonoGame Pipeline」を起動

「 Content.mgcb 」 파일을 열 때 「 MonoGame Pipeline 」가 시작 됩니다. MonoGame Pipeline은 XNA Game Studio의 Content 폴더의 구성에서 유사 하기 때문에, XNA Game Studio를 사용한 적이 있는 사람은 친숙 해지기 쉬운 거 라고 생각 합니다.

「MonoGame Pipeline」が起動

사용할 이미지를 등록 합니다. 불운 하 게 드래그 앤 드롭으로 추가할 수 없기 때문에 메뉴를 추가 합니다.

메뉴에서 「 Edit 」 → 「 Add 」 → 「 Existing Item 」을 선택 하면 파일 선택 대화 상자가 표시 되 고 사용할 그래픽 파일을 선택 합니다.

画像ファイルの選択

파일을 선택 하면 파일을 복사 하 여 추가 하거나 링크로 추가할지 선택할 수 있습니다.

어느 쪽을 선택 해도 상관 없지만, 여기에 복사 하 여 추가 합니다.

コピーとして追加するかリンクとして追加するか

선택한 이미지가 Content 아래에 추가 되었습니다. 이미지 파일을 선택 하면 XNA Game Studio 처럼 Importer 및 Processor가 선택할 수 있도록 되어 있습니다. 매개 변수를 변경할 수 있지만, 왜 색 정보를 수정할 수 없습니다.

追加された画像

당분간 그대로 빌드 해 봅니다. XNA의 때에 이었다 .xnb 파일을 만들 때 빌드 같은 생각 하 고 있습니다.

메뉴 로부터 「 Build 」 → 「 Build 」을 선택 합니다.

ビルドを行う

Mgcb 파일은 일종의 프로젝트 파일을 저장할 여부를 확인 합니다. "예"를 선택 하 여 저장 합니다.

プロジェクト保存確認

빌드가 시작 되 면 오른쪽에 메시지가 표시 됩니다. 정상 또는 비정상 종료 빌드 시간 등이 표시 됩니다. 오류가 발생 한 경우 정보 메시지가 표시 되기 때문에, 그에 따라 수정 합니다.

ビルド結果

빌드가 완료 되 면 콘텐츠 준비는 완료입니다.

이미지를 로드 하 여 스프라이트로 그리는 코드는 XNA의 때와 동일 합니다. 일단 코드 추가 부분만 설명 합니다.

필드에 로드 된 이미지를 저장 하는 텍스쳐를 정의 합니다.

GraphicsDeviceManager graphics;
SpriteBatch spriteBatch;

/// <summary>
/// テクスチャー
/// </summary>
private Texture2D texture = null;

LoadContent 메서드 내에서 질감을 로드 하 고 만들 수 있습니다. 애 셋 이름은 기본적으로 파일 이름 (확장명 제외)입니다.

protected override void LoadContent()
{
  // Create a new SpriteBatch, which can be used to draw textures.
  spriteBatch = new SpriteBatch(GraphicsDevice);

  // TODO: use this.Content to load your game content here

  // テクスチャーをコンテンツパイプラインから読み込む
  this.texture = this.Content.Load<Texture2D>("XNATips");
}

Draw 메서드에서 스프라이트 그리기 부분입니다. XNA의 때와 동일 합니다.

protected override void Draw(GameTime gameTime)
{
  GraphicsDevice.Clear(Color.CornflowerBlue);

  // TODO: Add your drawing code here

  // スプライトの描画準備
  this.spriteBatch.Begin();

  // スプライトを描画する
  this.spriteBatch.Draw(this.texture, new Vector2(100.0f, 100.0f), Color.White);

  // スプライトの一括描画
  this.spriteBatch.End();

  base.Draw(gameTime);
}

실행할 때 가져온 그래픽에 스프라이트가 나타나는 것을 확인할 수 있습니다.

スプライトの表示