ゲームのビルド高速化ツールIncredibuildが今伸びているらしい。好調な理由を訊いた


ゲーム開発において、ビルドは非常に頻繁に行う工程の1つだ。一方でビルドは、頻繁に行う工程であると同時に、時間がかかる工程でもある。そんなビルド時間を大幅に減らすことができるのが、コンピューターソフトウェアIncredibuildである。Incredibuildを導入することによって、今までビルドにかかっていた時間を大幅に減らすことができると謳われている。

6月30日と7月4日に行われた、ゲーム開発者向けツールとミドルウェアの紹介を中心としたイベント、Game Tools & Middleware Forum 2023(GTMF 2023)にて、Incredibuildを提供するインクレディビルドジャパン株式会社が出展していた。Incredibuildがいったいどのような技術でビルドの高速化を行っているのか。発足の経緯や最新の機能、現在日本で好調な理由など、インクレディビルドジャパン株式会社の瀧久 寛之氏に話を伺った。

──よろしくお願いします。「Incredibuild」は、ゲーム開発におけるビルドの高速化を提供していますが、どういった技術で提供しているのでしょうか。

瀧久 寛之(以下、瀧久)氏:
概念としては並列分散処理というものになります。何か重い処理をしようとする時に、1台ハイスペックなマシンで処理するのではなく、皆さんのお手元にあるマシンにIncredibuildのソフトウェアを導入することによって、みんなで作業を分担して処理を行います。

──実際目安としては、どのくらいの高速化が図れるのでしょうか?

瀧久氏:
ケースバイケースにはなりますが、今までの環境よりも半分ぐらいの時間になっただとか、極端な話でこれまで1~2日かかっていたものが1~2時間で済みましたという声をお伺いしています。


──なるほど。これまでビルドの工程がネックになっていたプロジェクトほど、高速化が見込みやすいという。

瀧久氏:
そうですね。ゲームのリリース日まであと直前の段階で、手直しとかバグが見つかって、作り直さなきゃいけないという時に、ビルドの工程に30分、はたまた数時間も待たなければいけないとなると大変ですよね。とにかく自分の書いたコードが正しく動作するかをいち早く確認したい方や、プロジェクトがスケジュール通りに進まないことが悩みのお客様に、ご利用頂いているというところです。

──ありがとうございます。Incredibuildは、元々海外の会社/ソフトウェアですよね。一体どういった経緯で発足されたのでしょうか。

瀧久氏:
そもそもは、イスラエルにいた2名のエンジニアから始まった会社です。当時、2人はソフトウェアの開発を行っていたのですが、最新のマシンがある環境なのにビルドのスピードが遅いことに気づきました。それをどう解決させるかを考えた時に、1台のマシンがどれだけいいスペックのものであろうと、ビルドしているうちはどうしても速くならない。その考えのもと、複数のマシンで処理する並列分散処理に特化したIncredibuildのソフトウェア開発に至りました。



PCをたくさん持たなくてもいい。クラウドを使った新たなビルド環境

──なるほど。その並列分散処理はIncredibuild社が持っているクラウドサーバーで行われるのでしょうか?

瀧久氏:
基本的には、Incredibuildを入れていただく環境……たとえば社内のオフィスにある従業員の皆さんが使っているPC、またはビルド専用のビルドファームで処理する仕組みになります。もしクラウドで処理する場合は、お客様の契約したクラウドの領域の中でIncredibuildを入れてもらえれば、ビルドの際に、ヘルパーといわれるビルドのお手伝いをするマシンがボコッと立ち上がって、処理をしたら消えるというものになりますね。

──基本的には、Incredibuild側が環境を作るのではなく、自分たちが作った環境にインクレディビルドを入れると。

瀧久氏:
そうですね。ですが最近はクラウドでの環境構築をするお客様が増えてきた印象があります。理由として考えられるのは、外出自粛で多くの会社さんが在宅勤務になりまして、個人のネットワークでビルドを構築するようになったのですが、Incredibuildは同じネットワークにあるマシン同士でやり取りする仕組みとなっているので、ネットワークの距離が遠くなると、うまく処理を分散できなくなってしまう。そこからクラウドを活用した環境の構築がここ3年間ほど増えてきました。

今オフィスバックと言われる形で、出勤することになった会社も多くありますよね。そのように勤務状況が変わっても、開発に集中できるようにクラウドの活用が進んでいますね。

──クラウドにした場合、利点があったりするのでしょうか。

