技術書典12にて技術書「Fish-NetでUnityのマルチプレイゲームを作ろう 」を出しました

f:id:xrdnk:20220124094825p:plain

はじめに

技術書典12 で個人初の技術書「Fish-NetでUnityのマルチプレイゲームを作ろう 」を出しました!

techbookfest.org

deniverse.booth.pm

Fish-Net とは

Unity 用のネットワーク API が提供された OSS です.Asset Store や GitHub に公開されています.

assetstore.unity.com

github.com

今回出した技術書は大半は Fish-Net の使い方を拙い日本語にしつつ,自作サンプルに説明を入れているものになっています.

なので,英語に抵抗がない方は正直 Fish-Net の公式ドキュメントや YouTube を見ていたら理解できると思います.

  • Fish-Net 公式ドキュメント

fish-networking.gitbook.io

ワークスルー

www.youtube.com

API チュートリアル

www.youtube.com

この内容で出した理由

技術書典 12 では本来 Netcode for GameObjects をネタに出そうと思ったんですが,
12月末頃に Fish-Net の存在を偶然知ったので,Fish-Net のドキュメントを流し読みした所,
これは Mirror や Netcode for GameObjects よりよさそうでは!?と思って急遽 Fish-Net に内容に変更しました.
なので,12月まで生んでた Netcode for GameObjects の内容を一旦スタッシュして,新しく作りなおした感じです.

所感

パフォーマンスが Mirror よりよく,後は APIコンポーネントは Netcode for GameObjects より使いやすいと感じました.
まだまだベータリリースされたばかりですが,将来が楽しみだと思っています.

将来は「ネットワークの API は Fish-Net,ソリューションは Photon Fusion の双璧では?」みたいな個人的な感触があります.

一応パフォーマンス比較の記事を抜粋しますとこんな感じです.

f:id:xrdnk:20220124100742p:plain

Photon Fusion も250オブジェクトに対する帯域使用の比較画像を上げているので一応上げておきます.

f:id:xrdnk:20220124100857p:plain

反省

初めての技術書執筆だったのですが,失敗だらけでした….失敗として挙げられる点としては以下です.

  • 締切が守れなかった
  • 表紙に拘る時間を考えていなかった
  • 誰かにレビューを貰うことを考えてなかった
  • もう少しレイアウトなどソースコードの見栄えなどをよくしたかった

次に出す技術書のネタはすでにあるので,技術書典13 があれば,
今度は上記の反省点を改善してよりよいものを出していきたいと思っています.

終わりに

技術書を出すにあたって結構自分でも思考・知識の整理としてアウトプットになりましたし,
何よりも世の中で技術書を出す方々はみんなすごい!と改めて実感しました.リスペクトです.

また,技術書内部に書かれているサンプルプロジェクトのリポジトリは公開しているので良ければどうぞ.

github.com