UE4のバグ報告をして修正してもらおう！

こちらは [Unreal Engine 4 (UE4) Advent Calendar 2018](https://qiita.com/advent-calendar/2018/ue4) 18日目の記事です。

前日の記事は [UE4のUnlitでトゥーンレンダリングをキメる！](https://qiita.com/ruyo/items/28255f26725a6b6bd475) でした。
VR界隈はまだまだUnityが強くUE4での情報が少ないためこのような記事はとても為になりました。

# この記事について

私は技術的な内容がパッと思いつかなかったので
以前「[UE4.20にてパッケージ時のみスタートアップムービーの映像のみ再生されない](https://issues.unrealengine.com/issue/UE-61092)」というバグを報告した際の経験を元に
UE4のバグを[UNREAL ENGINE BUG SUBMISSION FORM](https://epicsupport.force.com/unrealengine/s/) 経由で報告し [Uneral Engine Issues](https://issues.unrealengine.com/) へIssueとして挙げる方法について解説します

**アドカレに参加するのが初めてなので間違った箇所等があればガンガン編集リクエストお願いします！！**

# Unreal Engine Issuesとは
[Uneral Engine Issues](https://issues.unrealengine.com/)
Unreal Engineの既知のバグを一覧で見れるようにしたサイトです。
~~UE4ロゴの4が逆さになってるところが注目ポイントです~~

![unrealengineissues.png](https://qiita-image-store.s3.amazonaws.com/0/131480/42f0ee50-ad4d-4d3f-e60b-c0c40922fc60.png)


皆大好き質問・回答の場である[AnswerHub](https://answers.unrealengine.com/)や
有償サポートである[Unreal Developer Network](https://udn.unrealengine.com/)、
バグ報告専用フォームの[UNREAL ENGINE BUG SUBMISSION FORM](https://epicsupport.force.com/unrealengine/s/)
等々で報告・確認されたバグが次々と登録されていきます。

# バグを見つける・検証する
バグの殆どは偶発的に見つかるものなのでバグのような挙動を見つけた場合はまず最初に
**それが本当にバグなのか、それとも実は正しい挙動なのか**を検証してください。
検証する際は下記の方法がおすすめです
- 複数のUE4バージョンで試す
- 複数環境(仮想環境もありです）で試す
- 新規プロジェクトで再現手順を試す

そしてそれがUE4側のバグであった場合は既に[Uneral Engine Issues](https://issues.unrealengine.com/)や[AnswerHub](https://answers.unrealengine.com/)に投稿されていないかどうか確認してみてください。
既に報告が挙げられていなかった場合に次のステップへ進み報告を上げます

# バグ報告をする
バグである可能性が高い場合は[UNREAL ENGINE BUG SUBMISSION FORM](https://epicsupport.force.com/unrealengine/s/)へアクセスして必要な情報を埋めていきます
![unrealenginebugsubmissionform.png](https://qiita-image-store.s3.amazonaws.com/0/131480/282e260d-1e2a-2cbb-8f8b-534e3a75f4e7.png)

- Name : 名前
- Email : 連絡が取れるアドレス
    - Epic側が再現できなかった場合等に**英語**で連絡が来ます
- Title : バグの内容が分かりやすいタイトル
- Steps to Reproduce : バグの再現手順
    - 余分な情報を含まない為にも最短の再現手順が望ましいです
    - 箇条書きのような書き方がわかりやすいと思います
- Results : 上記の手順を行った場合どういった事象が起きるか（どのようなバグが発生するか）
- Expected : 本来してほしい正しい挙動
- Description : 今回の報告を軽くまとめた説明文
    - 簡単なバグであればタイトル文と同じで構いません
- Affects Versions : バグが発生するUE4上のバージョン
- Platforms : 問題が発生するプラットフォーム
    - 複数選択が可能です
    - プラットフォーム問わず発生する問題でかつエディタ上でも発生する問題であればエディタを動かしているプラットフォームで構いません
- Attachment : 描画バグなどスクリーンショットがあったほうが分かりやすい問題で場合などは画像を添付します
- Additional Notes : いわゆる備考欄です。何が補足情報がある場合はこちらに書くと良いでしょう
- Download Link to Test Project : 再現手順が凄まじく面倒な場合や特定プロジェクトじゃないと発生しないなど問題の特定が困難な場合はプロジェクトを**Dropbox**または**Google Drive**にアップして共有リンクを貼ります
    - 他の共有サービスはNGなのかどうかは分からないです…
- Crash : 上記バグがクラッシュ落ちするかどうか
- captcha : ~~ゼイ・フランク「あなたは人間ですか？」~~

上記項目を全て**英語**で埋めて「Submit Bug Report」を押して完了です
私は英語が出来ないのでGoogle翻訳を用いて報告をしました。
もしGoogle翻訳を用いる場合は 日本語→英語→日本語 という手順（いわゆる逆翻訳）を用いて、日本語として破綻していないかどうかチェックすることでまだマシな英文を作ることができます。

(下記ボタンを連打するとどんどん逆翻訳出来るのでこの連打に耐えうる文だとコミュニケーションエラーが起きにくい**かも**しれませんね)
![googletrans.png](https://qiita-image-store.s3.amazonaws.com/0/131480/2caed745-8687-0e1e-ab3a-c0e0fd434809.png)

# 返信を待つ
バグレポートが完了したらあとはEpic側から返答があるのを待ちます。
あちらからバグが再現できない等不明な点がある場合は追加の情報を求むといった内容のメールが届きます
このメールに対してはそのままメールの返信機能を用いて返信してOKです
（もちろん英語です…）

# 報告完了
メールでやり取りなどがあった後にEpic側がバグを確認できた場合は

```
バグ確認できたからバグレポート上げておいたぜ
(URL)
サンクス！
```

といった内容のメールが届きます。
URLを開いてすかさずVoteして修正してくれるのを待ちましょう。
なんならいろんな人に頼んでVoteしてもらいましょう。

ステータスが Fixed になれば Target Fix のバージョンを使用することでバグが修正されたUE4を使うことができます
![fixedstatus.png](https://qiita-image-store.s3.amazonaws.com/0/131480/f3c0e864-7a3a-4cb8-3ec7-4cd5584ce632.png)


# 最後に
UE4は非常に強力で精力的にアップデートが行われていますが、
バグもまだまだ存在します、そしてこれからも新たなバグが発生していきます。
そんな中でバグを見つけた場合は是非気軽に報告してUE4をより良いものとしていきましょう！

明日は @0xUMA さんによる 「初参加してみます。」とのことです
どんな記事がかかれるのか気になります :eyes:
よろしくお願いします！