瀧久氏:
Incredibuildの仕組みは、オフィスにあるPCの遊休資産に作業を割り当てるようなかたちです。誰かがガリガリ使ってるマシンでは使えないけど、それ以外の作業が空いてるマシンに作業を割り当てて高速化するようなものでした。でも、その空いているマシンで誰かが作業をやり始めたら、その作業の方が優先になって、お手伝いしてる作業が捨てられちゃうんですよ。

でもクラウドだったらビルド時にソフトウェアを立ち上げて、終わったらすぐに消すことができる。ほかの方が作業している影響を受けずビルドができて、非常に使い勝手がいいんです。必要な時に立ち上げて終わったら消すので、従量課金が多いクラウドのシステム上、コストが上がってしまうと思われる。ただしIncredibuildはデフォルトでSpotインスタンスを利用するなど、コストがむやみやたらに広がらないようにできているので、そこもご評価いただけているのかなと思います。


──ありがとうございます。ちなみにソフトウェアを導入する際は大幅な作業だったり手続きは必要なのでしょうか。

瀧久氏:
Incredibuildの仕組みとして必要なのは、エージェントを各PCにインストールすることと、Incredibuild同士で通信するために、指定されたネットワークのポートを開けておくということぐらいですね。逆に言うとそれ以外はそんなに複雑なことはないので、すぐ立ち上げてすぐ終わる作業になってます。

──導入も簡単と。

瀧久氏:
そうですね。ツールを導入いただいているプロジェクトの開発者エンジニアさまがIncredibuildを使ってることを知らなかったというケースもよくあります。というのも、Incredibuildを入れる前と入れた後でご自身の領域で変化を実感しづらいからです。パソコンの中にエージェントが入って、いつの間にかビルドが速くなっているんです。だから、よくある話としてはIncredibuildを使っていただいているゲーム開発会社でお仕事されていて、他社に転職されてビルドをした際に、Incredibuildが入ってなくて、スピードの遅さに驚くケースも聞いたことがあります。



最新機能であるビルドキャッシュとは

──ありがとうございます。今後、Incredibuildではどのようなことに取り組もうと思っているのでしょう?

瀧久氏:
今後のことに関しては、詳しくは言えません(笑)ですが、最新機能としてビルドキャッシュというものがあり、そちらに注目していただきたいです。これまでの悩みとしては、開発時に1回コードを書き上げて、その後ビルド実行して気になる部分があった時、再度その部分だけコードを書き換えて実行してもまた0からビルドをすることになってしまう。それゆえに確認に時間がかかってしまう。

新機能のビルドキャッシュでは、1度ビルドしたものをキャッシュとして保存してあるので、時間がかかるのは「コードを書き換えた部分だけ」になるんです。これを使えばビルドの時間はもちろん短くなりますし、クラウドであればビルドする量が大幅に減るんで、料金も安くなります。

──それは便利ですね。

瀧久氏:
言葉で言うと簡単なんですけど(笑)実際には、どこまでのキャッシュを本当に使っていいのかなどのキャッシュ自体の細かい制御も結構ありまして、その辺の機能をいろいろ取り込みつつやっていますね。

──ツールとして重宝されるのも納得です。

瀧久氏:
これからはゲームのコンテンツ自体がもっとリッチになっていくとおもうんですよね。そうなると、さらにビルドに時間がかかってしまう。開発現場として悩みの種である、この時間を削りたいと思う方が増えたのも、利用者さんが増えた1つの要因なんじゃないかと思っています。

コンテンツ含め1度リッチになったものが、リッチじゃなくなっていくことは多分ないと思っています。ずっとリッチにあり続けるにあたって、ビルドの問題は付随し続けると思います。そうしたことにお困りの方に提案したいですね。ちなみにサイバーコネクトツーの松山社長にもインタビューで「もうインクレディビルドなしでは開発できない環境になってしまいました」と言っていただけました。非常に嬉しいです。


これはゲーム開発に限らない話だと思いますが、納期直前で直さなきゃいけないものが分かるケースがありますよね。その時に、この作業で1時間待たなければいけないと言われると絶望的な気分になってしまう。これが1時間待たずに2分で終わるんだったら嬉しいよね、と。そういう方を中心にIncredibuidが口コミで広がっているようで、非常にありがたいです。ここまで事業拡大できたのはお使いいただける皆様のご評価のおかげです。

──ありがとうございました。

[執筆・聞き手: Tamio Kimura]
[編集・聞き手: Seiji Narita]


エンタメ大好き系ゲーマー。COOPゲームが大好き、クライム系だったらなおよし。