新しい機能を学ぶには

Godotは、機能豊富なゲームエンジンです。そのため、学ぶべきことがたくさんあります。このページでは、新しい機能やテクニックを学ぶために、オンライン・マニュアルや内蔵のコード・リファレンスを利用したり、オンライン・コミュニティに参加する方法を説明します。

このマニュアルを活用する

あなたが今読んでいる、ユーザーマニュアルです。このマニュアルには、エンジンの概念や使用可能な機能が記載されています。新しいトピックを学ぶ際には、まずこのウェブサイトの対応するセクションを閲覧することから初めてみてください。左側のメニューでは大まかなテーマを、検索バーではより具体的なページを探すことができます。そのテーマのページがあれば、より関連性の高いコンテンツにリンクしています。

../../_images/manual_search.png

マニュアルには手引となるクラス・リファレンスがあり、プログラミングの際にGodotクラスそれぞれの利用可能な機能や、プロパティを説明しています。マニュアルでは、一般的な機能やコンセプト、エディタの使い方を説明していますが、リファレンスでは、GodotのスクリプティングAPI(Application Programming Interface)の使い方を説明しています。オンラインでもオフラインでもアクセスできます。オフラインでGodotエディタ内からリファレンスを閲覧することをお勧めします。これを行うには、Help -> Searchにアクセスするか、 :kbd:`F1`を押してください。

../../_images/manual_class_reference_search.png

オンラインで見る場合は、マニュアルの Class Reference のセクションをご覧ください。

クラスリファレンスのページには、次のことが記載されています。

  1. 継承階層内のクラスの場所。上位のリンクをクリックすると、親クラスにジャンプし、型が継承するプロパティとメソッドを確認できます。

    ../../_images/manual_class_reference_inheritance.png
  2. クラスの役割や使用例をまとめたもの。

  3. クラスのプロパティ、メソッド、シグナル、列挙、定数についての説明。

  4. クラスの詳細を説明するマニュアルページへのリンク

注釈

マニュアルやクラスリファレンスに欠落や不適当な内容がある場合は、公式の`godot-docs <https://github.com/godotengine/godot-docs/issues>`_ GitHubリポジトリにIssueを開いて報告してください。

クラス名、プロパティ名、メソッド名、シグナル名、定数名など、下線が引かれたテキストをCtrlキーを押しながらクリックすると、その項目にジャンプします。

プログラマのように考えることを学ぶ

プログラミングの基礎や、ゲーム開発者としての考え方を教えることは、Godot'のドキュメントの範囲を超えています。もしあなたが初めてプログラミングをするのであれば、2つの優れた無料の学習リソースをお勧めします。

  1. ハーバード大学では、プログラムを学ぶための無料コースウェア、`CS50 <https://cs50.harvard.edu/x/2020/>`_を提供しています(英語)。このコースウェアでは、プログラミングの基礎、コードがどのように機能するか、そしてプログラマーとしてどのように考えるかを学ぶことができます。これらのスキルは、ゲーム開発者になり、あらゆるゲームエンジンを効率的に学ぶために不可欠です。このコースは、ゲーム制作を学ぶ際の時間と手間を省くための投資と捉えることができます。

  2. 書籍のほうがお好きな方は、Al Sweigartの無料電子書籍`Automate The Boring Stuff With Python <https://automatetheboringstuff.com/>`_をご覧ください(英語)。

コミュニティで学ぶ

Godotには拡大を続けるユーザーコミュニティがあります。問題に悩まされてたり、何かを達成する方法を理解するために助けが必要な場合は、`活動中のコミュニティ<https://godotengine.org/community>`_ の中から、他のユーザーに 助けを求めることができます。

質問をしたり、すでに回答されたものを見つけたりするのに最も適した場所は、公式の Questions & Answers サイトです。これらの回答は、検索エンジンの結果に表示されるので、他のユーザーはプラットフォームでの議論から利益を得ることができます。このサイトで質問した後、そのリンクを他のソーシャルプラットフォームで共有することができます。質問をする前に、自分の問題を解決してくれそうな既存の回答を、このサイトやお好みの検索エンジンで探してみてください。

上手に質問する方法として、詳細な情報を提供することで、他の人がより早く、よりよく答えてくれるようになります。質問をする際には、以下の情報を含めることをお勧めします。

  1. 達成したいことを説明してください。何を目標として達成しようとしているのかを説明する必要があります。1つの解決案がうまくいかない場合、同じ目標を達成するために、もっと簡単な別の解決案があるかもしれません。

  2. エラーが発生した場合は、 正確なエラーメッセージを共有 してください。エディタのデバッガの下部パネルにある「エラーをコピー」アイコンをクリックすると、正確なエラーメッセージをコピーすることができます。その内容を知ることで、どのようなエラーが発生したのかをコミュニティメンバーがより正確に把握することができます。

  3. コードが含まれている場合は、 コードサンプル を共有してください。他のユーザーは、あなたのコードを見ずに問題解決の手助けをすることは不可能です。コードを直接、テキストとして共有してください。そのためには、短いコードスニペットをコピーしてチャットボックスに貼り付けたり、`Pastebin <https://pastebin.com/>`_のようなサイトを使って長いファイルを共有したりします。

  4. 書き込んだコードと一緒に、 *Scene* ドックのスクリーンショット を共有してください。あなたが書いたコードのほとんどは、シーンのノードに影響を与えます。そのため、シーンはソースコードの一部と考えるべきです。

    ../../_images/key_concepts_scene_tree.png

    携帯電話で撮影した写真は使用しないでください、画質の問題と画面の反射のため、内容を理解するのが難しくなります。お使いのOSには、 PrtSc (Print Screen)キーを使ってスクリーンショットを撮るツールが組み込まれているはずです。

    あるいは、Windowsでは`ShareX <https://getsharex.com/>`_、Linuxでは`FlameShot <https://flameshot.org/>`_のようなプログラムを使うこともできます。

  5. 実行中のゲームのビデオを共有することは、 ゲームのトラブルシューティングにとても役立つことがあります`OBS Studio <https://obsproject.com/>`_や `Screen to GIF <https://www.screentogif.com/>`_のようなプログラムを使用して、画面をキャプチャすることができます。

    streamable やクラウドプロバイダーなどのサービスを利用して、無料で動画をアップロードして共有することができます。

  6. もし、Godotの安定版を使っていない場合は、使っているバージョンを教えてください。利用可能な機能やインターフェイスが急速に進化しているため、回答が異なることがあります。

これらのガイドラインに従うことで、あなたが探している答えを得る可能性を最大限に高めることができます。また、あなたとあなたをサポートする人の両方にとって、時間の節約にもなります。

コミュニティのチュートリアル

このマニュアルは、Godot'の機能を包括的に参照することを目的としています。2Dと3Dの入門シリーズを除いて、特定のゲームジャンルを実装するためのチュートリアルは含まれていません。ロールプレイングゲームやプラットフォーマーなどを作るためのチュートリアルを探している場合は、Godotコミュニティが作成したコンテンツをリストアップした チュートリアルとリソース をご覧ください。