
109,248 文字

人間はコンピューターグラフィックスの中で断然最も難しい部分です。なぜなら何百万年もの進化によって、私たちの脳には顔のパターンを検出し、感情や意図を推測するための専用システムが備わっているからです。洞窟人が見知らぬ人を見たとき、その人が友好的なのか、それとも殺そうとしているのかを判断しなければならなかったからです。
そして、世界中の人々は顔に対して非常に詳細な期待を持っていて、私たちは不完全さ、特にコンピューターグラフィックスの限界から生じる不完全さに気づくことができます。人間を捉えるのはその一部です。彼らは本当に高度な専用ハードウェアを構築し、何十台ものカメラで人間を捕捉球の中に配置して、さまざまな動きをする際の高解像度、高フレームレートのビデオを撮影します。
そして、人間の顔を捉えるのは複雑です。なぜなら私たちの顔の微妙な詳細と、すべての筋肉や腱、脂肪がどのように協力して異なる表情を与えるかということがあるからです。それは人の顔の形だけでなく、彼らが経験するかもしれないすべての動きの範囲についてもあります。それがデータの問題です。
コンピューターグラフィックスにはほかにも多くの問題があります。例えば、髪をレンダリングするための技術があります。これは本当に難しいです。なぜなら、私たちは物理法則を知っています。すべての髪を単純にレンダリングするのは簡単でしょうが、それは単に10億倍も遅すぎるでしょう。
だから、すべての光と髪の一本一本の相互作用を計算することなく、レンダリングとピクセルに対する髪の正味の効果を捉える近似が必要なのです。それが一部です。顔のさまざまな部分に詳細な特徴があります。肌の下の散乱もあります。私たちは人間を不透明だと考えていますが、実際には私たちの肌は光が通過します。
完全に不透明ではありません。そして、光が肌を通過する方法は、私たちの外見に大きな影響を与えます。だからこそ、マネキンを塗っても人間のようにリアルに見せることはできません。それは単なる固体表面です。私たちは決して種類の詳細を持つことはないでしょう。
それを考えると、私の心は吹き飛びました。肌の油分が非常に特定の微妙で複雑な反射を生み出し、そして一部の光が吸収されて肌を通過し、それが人間の目が認識できるテクスチャを作り出し、私たちが人間だと考えるものを作り出すということを考えて。
微妙な表情を作る際のすべての筋肉を考慮しながら、目のわずかな細めや微妙な笑顔の形成など、人間の顔の繊細さを捉える必要があります。本物の笑顔と偽の笑顔の違いのような、人間の顔の繊細さです。深い悲しみを実際に明らかにする笑顔の形成の始まりを示す方法など、人間の顔を見るとき、私はそれを読むことができます。
それを見ることができます。リアルタイムでそのようなものをレンダリングできるツールが必要で、それは信じられないほど難しいです。その通りです。顔を正しく表現するには、コンピューターグラフィックスのさまざまなシステムと側面が文字通り何十もの相互作用が必要です。そしてそのうちの一つでも間違っていると、あなたの目は完全にそれに引き寄せられ、不気味の谷の悪い方向に行ってしまいます。
以下はティム・スウィーニーとの会話です。彼は伝説的なビデオゲームプログラマー、創設者、そしてEpic GamesのCEOで、アンリアルエンジンやフォートナイトなど、多くの素晴らしいゲームとテクノロジーを作り出し、ビデオゲーム業界とビデオゲームをプレイし作成する体験を革命的に変えました。これはレックス・フリードマン・ポッドキャストです。
サポートするには、説明の中にあるスポンサーをチェックしてください。さて、親愛なる友人たち、ティム・スウィーニーです。コンピューターとそしてプログラミングとの最初の出会いはいつでしたか?
私には16歳年上の兄、スティーブ・スウィーニーがいました。私が小さい頃、彼はカリフォルニアのテクノロジー企業で働くために出て行きました。彼は最初のIBM PCの一つを手に入れていました。そして、ある夏、たぶん私が11歳のとき、彼に会うためにカリフォルニアを訪れました。家族から離れて彼と過ごす初めての旅行でした。彼はこの真新しいIBMコンピューターを持っていて、私は数日の間にプログラミングを基本的に学びました。当時のコンピューターの能力に本当に驚きました。
それは彼らが達成できることは信じられないものでした。そしてその時から私はすっかり夢中になり、プログラマーになることを強く望んでいました。最初に書いたBASICのプログラムを覚えていますか?ビデオゲームのようなものですか?それともfor文などの数値的なものですか?何か覚えていますか?
そうですね、面白いことに、最初に学んだプログラミングのすべてを完璧に鮮明に覚えています。人の名前を覚えるのは苦手ですが、コードは本当に頭に残ります。すべてのステップとすべての課題には学んだ教訓がありました。そのうちのいくつかは、単に学習のハードルを乗り越えることでしたが、他のことは実際にプログラミング言語の欠点でした。
そして、実際にはより良い方法があるという認識でした。プログラマーが初めてプログラミングを学ぶとき、彼らが直面していることの多くは、新しい芸術を学ぶという課題ではなく、プログラミング言語設計の失敗によって生じる摩擦です。
だから、私はプログラミング言語を構築することも含めて、より多くのことをするにつれて、常にそれらの初期の教訓に立ち返ってきました。そうですね、プログラミングの旅において、摩擦と痛みが学習のガイドです。もしプログラミングの旅を描写するなら、それは痛みによって特徴づけられるでしょう。そしてその痛みから逃げるべきではありません。
痛みはプログラミング言語を理解するための指導的なものです。でも当時、どんな種類のものを書いていたか覚えていますか?初期のプログラムは?
初期の頃は、あらゆる種類の小さなものを書きました。いくつかのゲームを書きました。Apple 2で書いた最初のゲームは、テキストモードでのプログラミングしか知らなかったため、コンピューターが画面を横切ってアスタリスクを投げるというものでした。それらは左から右に流れ、画面の右側に括弧があり、野球のミットのように見え、アスタリスクをキャッチすることになっていました。それが私の最初のゲームでした。作成して調整するのに2時間ほどかかりました。
そこから始まりました。でも多くのものを作りました。ある時期にはデータベースを作りました。プログラミング言語とPascalのような言語の完全なコンパイラを作りました。それらをどこで買えばいいのかわからなかったので、自分で作りました。当時の楽しいことの一つは掲示板でした。
消費者の手にインターネットがある前に、モデムを使用して地元の電話番号にダイヤルし、そこでコンピューターを運営している人に接続していました。すべての町や都市には、異なる人々が運営するこれらの掲示板が何百もあり、それぞれに個性やテーマがありました。
そこで私は掲示板プログラムの構築に多くの時間を費やし、データベース管理やユーザーインターフェース、複数のユーザーを同時に扱うことなどを学びました。だから、実際に外の世界にプログラムを配信する前に、子供の頃、約10歳から20歳までの間に、自分だけで約1万から1万5千時間のコーディングを費やしました。1万から1万5千時間。
後の人生で成功するために子供の頃にプログラミングに費やした時間の価値は何でしたか?若い人々が初期の人生の時間をどのように配分するかについてのアドバイスという形でお聞きします。
そうですね、それは単なる時間だけではありません。実際には自分が持っている知識、欠けている知識を理解するために学ぼうと努力し、知識基盤を向上させる実験やプロジェクトに継続的に取り組むことです。私はこれを大きな構造や計画でやっていませんでした。むしろ、単にプロジェクトからプロジェクトへと移り、楽しくて素晴らしいと思うことをやっていただけでした。そして各プロジェクトで、新しいことを学びました。データの保存と管理の方法、高度なデータ構造の扱い方、深くネストされたデータと制御フローを持つ複雑なプログラムの書き方などを学びました。
それらのそれぞれが後に不可欠となる教訓を提供しました。1991年に最初のゲームをリリースし、その10年間で商業的なリリースがゼロから最初世代のアンリアルエンジンまで進みました。しかし、これは主に前の10年間の間に楽しい趣味のプロジェクトをやって構築した知識を使っていただけでした。
そのすべての作業をやっていなければ、後に来たものを構築することはできなかったでしょう。すべての実験とすべての探索が何らかの形で貢献し、後で意味をなすようになりました。すべてのものが何らかの形で統合されています。あなたが構築するものの中に。人生がどのように機能するかは面白いですね。
ピースがやがて一緒になるのです。そうですね。空手キッドの瞬間がたくさんありました。この時間中にずっと高校で数学を学び、大学では機械工学を勉強していました。だからすべての種類の数学、ベクトル微積分、ベクトル数学、行列、そして関連するすべての分野、物理学、応力とひずみ、そして複雑な物理システムを扱う方法などを学びました。
そして、エンジニアがその知識をどのように実際に活用するのか本当に確信が持てませんでした。実際に仕事に行くとき、それを忘れてしまうのか、それとも紙に方程式を書き出すのか。初期の工学部の学生として何をするのかは実際には明確ではありませんでした。しかし最初世代のアンリアルエンジンを書き始め、3D数学を扱っていたとき、「待てよ、これを知っている」と思いました。
これを学びました。だから、突然空手キッドのように、フェンスを塗ったり、車をワックスがけしたりして、突然すべてのピースを一緒にして、蓄積したたくさんのプログラミング言語と数学の知識に基づいた3Dエンジンを作りました。その知識が特定の方法で使用されることを予想していなかったことがよくありました。
また、何度も難しいことを学び、自分自身に証明することが役立つと思います。難しいことを学べるということを。そして、3Dエンジンを書かなければならないとき、それが前に行われていない方法で、「私はここにいた。この経験をしたことがある」と思います。何をすべきかわからないけれど、それを解決し、学びます。必要なすべてのコンポーネントを学びます。だから、新しいものを恐れないだけです。
その通りです。そして、これらの分野間の関連性を絶えず探し、それらの応用を探し続けています。アンリアルエンジンを出荷してからずっと後に、工学の教科書を振り返ると、「ああ、これを使った、これを使った、これを使った」という感じでした。そして固有値のセクションに到達すると、「これが何なのか全くわからない」と思いました。
しかし、固有ベクトルと固有値がGoogleの検索エンジン技術が機能し、他と区別される重要なブレークスルーであることがわかりました。なぜなら、ウェブ上に存在するすべてのリンク、異なるサイトからのリンクをすべて投げ込み、それらを巨大な行列に入れて計算すると、支配的な値を見つけることができ、それらのベクトルが異なるもののための最高の検索結果を記述していたからです。
だから、常に知識を拾い上げて、それらを一緒にする方法を探すのが重要です。そして、プログラマーになりたいなら、たくさんのコードを書き、継続的に新しいことを学び、向上させる必要があります。そして、アーティストになりたいなら、あらゆるスタイルとあらゆる種類のアートワークを継続的に描き、常に自分自身をプッシュしてより多くのことを学ぶ必要があります。
なぜなら、長い目で見て何をすることになるのか正確にはわからないからです。しかし、より多くの知識とスキルを持っていれば、それらを組み合わせて成功する可能性が高くなります。そして、プログラマーであれアーティストであれ、たとえその時点で意味をなさなくても、線形代数を学ぶべきです。
工学の学位を取得し、工学の分野で働かないことは非常に価値がありました。コンピュータープログラマーであることは非常に価値がありました。私はメリーランド大学に行きましたが、いくつかの分野ではパーティースクールとして知られていますが、彼らは工学者を徹底的に働かせます。本当に一生懸命働きました。
そして、どんな工学の分野を学んでも、大量の数学を学び、問題解決の厳密さを学びます。Wikipediaの記事から見つかるだけでなく、複雑な問題を解決するための練習をすべて経験し、答えを導き出すためのソリューションのシリーズを構築します。それは価値があり、プログラマーとして必要な知識を具現化しています。
人々はしばしば大学に行き、「ここでの目標は良い成績を取ることで、卒業証書を得て、雇用主に自分が価値があることを証明することだ」と考えます。いいえ、それは大学の表面的な簿記にすぎません。これらすべての本当の目的は学ぶことであり、正式に学ぶにせよ、自分で学ぶにせよ、キャリアにおいて本当に価値があるのは学ぶことです。
そして、特に起業家になるつもりなら、本当に大事なのは卒業証書ではなく、本当に物事を知っていることです。そして、資格証明書の周りに社会をますます再構築するためのプレッシャーがますます増していますが、素晴らしい製品を構築し、素晴らしいことをすることに焦点を当てている企業は、素晴らしい仕事をする人々に引き寄せられます。
そうですね。若者の素晴らしいことの一つは、より多くの自由があることです。学ぶための時間がもっとあります。人々が高校に行くとき、「ここから出て大人になり、自由になるのが待ちきれない」と考えることがありますが、それはあまり自由ではありません。仕事に就き、家族を始めると、すべて素晴らしいことですが、ますます忙しくなり、一般的な意味で学ぶ時間がますます少なくなります。
何でも好きなことを学ぶのです。それが人生のすばらしい時期です。十代の頃、20代前半、20代の頃。ランダムなことを学ぶことができます。そうですね。
これはアメリカで変わりつつあるものだと思います。子供たちの生活の周りに成績や宿題、構造に対するそれほど多くの焦点があります。私が育った頃、私の母は私と隣人に朝食を与え、隣人とその母親は彼らに朝食を与え、「暗くなるまでに戻ってきてね」と言っていました。
そして、私たちは外に出て遊び、あらゆる種類のことをしました。森を探検したり、ゴーカートを作ったり、古い電子機器の部品を回収して、遊びで作っていた偽の宇宙船の制御パネルのようなものを作りました。
そして、基本的に小さな子供の頃から大学に行くまで、巨大な自由時間を持っていました。一部の人々はそれを使い、無駄にし、テレビを見ました。一部の人々は社交をし、一部の人々は本当に真剣なプロジェクトに取り組みました。常にすべての時間で素晴らしいことをしている人々がたくさんいました。
私はプログラミングをし、物を作ることを学んでいました。ゲームをリリースする前に、近所の人々に私が取り組んでいたものを遊びに来て、それらをチェックしてもらうことがありました。時々彼らは感心し、時々そうではありませんでした。彼らは自分のプロジェクトを持っていて、しばしば余暇の仕事を持っていました。皆が起業家精神を持っていました。皆、副業を持っていました。
時には人々の芝生を刈り取りに行ったり、葉っぱを集めたりして、お金を稼ぎました。そこでの自由と有機的な学習はアメリカの経験に本当に重要なものであり、社会がますます保護的で庇護的になり、これらの経験を得ることがますます難しくなるにつれて、消えつつあるのではないかと心配しています。
ビデオゲームの面ではいつ最初にビデオゲームに恋したのですか?
私はゲームとは面白い関係を持っています。なぜなら私の本当の願望は常に素晴らしいものをプログラミングすることだったからです。私は世界の他のどんなことよりもプログラミングから多くの喜びを得ています。だから、ゲームとの最初の本当に形成的な経験は、アタリ2600用のアドベンチャーというゲームをプレイすることでした。画面上で点を動かし、剣のような物を拾って、ドラゴンと戦い、城に侵入し、パズルを解くようなものでした。非常に非常に単純な象徴的なもので、リアルなグラフィックスというよりもです。
そして私が本当に没頭したもう一つのゲームはZorkでした。これはテキストアドベンチャーゲームでした。それはあなたがどこにいるか、何を見ているかを教えてくれ、「北に行く」や「剣を拾う」や「ドアを開ける」などのコマンドを入力して、そのように世界を探索します。
だからゲームにはグラフィックスがなかったけれど、あなたの心の中ではそこで見ているものの精巧な絵を持っていました。それは本当に他のものよりも想像力を刺激しました。そしてこれらのゲームをプレイすることで、そこで見たすべてをプログラミングすることを学びたいと思うようになりました。
そしてそれが私のプログラミングの多くを駆動しました。画面の周りでプレイヤーを動かす方法を学びました。そして、設計ツールを構築する方法を学びました。だから城を作り、それらを保存し、そしてゲームでプレイすることができました。そしてゲームを構築するために使用するツールとゲーム自体の間に分離があることに気づきました。
そしてより強力なツールを持っていればいるほど、自分自身や他の人の中でより多くの創造性を解き放つことができます。そして、ゲームをサポートするすべてのプログラミング技術を学びました。テキストを解析する方法、「剣を拾う」や「北に行く」などをどのように実際のコンピューター上でのコマンドのシリーズにするかなどです。それは本当に本当に刺激的でした。
フォートナイトが出るまで、私は主にビデオゲームをプレイしていたのは、彼らが何をしているのかを学ぶためで、自分で行くことができるようにするためでした。例えば、Wolfensteinが出て、そしてDoomが出たとき、私は座って、ピクセルごとにそれを見ていました。マウスをわずかに動かし、何が起こっているのかを正確に見て、「それは素晴らしい。そこでどの技術が使われているのか」を理解しようとしました。それは壮大な規模でのパズル解きでした。それはとても楽しかったです。
それでは90年代初頭に戻りましょう。1991年にEpic Gamesを立ち上げました。最初の大きなビデオゲームZZTの製作はどんな感じでしたか?技術的な課題や心理的な課題は何でしたか?
それは面白いプロジェクトでした。なぜなら私はビデオゲームを作るつもりで始めたわけではなかったからです。私はちょうどApple 2からIBM PCに移行したところでした。カリフォルニアを訪れた後、兄が私の家族にApple 2を買ってくれました。だからそれで数年間プログラミングをし、多くのテクニックを学びましたが、そのサイクルが終わる頃にはまだApple 2のユーザーはあまりいませんでした。
そして自分のIBM PCを手に入れただけでした。プログラミングを学び、テキストエディターが必要だと気づきました。だからテキストエディターを書き始めました。テキストエディターはテキストファイルを編集するためのプログラムです。カーソルを動かすためのロジックやテキストを入力したり、バックスペースで消したり、削除したりするなどの一般的な操作を行うためのロジックがあります。
ある晩、それを完成させていて、「まあ、テキストエディターができたけど、これはかなり退屈だ」と思ったので、カーソルをスマイリーフェイスの文字にし、このドキュメントに配置できるさまざまな文字が異なるゲームプレイのアクションを実行するようにしました。
いくつかは壁になり、いくつかはあなたを殺し、いくつかは画面の周りを飛ぶことができる動く物体でした。だから私が作ったこのテキストエディターは小さなゲームエディターに進化しました。だから、ゲームのレベルを構築していました。エディターと約20〜30の異なるオブジェクトのプリミティブなセットを構築するために多くの時間を費やしました。これは本当にクールで魅力的なゲームを作るのに十分ですが、プレイヤーが見ているものを見失うほど多くはありません。
最初は異なるゲームレベルを構築するだけでした。アイデアはあなたが一連のボードにいて、それらが北に行くことで現在のボードの終わりがあなたを新しいボードに連れて行くというものでした。もしそれが開いていれば、あるいはそれがブロックされていて行けない場合もありました。私はそのような全体のゲーム世界を構築しました。
これがZZTとなったゲームでした。それを構築してプレイするのが楽しかったのですが、それが本当に機能するかどうかわかりませんでした。だから実験をしました。隣人たちを招待し始めました。大人も子供もさまざまな年齢の人々を招き、座らせて「私が作ったゲームです。解明してみてください」と言いました。
自分がやるべきことを彼らに伝えないように強制する必要がありました。なぜなら私は本当に彼らが自分自身ですべてを発見できるかどうかを学びたかったからです。今日、これをユーザー体験テストと呼んでいます。ユーザー体験研究の周りには研究の全分野があります。
しかし当時は、子供たちをゲームをプレイするために招待するだけでした。彼らが何に詰まったか、何を楽しんだか、どこで退屈を感じたかについてメモを取りました。そして良いと感じるまで繰り返しゲームを磨き上げました。そしてそれを出して、まあ、これはインターネット前だったので、掲示板がありました。
それを多くの地元の掲示板にアップロードしました。そこからそれは広がり始めました。なぜなら掲示板ユーザーのために信頼を築く方法は新しいファイルをアップロードし、「これを最初に持ってきたのは私だ」と主張することだったからです。だから、ソフトウェアが自然に広がる傾向がありました。
私はシェアウェアモデルを使うことにしました。一つのゲームだけを作ったのではなく、3つのゲームの三部作を作りました。最初のゲームを無料でリリースしました。そして「これが気に入ったなら、2つの続編を買ってください」と言いました。私の両親の郵便の宿所を含め、「30ドル送ってくれれば、このゲームの続編を手に入れることができます」と言いました。
そして数日以内に小切手が届き始めました。1日に3〜4件の注文を受け、1日に約100ドルを稼いでいました。「うわー、私は金持ちだ」と思いました。20歳の若者にとっては、それはかなり大きなことでした。あなたが作ったものから収入を得て、おそらくこの大きな成功を感じる、それはどんな感じでしたか?
そうですね、私はいつもお金をクールなことを達成するのを助けるツールとして見てきました。やりたいことをするのに十分に持っているということが重要なことです。それは常に非常に実用的でした。しかし、国中、そして1ヶ月後には世界中の人々がゲームをプレイしているという知識、それは心を吹き飛ばすようなものでした。
地元の掲示板にゲームを出した小さな子供である私が国際的なビジネスを行い、世界中のプレイヤーにディスクを発送しているということが、ただ魔法のようでした。そして、それはソフトウェアにとって新しいことでした。
それは機械的なデバイスでは起こりませんでした。1つを製造し、誰かに販売し、それを持っていて、それで終わりでした。しかし、ソフトウェアは広がることができました。それを見るのは本当に素晴らしく、そのようなビジネスの可能性の上限がないことを実感させてくれました。当時、マイクロソフトを大きな巨人企業として見ていました。
しかし、「ヘイ、もしEpicが十分に良いゲームを作れば、オペレーティングシステムで彼らが達成したことを達成できるかもしれない」と思いました。可能性は無限でした。そして私たちが現在住んでいる時代だと思います。物理的な製品を製造する産業家である必要はありません。
デジタルに何かを構築する人は誰でも、それが十分に良ければ、世界中に届け、次のマイクロソフトやメタやアップルやグーグルやEpic Gamesを構築することができます。
それは本当にクールな起源の物語です。テキストエディターを作り始めました。このプロジェクトを見て、それで遊び、ツールを構築しています。それは本当にインスパイアリングな瞬間です。なぜなら、多くの人がプロジェクトを始め、潜在的なピボット、潜在的な軌道を見ることができるようにするのは本当に素晴らしいことだからです。「ああ、この方向に行こう」と座って退屈させることは良いことです。
それは交差点です。あなたは交差点に来ました。コンパイラーを構築し、独自のプログラミング言語を設計し、コンパイラー、データベース、あなたが言及したすべてのものを構築しました。そしてテキストエディターを構築し始め、ここでこの交差点に来ました。「これを楽しくしよう」とそこから最も伝説的なゲーム会社の一つが作られました。
それは本当にクールです。開発者にとって、作るつもりではなかったものを作る可能性に開かれて、それに従うだけということはインスピレーションを与えます。そうですね、それは本当にクールです。そこには多くの学びがすぐに現れました。ZZTで私がした素敵なことは、単にゲームをリリースしただけではなく、エディターも一緒にリリースしたことです。
プレイヤーがプレイできるZZTボードを作るためのツールを構築しましたが、それをすべてのプレイヤー自身にも与えました。30年後の今でも、ゲーム業界のイベントに行くと「ZZTで育ちました」と言う人に会います。私のゲームで育った大人です。それは誰でもクリエイターになることを可能にしたからです。
この小さなボードエディターがあり、ちょっとしたスクリプト言語もあったので、少しのプログラミングも学ぶことができました。それは印象的であり、本当にEpicの形成原則を設定しました。会社のミッションは素晴らしいエンターテイメントを作るだけでなく、素晴らしいツールも作り、それらのツールを誰とでも共有して、彼ら自身の驚くべきものを構築できるようにするというものです。
数年後にアンリアルエンジンに入ったとき、ゲームを構築することと、他の人によって広く使用されるツールを構築することの相互作用はその重要な部分でした。そして、それはEpicが大きく成功した唯一の理由だと思いますし、実際には私たちがこれまで生き残ってきた理由だと思います。クリエイターとゲーマーの両方にサービスを提供することで、ゲーム業界の浮き沈みを乗り越えることができました。
それは会社にとって残酷な場所です。すべての経済的な下降局面を生き残ることができました。時にはエンジンがビジネスを資金調達していて、私たちにゲームがなかった時もあり、時にはゲームがビジネスを資金調達していました。それは本当に私たちの文化の中で原則を設定し、絶えず前面に持ち込まれています。
エディター面では、人々が自分自身の世界を作れるようにするというのは本当に魅力的な哲学です。ゲームがある世界をシミュレートするエンジンがあり、実際のゲームがあり、そしてクリエイターが自分自身のフォートナイトの島などを作る自由もあります。
あなたが出荷するすべてのものに、作成する自由が常にあるのです。それは本当に興味深いです。そうですね。そして時間とともにより完全にすることを目指しています。フォートナイトを構築する過程で、私たちにも役立つ他の多くのツールを構築しました。それはアンリアルエンジンによって動力を与えられたゲームだけではなく、ソーシャルエコシステムでもあります。人々は友達を作り、ボイスチャットをし、パーティーで集まることができます。
私たちはすべてのソーシャル機能をエピックオンラインサービスに開放し、すべての開発者に無料で提供しています。なぜなら、そのユーザーベースの成長から私たち全員が恩恵を受けるからです。そして、私たちの目標は最終的に会社の製品を他のすべての人と共有している同じテクノロジーに基づいて構築し、時間とともにより大きなエコシステムを育てるのを助け、誰もが恩恵を受けるようにすることです。
90年代についてもう少し話しましょう。あなたは掲示板と言いました。それがどのようなものか説明し、インターネットの誕生、それがどのようなものだったかを説明できますか?90年代のインターネットはどのようなものでしたか?
インターネットは面白いものです。それは防衛省の研究プロジェクトであるARPANET(Advanced Research Project Agency Network)として始まりました。それはこの尊敬されている秘密のようなものでした。
大学が接続されるにつれてより開放的になりました。大学は1980年代半ばにインターネットに接続していました。だからもしあなたがコンピューターにアクセスできる有名な機関にいたら、そこに行くことができました。しかし当時の消費者である私たちは、これらのモデムを持っていただけでした。電話線に差し込むものです。
電話番号をダイヤルし、それから電話線を通じて野生の音響効果を送り、デジタル信号を前後に送ります。これらは本当に遅かったです。最初に持っていたモデムは300ボーだったので、1秒間に30文字のデータを意味します。
だから、オンラインに行くと、文がゆっくりと文字ごとに現れるのを見ていました。しかし、それが私たちがオンラインになる方法でした。そして互いに話しました。地元の掲示板にダイヤルアップします。通常は人が運営していて、キッチンか何かに置いてある1台か2台のコンピューターが掲示板を運営しています。彼らは数百人のユーザーの小さなコミュニティを持っています。みんなその一つの電話線に接続しようと競っています。
しばしば話し中で入れませんでした。より人気のある掲示板は到達するのが最も難しかったです。いいですね。あらゆる種類のコミュニティが発展しました。プログラミングについて話し合うプログラミングコミュニティがありました。ニュースやイベントのコミュニティがありました。
私はワシントンDCの郊外に住んでいました。それは大きなことでした。しかし、海賊コミュニティもあり、海賊版のApple 2ゲームを共有していました。非常に異なるコミュニティの精神とマントラがありましたが、すべて本当に素敵でまた非常に小さかったです。
これらのボードはFacebookの規模に成長することはできませんでした。あなたの電話線はそれほど多くの通話を受け取ることができなかったからです。そして、その後1990年代に、これらの大学で育てられたインターネットが一般に開放され始め、誰でも接続できるようになり、突然世界は独自の生命を帯びました。
世界中の観客に到達するのがはるかに容易になりました。そして、インターネットにゲームを出荷し始めました。これは少しクレイジーなことでした。なぜなら物理的なコピーを持つべきだからです。しかしインターネットに投稿することはかなり革新的でした。シェアウェアでさえも革新的でした。
そうですね、ゲームビジネスにとって面白い移行でした。Epicはデジタルに配信されるシェアゲームを作ることから始まりました。しかし、最初の3Dゲーム、ID SoftwareのWolfenstein、そしてDoom、そして私たちのUnrealが成功するにつれて、何百万というユーザーの巨大な観客に到達するには、小売店に行かなければなりませんでした。だから小売業者と協力し、彼らは箱を作り、CD-ROMを箱に入れました。
そして世界はデジタルに戻り始めました。そして、その移行はうまく始まりませんでした。ゲームがデジタルに移行した初期は、すべてビットトレント、すべて海賊行為でした。10万部売れたが、200万人のユーザーがいるゲームについての恐ろしい話がありました。ほとんどの人が海賊版を使用していたからです。
そしてSteamが登場し、デジタル配信を導入しました。正規のゲームのデジタル配信を非常に便利にしたため、ほとんどのプレイヤーは海賊行為からそちらに移行しました。彼らのプラクティスは他の人によって続けられ、初期のデジタル産業が形成されました。
そうですね、それは魅力的です。海賊は革新の道を開きます。Spotifyの話と同じです。基本的に、ビデオゲームのような物から価値を得ている人のほとんどは、そのビデオゲームに対して支払いたいと思っています。ただ簡単にしたいだけです。それがSpotifyの音楽と同じことです。
90年代に話を戻しましょう。今日私たちの話を聞く多くのインディーゲーム開発者がいるでしょう。あなたがただの一人の開発者、あるいは小さなグループだった時の考え方に戻り、後にこの巨大なゲーム会社になったあなたの初期のゲームを作っていた頃の人々に知恵とアドバイスを導き出せますか?
初期の頃、何があったのですか?上がり下がりは何でしたか?強く立ち、忍耐するためには何が必要でしたか?
そうですね、Epicが常に一生懸命やろうとした重要なことの一つは、他の誰もやっていない何か違うものを作ることでした。そして巨大なゲームの巨人とグローバルに競争するのではなく、小さな観客を満足させようとしました。
1990年代、Epicは新しかったですが、エレクトロニック・アーツやアクティビジョン、その他の大手パブリッシャーは10年前からあり、彼らは巨大な企業でした。彼らは巨大な小売流通ネットワークを持っていました。私がゲームを作り、彼らに出版を説得しようとしても、チャンスはなかったでしょうし、たとえ成功したゲームを作ったとしても、私はあまりお金を稼げなかったでしょう。彼らは稼げたかもしれませんが。
そして、当時のEpicの本当にユニークな角度はシェアウェアでした。それは、私たちがゲームを異なる方法で配布すれば、ゲームの最初のエピソードが無料であるという利点によって、これらの大きな競争相手よりもはるかに大きな観客に到達できるというアイデアでした。それは後にフリートゥプレイとなるものの先駆けでした。
その論理は当時も今も同じように真実です。もしそれが無料で誰でも入れるなら、友達から友達へと広がるでしょう。人々は実世界の友達を彼らがプレイしているゲームに連れて来て、そのゲームの周りにコミュニティを構築する機会を持ちます。
だから、そこでのもう一つの教訓は、ゲームに入る際の摩擦を最小限に抑え、入りやすくし、楽しくすることでした。そして、私は非常に幸運でした。ZZTは面白いゲームでした。他のどのゲームともあまり似ていませんでした。それはすべてテキスト文字だったため、グラフィックスははるかに悪かったです。スマイリーフェイスやその他のギリシャ文字などがこのゲームシミュレーションに参加していました。
それらは本物というよりもキャラクターの象徴的な表現でした。そして、これは興味深いグラフィックスを持つ本物のグラフィカルゲームの時代から数十年後でした。そして、その分野で競争しようとさえしていませんでしたが、別の分野で競争することができました。それは、私が三部作として作って出荷した3つのゲームだけが成功し、製品の成功を推進したわけではありませんでした。
それはエディターをリリースし、その周りに全体のコミュニティがあったという事実でした。その傾向が繰り返されているのがわかります。ZZTの前にはビル・バッジのピンボール・コンストラクション・セットがありました。それは1980年代のAppleゲームで、ユーザーが自分のピンボールテーブルを構築できるようにしました。
それ以来、マインクラフトなど、世界で最も成功したゲームのいくつかがその道をたどっています。自分のものを構築できます。ロブロックス、フォートナイトクリエイティブ、そしてフォートナイト用のアンリアルエディター。他の人々が物を構築するためのプラットフォームとなるゲームは本当のチャンスでした。
私はインディー開発者にとって今重要なのは、すべての主要なジャンルで大規模な競争があるということだと思います。特定のことで世界最高でない限り、既存の高度な競争ジャンルでゲームをリリースして勝つ可能性は非常に低いです。
成功のより良いチャンスは、これまでにないものをリリースすること、本当にユニークであること、そして大きいか中くらいか小さいかに関わらず観客に到達し、非常に人気になることです。そこからお金を稼ぎ、再投資し、最終的な夢に向かって拡大することができます。アイデアから大規模な商業的成功への一発勝負は、時間をかけてより良いものを継続的に構築し、卓越した位置に到達するまでの複数ステップのプロセスよりも可能性がはるかに低いです。そして常に他の人がやっていないことをしようとしてください。
その通りです。すべての市場を見ると、現在のリーダーがそのスペースに遅れて来た市場がいくつかあります。通常、前のリーダーがひどく失敗したからです。しかし、ほとんどの場合、市場で成功し、勝っている会社は、そこの最初または二番目の参入者です。彼らは継続的に成功を積み重ねてきました。
素晴らしいアドバイス、魅力的です。しかし人間のレベルでは、寂しかったですか?恐ろしかったですか?開発者として座っているあなた?
それは寂しさとは反対でした。なぜなら、実際にこれをリリースするきっかけとなったのは、近所の子供たちがゲームをプレイして楽しんでいるのを見て、「これは本当に良い」と思ったからです。彼らが楽しんで笑い、画面を指し、集まって、もっとプレイしたいと思っているのを見て。それは素晴らしいです。
人間の要素は常に遍在していました。なぜなら私は注文を受けるだけでなく、人々は実際に手紙を書いたからです。1990年代には手紙を書いていました。人々はゲームをどれだけ楽しんでいるか、彼らの子供たちがどのようにゲームをプレイしているかなどを言っていました。だから非常に繋がりを感じました。
多くのビジネスは恐ろしい決断をしなければなりません。なぜなら、成功するかどうかわからないことに、あなたが持っているすべてのお金を使うかもしれないからです。このようなビジネスを始めるのは非常に幸運でした。なぜなら、それはあまり資本を必要としなかったからです。資本は、私が芝刈りで買った数千ドルのコンピューターでした。
それはあまりリスクではありませんでした。それが成功しなかったら、機械工学の仕事を得る方法を見つけて、それを追求したでしょう。しかし、一度それが成功し、注文が入り始め、人々がゲームを楽しんでいると手紙を書き始めると、私は全力を尽くして会社を作り、そこで成功しようとすることを知っていました。それが私の大きな目標になるはずでした。
確かに皆さんはご存知でしょうが、Epic Gamesは1991年に設立され、ゲーム業界を何度も変革しました。その一つがアンリアルエンジンです。そのオリジンストーリーについて話しましょう。WolfensteinとDoomが出た時、すべてが変わったと言いましたね。その瞬間に連れて行ってください。
それは非常に興味深い時期でした。私の最初の数本のゲームの後、Epicは開発者を採用していました。通常、大学生や高校生で、自分で作業をしていて、本当のスキルを持っていましたが、彼らの作品のためのアウトレットがありませんでした。
Epicは世界中から最高のアーティストとプログラマーを組み合わせていました。Jazz Jackrabbitは、カリフォルニアの高校生のクリフ・ブレジンスキーでした。彼はオランダのデモコーダーであるアリアン・ブルージーと一緒に本当にクールなアドベンチャーゲームを作りました。アリアンは驚くべきグラフィックを作り、2Dゲームエンジンを構築していました。私は彼らとカリフォルニアのミュージシャン、ロバート・アレンを電話やモデムで結びつけました。
私たちはこれらの小さな2Dゲームを構築し、かなりの成功を収めていました。まだ学生でありながら、Epic が一種の制作し、人々と人々を調整し、シェアウェアを通じて出版することによって、毎月何千ドルも稼いでいた人がたくさんいました。
それは全てうまくいっていました。会社には小さなオフィスがあり、フロッピーディスクをコピーして郵送していました。しかし、Wolfensteinが出た時、ゲームの未来は3Dになることを認識しました。それまでに3Dの多くの実験があり、素晴らしくなかったものがありました。
2Dマが3Dレンダリングの迷路があり、リアルタイムではなく、常に北、南東、または西を見ていました。そして小さなワイヤーフレームが動き回るベクターグラフィックスがありました。しかし、Wolfensteinは十分に速い最初のゲームでした。30フレーム/秒で実行され、本当に没入感がありました。
そこにいるように感じました。このウォルフェンシュタイン城でナチスと戦っているように。それは本当に驚くべき没入型の体験でした。3Dグラフィックスはその頃はかなりプリミティブでしたが、ID Softwareは驚くほど速くDoomに続き、それははるかに有能な3Dエンジンでした。階段があり、まだ2Dと3分の1の世界と呼ばれていましたが、非常にリアルな環境、非常にリアルなテクスチャ、近似的であるが信じられないほどリアルな形の照明があり、そして素晴らしい芸術性と音響効果により、完全に本能的であり、リアルに感じられました。
今日、現代のゲームプレイヤーの観点から、デバイスに20テラフロップのコンピューティングパワーがあると、「それはあまり印象的ではない」と言うかもしれませんが、当時は驚くべきものでした。
私にとって、Wolfensteinは自分の人生の中で最も驚くべき瞬間の一つでした。あなたが言ったように、リアルタイムで3次元の世界を動き回ることができるだけで、私はただ「これはどんな感じだろう?」と思いながら動き回っていました。あなたは別の世界に運ばれたように感じます。そこにいるように感じます。
そうですね。特に部屋の照明を落として、スピーカーの音を上げると、怖くなります。そしてあなたに向かって来る火球があなたを殺すと感じます。それは驚くべき時代でした。なぜなら私たちはそれまでそのような経験をしたことがなかったからです。
それに似たものは何もありませんでした。映画、怖い映画などを見るかもしれませんが、それは単に起こっていることでした。これはあなたでした。これは3D世界のあなたでした。それで、それはEpicをどのように変えましたか?ゲームの未来は3Dになるという認識は?
最初は本当に落ち込みました。Doomの魔術は特に信じられないほど素晴らしく、6か月間ほどプログラミングをやめました。これと競争することはできないだろう、何をすべきかわからない、と思いました。私たちはただ3D、2Dゲームを作り続け、ビジネスが続くことを願っていました。しかし、それはカーマックの魔術の性質でした。
彼は一つの革新的な飛躍だけでなく、コンポーネント部分に分解できない方法で同時に相互作用する約十二のことを行っていました。しかし面白いことが起こりました。マイケル・アブラッシュ、コンピューターグラフィックスの長年の専門家が、3Dグラフィックスとテクスチャマッピングの技術に関する本を書き、その日のプログラミング雑誌の一つに記事を書きました。それを説明し、テクスチャマッピングを行うアセンブリコードを示しました。3Dグラフィックスを画面に描画するものです。それは実際に本当に単純なものでした。私は「ああ、それができる」と思いました。
そして、Epicの私たちの多くは独立して自分自身の3Dグラフィックスコードを書き始め、それを理解しようとしました。ある時点で、私たちはこれに手を出し、異なる部分を行っている多くの人がいることに気づきました。
その時点で、私たちは「3Dグラフィックスと3Dゲーミングが世界を完全に変えるだろう。これに全力を注ぐ必要がある」と決めました。だから私たちは最高の2Dゲーム開発チームから最高の人々を集め、3Dゲームを作るために全員をまとめました。当時、私たちは本当に何をしているのかわかりませんでした。
私たちの誰も3Dゲームを出荷したことがなく、ほとんどの人がまだ学んでいましたが、みんなが最も得意とするものを見るために異なる分野を試していました。アンリアルを作るために集まった多くの人々の組み合わせでした。私は最初にそのための3Dエディターを作ることを申し出ました。エピックピンボールを作ったジェームズ・シュマルツがいました。
エピックピンボールは、クレイジーなゲームではありませんでした。これは2Dのシェアウェアゲームの一つでした。彼は大学在学中にそれを作り、このゲームのロイヤリティから月に約30,000ドルを稼いでいました。なぜなら、みんなが素晴らしいピンボールゲームを欲しがっていたからで、非常に成功していました。彼は多分野にわたる人物でした。
彼はゲームのコード、ゲームのアート、そして基本的にすべてを書きました。そしてコードは30,000行のアセンブリ言語でした。最初は彼が3Dエンジンを書くつもりでした。私はエディターを書くつもりでした。彼は私がエディターに統合できるように彼のコードを送ってくれました。
それは巨大なアセンブリコードの山でした。私は「うーん、これは自分で書こう」と思いました。そこでジェームズは代わりに、当時のツールを使用して3Dモデルと3Dアニメーションの構築を始めました。Jazz Jacketでたくさんの設計作業を行い、レベルを構築したクリフが、レベル設計の基本を学び始めました。
私はこのエディターを書いていて、クリフ・バジンスキーが最初の顧客でした。レベルの構築を始め、ジェームズ・シュマルツは素晴らしい生き物を作り、それを私に送っていました。それらをゲームに実装し、それからアニメーターを連れて来て、それらに命を吹き込みました。そして、アンリアル1の開発のピーク時には、より多くの人々を連れて来ました。
私たちは約20人が働いていました。当時としては巨大なチームであり、Epicの財政をほぼ限界まで伸ばしていました。私たちはかろうじて生き残り、何度もお金がなくなりそうになりましたが、何とか乗り切りました。それは狂ったプロジェクトでした。なぜなら、それは3年半の開発であり、私たちはいつも出荷まであと6か月だと思っていたゲームだったからです。プロジェクトに取り組んでいる大半の人にとって、それは3年半の70時間か80時間の週でした。次にどんな問題を解決する必要があるのかさえわからないほど、現在の問題に没頭していました。
時間がかかりすぎて会社がお金を使い果たすかもしれないと希望を失いそうな瞬間はありましたか?
私たちは常に財政的にストレスを感じていました。だから私はそれについて継続的に心配していました。私はすべての技術的、芸術的な問題を解決できるという完全な自信を持っていました。なぜなら、私たちは部分を知っていて、それは主にコードを入力して問題を解決する問題であり、私たちはそれの一種のバージョンを出荷できることを知っていたからです。
継続的に本当に興味深かったのは、進む中で新しい技術の継続的な発見でした。当時、Quakeが出荷され、少しの動的照明がありました。アンリアルは他の誰よりも動的照明をはるかに強く押し進めました。それから色付きの動的ライトを実現しました。静的または影なしで動くライトで、いくつかのシャドウキャスト機能を持っていました。
体積フォグを実現する方法を見つけました。そうすることで、光でいっぱいの霧のある領域を持つことができ、霧の中で光の輝きを得て、レベルの外観に影響を与えることができました。多くの驚くべき技術が一緒になって、当時の最先端を数段階上回るゲームを構築しました。
そうですね、それは本当に狂っていましたが、ほとんどの会社はそれを生き残ることができなかったでしょう。関係者の純粋な才能がそれを可能にしました。Epicはしばしば、ほとんどの会社が失敗するようなことをやってきました。そして私たちは成功します。それは素晴らしい管理や計画や資金調達のためではなく、関与する人々の純粋な才能と意志の力のためです。
学際的な側面についてはどうですか?あなたが言ったように、アーティスト、エンジニアまたはプログラマー、デザイナー、全員が一緒に働いています。20人の人々がいましたが、その力学はどのようなものでしたか?狂気の時間を働いて、そのようなチームがオーケストラのように一緒に働き、実際にゲームを提供するようにするにはどうすればよいですか?
それはゲームに存在する本当にユニークなことの一つです。通常の大きな技術企業は単にエンジニアリングとビジネス主導ですが、ゲームは本当にすべての創造的な分野にわたる最高の人々が一緒に働くことを必要とします。
Epicは素晴らしい才能を持つ人々を採用することで有機的に成長していました。私たちは常に限られた予算を持っていました。人々の給料を上げて、より多く支払って彼らを雇うことはできませんでした。キャリアの始まりにいる素晴らしい人々を見つけて、彼らを一緒に置く必要がありました。だから、皆がこれに非常に新しく、会社がどのように機能するかについての前提を持っていませんでした。
だから、これらの人々を全員一緒に置くと、それは本当に人々がチームとして一緒に働く方法を学ぶにつれての才能の絶え間ない相互作用でした。誰も管理経験を持っていませんでした。ほとんどの人はEpicで働く前にゲームを出荷したことがありませんでした。
私たちは進むにつれて理解していました。しかし、それは絶え間ない反復サイクルでした。毎日、ゲームの新しいバージョンをいくつか作っていました。新しいコンパイルを読み、新機能を導入したり、バグを修正したり、アーティストに渡したり、アーティストがレベルを改善したり、物を構築し続けたりしました。そして彼らがレベルで何をしているかを見て、「ああ、あなたが必要としているものがわかります」と言いました。
私たちは常にツールを改善していました。そしてただその反復プロセスと、それが製品を改善する速度が、ゲームの成功に不可欠な要素です。反復サイクルが遅ければ遅いほど、毎週ビルドを作成し、毎週一回反復を行うと、プロジェクトの終わりまでには、毎日新しいものを作るゲーム会社よりもはるかに悪くなります。
それが一緒に起こった魔法でした。そしてそれを機能させたのは、本当に情熱と皆の個々の献身以外の何物でもありませんでした。あなたはまだプログラミングをしていると聞きましたが、当時どれくらいプログラミングをしていましたか?おそらく狂気の時間だったと思いますが、あなたのセットアップについて話すのはほとんど楽しいでしょう。90年代のあなたがアンリアルを構築しているときの一日の生活はどのようなものでしたか?
私たちは皆、生産性を最大化する作業スケジュール、作業スケジュールに向かって引力を感じていました。それは通常、遅く起きることを意味していました。通常、正午頃に仕事に着きました。通常、午前2時か3時まで働いていました。
私の人生では他に何も進行していませんでした。だから、それは本当に仕事と睡眠と時折の食事だけでした。私はいつも一晩に8時間か9時間の睡眠が必要でした。十分な睡眠がなければ、ゾンビになり、最高の状態からはほど遠くなりました。
だから、私はいつも睡眠を取る必要がありましたが、他に何も必要ありませんでした。プログラミング自体がとてもエネルギーを与え、スリリングでした。だから、それはプロジェクト中の3年半でした。ほとんどプログラミングに費やしました。おそらく週に60時間のプログラミング、週に5時間の他の人々との調整と反復、そして彼らと座って画面で何が起こっているかを見て、彼らが必要としているものを理解する、5時間のビジネス関連のこと。
当時は労働の良い分業がありました。Epicには大きな経営陣はなかったですが、基本的に私が会社の技術的、開発的な部分を運営し、マーク・レインがビジネス部分を運営し、取引を行い、クレジットカードを最大限に活用し、世界中を回って会社に資金を提供する収入源を持ち込みました。
私たちはどのプログラミング言語について話していますか?アセンブリの山があると言いましたが、アンリアルエンジンを書くプログラミング言語を選択する決断はどうでしたか?
私はPascalを学び、それをお気に入りの言語として育ちました。最大限のパフォーマンスを得て、最新のオペレーティングシステム機能を取得するために、2番目のゲーム、「ジョエル・オブ・ザ・ジャングル」というNintendoスタイルのプラットフォーマーのためにCに移る必要がありました。
だから、アンリアルエンジンを始めたとき、それはCプログラミング言語を使用した16ビットのWindowsでした。最初の年の過程で、32ビットに移行しました。これらのDOSエクステンダーを使用し、それからWindows NTを使用し、C++言語に移行しました。それによってコードが非常に単純化されたからです。本当に複雑なコードの山から、その移行を行うことでずっと単純なものになりました。アンリアルエンジン開発の全体の約2年半はすべてC++、32ビットで、当時は完全に最先端でした。32ビット保護モードは、コンピューターがはるかに信頼性が低く、常にクラッシュしていた時代から来ると、一種の魔法のようなものでした。
そうですね。そして、それはかなり良い賭けであることが判明しました。なぜなら、C++はすべての言語の中で、今日まで生き残っているパフォーマンス指向の主要な言語となったからです。
そうです。それは規模ですべての問題を解決するからです。しばしば手動の痛みを通じてですが、常にそれらを解決します。他の多くの言語は多くの理論的な側面でより良く、一部の使用ケースではより良いですが、すべてを行うことはできず、それは本当に非常に制限的です。
それで、馬鹿げた質問ですが、モニターは1つ、2つありましたか?キーボードにはうるさかったですか?椅子にはうるさかったですか?何について話していますか?絵を描いてみましょう。
そこで私は大きな移行を経験しました。最初はかなり怠惰でした。新品の半額で購入できることが多かったので、中古のコンピューターをたくさん買いました。それらは十分に良かったです。だから、当時15インチのモニターを持つ古い46台で開発していました。それはすべて貧弱なワークステーションのセットアップでしたが、非常に経済的でした。
だから、アンリアルを始めたとき、大量のコードを書く必要があり、絶対的な最大の生産性でそれを書く必要があることに気づきました。だから、最大の出力を届けるために私の生活全体を再編成する必要がありました。その時点で、良い機器を手に入れるためにお金を使うことは良い投資だと気づきました。ここでは数百万ドルや、GPUファームを構築する場合は数十億ドルの話ではありません。
ただ基本的なハードウェアを購入する話です。だから、当時購入できる最大のCRTを買いました。これはCRTの時代でした。それは24インチでした。約100ポンドの重さがありました。インストールした後、1週間背中が痛みました。しかし、1996年に1920×1200を得ました。
1996年に。それはかなりクールでした。当時の主要な消費者向けコンピューターであった90メガヘルツのペンティアムにアップグレードしていました。90メガヘルツのフロントでプログラミングしていました。そして、アンリアルエンジンのソフトウェアレンダラーをそれに最適化しました。ペンティアムは消費者向けコンピューティングの最初の超スケーラーアーキテクチャでした。
一度に最大2つの命令を実行でき、アセンブリコードを非常に慎重に書けば、絶対的な最大スループットを得ることができました。テクスチャマッピングコードを11の命令からなる6つのCPUサイクルまで削減していました。それは画面上のすべてのピクセルに必要であり、それを届けるのにちょうど十分なパフォーマンスでした。
しかし、Dellがこれらの新しいワークステーションを出し、Intelが最初の順序外プロセッサであるペンティアムプロを発売したばかりでした。だから、基本的にお金で買える絶対的な最大構成を購入しました。それは7,000ドルかかりました。1996年に1ギガバイトのメモリを持っていました。200メガヘルツのCPUでした。それはコンパイルの速度を3倍にし、私をはるかに生産的にしました。
それがアンリアルエンジン開発全体を通じて私が使用していたもので、それで出荷しました。ちなみに、90年代の人々はこの仕事に驚いたでしょう。素晴らしいです。
あなたは書く際にハードウェアについて考慮していましたか?私の理解では、アンリアルエンジンのレンダリングはすべてソフトウェアで、ハードウェアを使用しないと思いますが、ハードウェアに最適化しようとしていましたか?
そうですね、当時、私たちは最初の本物のGPUが登場する前にアンリアルエンジン開発のほとんどを行いました。3DFX Voodoo One、ソフトウェアレンダリングと比較して実際に本格的なパフォーマンスを提供した最初のGPU、本当にゲーム用の最初のGPUは開発の終わりに登場し、私たちはそれをすぐにサポートしましたが、それはずっとターゲットではありませんでした。
そして開発は、ただエンジンの二つの部分の構築に焦点を当てていました。シミュレーションと物理学などを管理するすべてのゲームプレイシステムがあります。それはすべて非常に高レベルのC++コードで書かれており、保守性はパフォーマンスと同じくらい目標です。なぜなら、時間の経過とともに大量のシステムを構築する必要があったからです。
しかし、本当にボトルネックだったものがありました。それはグラフィックスでした。単一のピクセルをレンダリングするコストは本当に高かったので、画面上のピクセルのレンダリングを最適化するために可能なすべてを行う必要がありました。
だから、私たちはCPUサイクルについて話していました。CPUがギガヘルツまたは何でも実行されていると言うとき、それは毎秒10億の命令です。画面上にピクセルを得るために実行する必要がある命令は何個ですか?だから、それを最適化する絶え間ない挑戦がありました。
また、すべてのグラフィックスプログラマー間で競争がありました。彼らはしばしば電子メールを送り、コストを下げるために彼らが発見した新しい技術について互いに自慢していました。アブラッシュの元の記事では、ピクセルをレンダリングするのに約12のCPUサイクルがかかりました。
そして他のみんなは、それを6サイクル、時には4サイクルまで下げる方法を理解していました。それには、キャッシングとメモリ階層などの多くの異なるトレードオフが含まれていました。それは、人間が実際にCPUが下で何をしているのかを正確に理解し、それを正確にターゲットにしたコードを書くことができる魔法のような時代でした。それは今では大部分が失われています。
今、ソフトウェアの最適化について話すとき、それは主にヒューリスティックスについてであり、統計的にこのメモリアクセスはキャッシュにヒットする可能性が高く、CPUが今や非常に高度な順序外実行を持っているため、このアルゴリズムはそのアルゴリズムよりも速いということです。命令ごとに何が起こっているかを細かく管理することはできず、コードの集約的なパフォーマンスだけを管理できます。だから、プログラマーが機械に対して絶対的な制御を持ち、特別なケースで奇跡を起こすことができるこの失われた芸術があります。一部の人はそれを懐かしみ、一部の人はそうではありません。
GPUやASICに関しては、その芸術にまだ価値があるように思えます。基本的に、ハードウェアの微妙な点と、それを本当に最適化する方法を理解しようとすることです。それが機械学習アプリケーションであれ、超リアルなリアルタイムグラフィックスアプリケーションであれです。それは本当ですか?
そうです、それは絶対にそうです。最適化の問題は単に移動しました。そして、Nanite、仮想化されたマイクロポリゴンジオメトリのようなシステム、Epicの優れたエンジニアであるブライアン・キャリスが構築したシステムは、そのような複数年にわたる最適化の取り組みの一つでした。それは彼がハードウェアの最高レベルから最低レベルまですべてを理解することを必要とし、この画期的な技術がGPU上で実際に最大限にパフォーマンスを発揮する方法を理解することを必要としました。
そしてNaniteは、時間を飛び越えて、今日のアンリアルエンジン5に導く私たちをシステムです。それはジオメトリを行うシステムです。そうです。世界を幾何学的にレンダリングします。これにはたくさんの層があります。おそらくそれぞれについて話すでしょう。まず、周りの世界のジオメトリを実際に作成し、それをリアルタイムで、本当に効率的に行う必要があります。それを最適化する多くの異なる方法があります。それについて少し話していただけますか?
そうですね、今日の高度なアートツールでは、何十億ものポリゴンを持つシーンを作成するのは本当に簡単です。難しい部分は、それを効率的にレンダリングする方法です。なぜなら、1フレームで何十億ものポリゴンをレンダリングすることはできないからです。基本的に、フルの詳細なジオメトリをレンダリングした場合と区別がつかない画像をレンダリングしたいのです(ただし、それはばかげたコストがかかります)。
だから、課題は、レンダリングのすべてのコンポーネント、ジオメトリ、照明などをリアルタイムのテクニックに単純化する方法です。それらは効率的で、周りにあるものの現実的なビューをキャプチャします。そして、オブジェクトがあなたに近いとき、それは遠くにあるときよりもはるかに多くのポリゴンでレンダリングしたいです。
しかし、数学の涼しい原則の一つはナイキストサンプリング定理です。これは、信号を再構築しようとしている場合、キャプチャする必要のあるデータの量に制限があると言っています。一定の解像度でテクスチャをレンダリングしたい場合、画面上のテクスチャのピクセルの2倍以上は決して必要ありません。それはナイキスト限界と呼ばれています。
そして、コンピューターグラフィックスの課題の一つは、極端に接近した距離と極端に遠い距離でオブジェクトをレンダリングする必要があることを考えると、常に正しい量のジオメトリを生成できるようにすることです。現実と区別がつかないのに十分なものを持ちたいですが、必要以上のものは持ちたくありません。
ジオメトリについては、ピクセルあたり2つの三角形をレンダリングすると、ピクセルあたり数千の三角形からは区別がつかない画像が得られるはずです。ピクセルあたり2つ未満の三角形をレンダリングすると、損失の目に見える人工物が見え始めます。
GPUにはたくさんの異なるパイプラインに素晴らしいハードウェアがありますが、それはすべて非常に固定機能です。ピクセルシェーダーハードウェア、ジオメトリ処理ハードウェア、そして三角形ラスタライズハードウェアがあります。GPUの制限の一つは、三角形ラスタライザーがかなり大きな三角形のために構築されていることです。
10ピクセルを持つ三角形を構築したりレンダリングしたりする場合、それはかなり効率的です。しかし、1ピクセルを持つ三角形を構築したりレンダリングしたりする場合、それは非常に非効率的です。ブライアンが行った画期的なことの一つは、GPUのラスタライズハードウェアを避け、直接ピクセルに行き、一部のレイトレーシングとピクセルシェーダーで行われるジオメトリ交差計算の結果として、そのピクセルで何をすべきかを計算する全体のパイプラインを設計したことでした。
三角形パイプラインを使用する代わりに、単にピクセルパイプラインを使用し、GPUの三角形ラスタライザーの制限のためにより良い結果を得ています。それは魅力的です。なぜなら、あなたの説明によると、近くのものの詳細のために小さな三角形が必要だからです。
これは人々には明白かもしれませんが、それは単に近くのものだけではありません。あなたがどこを見ているかによって異なります。人間の目、人間の焦点、人間の注意メカニズムが、表示したい詳細の量を定義します。なぜなら、人間が注意を向ける可能性のあるものには、超高解像度を持たせたいからです。そして、距離を含むその他のすべては、少ないジオメトリ、少ないテクスチャ、少ない情報を持つことができます。そうですね。
そうです。しかし、そのような課題がたくさんあります。完璧に見える1つのフレームをレンダリングするよりも、動きの中で完璧に見えるフレームのシリーズをレンダリングする方が、はるかに難しいことがわかります。この種のことをやろうとした初期のアルゴリズムの問題の多くは、ポッピングでした。
一定数の三角形をしばらく実行し、その後異なる数の三角形に切り替えると、目に見える移行が見られ、画面が揺れたように見えました。これは、ゲームから気を散らす邪魔な人工物です。Naniteの魔法的なトレードオフの一つは、すべての目に見える移行を避ける方法でした。それらが統計的に存在しても、それを見ている人にとっては実際には知覚できないポイントまでそれらを下げることができました。
Naniteのようなものを見ると、詳細についての素敵なブログ投稿があり、素敵な説明がありますが、詳細の下には信じられないほどのエンジニアリングがあることがわかります。それは本当にクールです。この、美しく詳細な風景のような実際の体験の下に、リアルタイムで現実の超リアルなシミュレーションをもたらす信じられないほどのエンジニアリングがあるのは本当にクールです。光が変わるすべてのものなど、それはWolfensteinで持っていた感覚に戻ります。しかしもっと、あなたは完全にその世界に自分を見失い、この現実の世界が存在することを忘れるでしょう。結局、現実の世界とは何でしょうか?だから、素晴らしいエンジニアリングと素晴らしいストーリーテリングのその結合は、ただ感覚に関しても超クールです。知るのは素晴らしいです。
その背後にこれらのチームがいることを知るのは素晴らしいです。そして、その周りにたくさんの詳細をリリースしていることもクールです。少なくとも私のような人にとっては、それはインスピレーションを与えるものです。
アンリアルエンジンはこの魅力的な創造物です。それは大きく、大胆で、狂った賭けでした。おそらく、1995年にあなたが行った大きな賭けは、ほとんどの努力がゲーム自体ではなく、ゲームエンジンの作成に向けられるというものでした。
そうですね。アンリアルエンジンは、コードとツールの大きな束、巨大なソフトウェアパッケージであり、あらゆる種類の3Dグラフィックスアプリケーションを構築するために必要なすべての機能を提供します。ゲーム開発者はそれを使ってゲームを作り、それが主な用途ですが、ハリウッド映画やテレビ製作においても使用され、制作セット用のリアルタイムの3D風景を作成したり、プレビジュアライゼーションを行ったりします。
車メーカーが製造前に車を可視化するために使用されます。建築家が建物を作る前にプレビューするために使用され、あらゆる種類の産業デザイナーによって使用されます。それは、高度にリアルな3Dグラフィックスを作成するための機能だけでなく、物体間の物理学と相互作用、そして実世界で見られるようなことを起こすための機能もすべて提供します。
ピクサーの様式化された映画からセルシェーディング、フォトリアリズムまで、幅広いスタイルをサポートしています。そして、それはそれらの3次元の世界を人口にする人間を含む、リアルタイムの3Dグラフィックスを必要とするあらゆるものに使用できます。おそらく、ウルトラリアルな人間を作成するプロセスに関連するたくさんの詳細について話すでしょう。なぜなら、私たち人間は他の人間がどのように見え、どのように感情を伝え、表現し、話すかについて気にかけるからです。
しかし、そうです。静的な3Dオブジェクト、動的な3Dオブジェクト、そして超動的な人間を含む動的な前線があります。そのすべてについて、あなたはこの世界、私たちが知り愛するこの美しい世界をシミュレートするエンジンを作成する必要があります。そうですね。しかし、あなたは早期からそれを始めていました。
あなたはDoomを見て、この世界を作成し、アンリアルというビデオゲームだけでなく、将来のビデオゲームにも力を与えるエンジンを作成しようとしていました。それをどのように進めましたか?何を考えていましたか?そして、会社としてエンジンを構築するというのは狂った賭けだということに留まるべきでしょう。
そうですね、哲学はZZTから始まり、前進し続けました。私たちは単にプレイヤーがプレイするためのゲームを構築するだけでなく、そのゲームや他のあらゆるゲームを構築するために使用できるツールも構築しています。そしてそのツールを使用したすべてのアーティストとデザイナーに対応します。
そして、その哲学はアンリアル開発の非常に初期の部分から始まりました。私はクリフ・バジンスキーのようなレベルデザイナーやジェームズ・シュマルツのようなアーティストのためのツールを構築していました。そして、私たちがゲームのマーケティングを始め、それが6ヶ月先だと考えていたとき、常にスクリーンショットなどをリリースしていました。
他の会社が私たちに電話し始め、彼らも3Dゲームを構築したいと言いました。しかし、そのための専門知識を持っておらず、私たちの3Dエンジンをライセンスしたいと言いました。これはEpicの歴史の中で最もクールなピボットの一つでした。マイクロロスがマーク・レインまたは副社長で長年のビジネスマンに電話をかけ、彼らが私たちのエンジンをライセンスしたいと言いました。
マーク・レインは「ああ、あなたは何をライセンスしたいのですか?どのエンジン?どのエンジン?」と言い、彼らは彼らがライセンスしたいものを説明しました。「ああ、そのエンジン。はい、それは非常に高価ですが…」これはその3年半を通じてEpicを続けさせた重要なことの一つでした。私たちはエンジンを他の開発者にライセンスし始めていました。
マイクロプロスは2つのライセンスを取り、私たちはそこから50万ドルを得ました。そしてGTインタラクティブという会社が私たちのエンジンをライセンスして別のゲームを構築しました。そして私たちはそれに対して支払われました。だから、私たちは他の開発者によって構築されている他のゲームからアンリアルエンジンの開発に資金を提供する収益源を持っていました。
彼らは会社の生命線だったので、私たちは最初からエンジンビジネスを非常に真剣に受け止めました。私たちはメーリングリストを設定し、パートナーが質問を私たちに尋ねることができるようにし、私たちのゲームで働いているすべての開発者とアーティストが参加し、顧客を助けていました。
それが私たちの資金源だったので、全員がそれを非常に真剣に受け止めました。そのことがゲームを構築し、ゲーマーをサポートすると同時に、テクノロジーとゲーム開発者をサポートするというEpicの二重の精神を設定しました。それは前進し続け、時間とともに成長しています。
プログラミングに戻りましょう。克服しなければならなかった興味深い技術的な課題は何ですか?動的照明を言及しましたが、この3次元の世界を作成し、実際にそれを行う方法のパズルを解決しようとしています。カーマックとあなたがこの種のことをしている時、誰もすべきではない時に。これは完全に開かれた西部の荒野です。そこで、解決しようとしなければならなかった興味深い技術的な課題はありますか?
多くあります。いくつかは画面上に見えるものであり、いくつかは舞台裏にありますが、まだ多くの革新が必要です。すべてのグラフィカルな技術は本当に興味深い課題でした。初期のアンリアルエンジンは、構成的な立体幾何学とリアルタイムエディターを使用して環境を構築するという点で、Quakeエンジンよりもはるかに先に進んでいました。それは本当に興味深い技術的な課題でした。
世界にオブジェクトを追加するだけであれば建物を建てるのは非常に面倒です。ドアを作りたいなら、ドアフレームの十数個の異なる部分を追加し、様々な壁を追加して正しい形に合わせる必要があります。壁から始めてドアを引き算することができれば、もっと簡単でしょう。
そこで私たちは世界にジオメトリを追加し、ジオメトリを引き算する方法を持っていて、エンジンがそれに関するすべての計算を実行していました。これは長い間可能だと予想していたことですが、最終的にそれに取り組むことになったとき、それを動作させるために実装する必要があるコードの特殊なケースをすべて理解するためには30時間のコーディングセッションがかかりました。
しかし、30時間の間に構成的な立体幾何学を立ち上げて実行しました。次に私たちが一緒にいた時にジェームズ・シュマルツに渡しました。「あなたはここでズルをしていると思います。」彼は巨大なトーラスを作成し、それと絡み合う別の巨大なトーラスを追加し、それからシリンダーを差し引き、わずか3つの操作で本当に高度な複合オブジェクトを作成しました。
彼は「わー、信じられない」と言いました。「そう、私たちはそれを理解しました」と言い、それを初めて見るのはクールでした。おそらくそれは誰かがリアルタイムで構成的な立体幾何学を行った最初の時だったでしょう。しかし、それはまた本当に有用なアーティストのツールであり、すべてのアーティストがそれを高く評価し、すぐに利用し始めました。
30時間のセッションについて実際に話していただけますか?私が計算幾何学について知っているすべてから言うと、これは簡単なことではありません。不確実性、オープンな質問、アルゴリズムの効率性、そしてさらには通常のプログラミングのデバッグなど、トリッキーなことに苦労することなど、その時点では本当に何が起きているのかを視覚化するツールもあまりなく、おそらく何か悪いエディターを使っていたでしょう。ここには多くの摩擦があるので、30時間のセッションはおそらくかなり厳しいものでしょう。あなたの脳は状態によって異なる方法で機能します。新鮮な問題に取り組む必要がある一部のことがあります。
論理的なピースをたくさん組み合わせたところで、今はすべてを一緒に機能させるためにたくさんのコードを書く必要があるだけです。そして、あなたは多くの異なるアルゴリズム間でたくさんのデータをつなぐ必要があります。しかし、私たちの脳は次に入力するコードを考えることによって直接アクセスできるよりもはるかに多くの馬力を持っていると思います。
そして、非常に長い時間働いた後、あなたは睡眠不足の状態になり、そのローレベルの知識に直接アクセスすることができます。それは素晴らしいです。そうですね。睡眠不足の症状は十分に研究されています。その一つは短期記憶喪失です。だから、あなたはちょうど入力したコードの簡単なリコールなしで作業しています。しかし、あなたの脳は他の問題について考える自由を得ました。
そして、非常に長い期間にわたってこの直感を築き上げていました。この主題の基礎は二分空間分割木、コンピューターサイエンスグラフィックス研究者のブルース・ネイラーによって考案されたデータ構造です。カーマックがそれを取り上げ、Doomでその技術を本当に素晴らしい効果で使用していました。私もそれを取り上げ、アンリアルエンジンはすべてのグラフィックスとレンダリングにこの技術を使用していましたが、それはどこにでも加算的なジオメトリであり、多くの重なり合うポリゴンがあり、かなり非効率でした。
そこで、BSP木を持っていれば、構成的な立体幾何学を行う本当に効率的な方法があるという考えを持っていました。そして、それを行うには、異なる形状の部分がどのように一緒に収まるかの方法を分解する必要がありました。14の異なるケースに分解しました。そのほとんどは非常に単純で、それらをクランクアウトしました。
終わりに近づくにつれて、より複雑なことがありました。例えば、共面ポリゴンをどう扱うか?それらは同じ平面にあり、同じ方向または反対の方向を指しています。どのような場合に保持し、どのような場合に排除するのか、そして本当に効率的なジオメトリ出力を作成するためにどうするのかなど、主に演繹法ですが、試行錯誤もありました。時には可能性を試して、何が機能するかを見る必要があります。
結局、それをクランクアウトし、それは機能しました。そして次の日、かなり疲れて来て、「ああ、これは実際に機能しました。それは単なる夢ではありませんでした」と思いました。また、エッジケースも考慮していますね。ジオメトリの問題は、すべての種類の奇妙なポリゴンがあるだろうということです。だから、あなたはエッジケースを想像し、このアルゴリズムで非効率を作らないようにしながらも、エッジケースを考慮してエッジケースを許可する方法を見ようとしています。
そうですね、99%正しいソフトウェアを書くのは簡単です。本当に難しいのは残りの1%であり、そこに悪魔が細部に潜んでいます。照明についてはどうですか?他に興味深いことはありますか?
面白い答えは、私たちは物理法則を知っているということです。だから、コンピューターグラフィックスですべてを行うのは実際には本当に簡単ですが、物理法則の直接的な解決策は非常に遅いです。それで、私たちは完全な解決策ではなく近似値を見つけています。なぜなら、力ずくの答えよりも100万倍速いものが必要だからです。
シーンの物理学は、多数の光子を取り、それらを跳ね返らせることだと言うべきでしょう。それが光の仕組みです。それは非常に非効率的になるでしょう。なぜなら、多くの跳ね返りと多くの光子があるからです。そうですね。フォトントレーシングは、シーン内のすべての光から画面上のピクセルの力ずくの計算を行う主題です。
それは機能し、正しく、それは物理法則の実装であり、私たちが行うことよりも何百万倍も何十億倍も遅いだけです。しかしカーマックは、オブジェクトが周りを動き回るリアルタイムの照明を含む、本当にクールな照明アルゴリズムを理解していました。そして、私はそれをあまり遠くまで持っていませんでした。
だから、アンリアルエンジンでは、CPUには画面上のすべてのピクセルの光を影響を与えるすべての光源から計算するのに十分なコンピューティングパワーがないことに気づきました。6サイクルのテクスチャマッパーがあり、照明のためにさらに30サイクルを負担することはできませんでした。
だから、答えはいくつかの近似値である必要がありました。カーマックがQuakeエンジンで取り上げた一つはライトマッピングでした。すべてのピクセルですべての照明を計算する代わりに、シーン内のすべての壁にかける大きなテクスチャを作り、それが壁紙のようになるとしたらどうでしょうか?そしてもし私たちが1フィートごとに、そのオブジェクト上の1フィートのグリッドだけの照明値を計算すると言ったらどうでしょうか?
そして、その過程でただ線形補間するとしたらどうでしょうか?あなたは実際にはかなりうまく機能する照明ソリューションを得て、それは十分に速く機能します。だから、アンリアルエンジンの照明技術の多くはライトマッピングに基づいていました。私たちはカラー照明を導入しました。色付きの光源を持つことができました。
次に、「ああ、これを行い、ライトマップ上で行っているので、実際にはかなり高価な計算、数百サイクルを行うことができます。なぜなら、すべてのピクセルではなく、世界空間の1フィートごとに計算しているだけだからです。」そこで、私たちは一連の複雑な照明効果を導入しました。例えば、松明のちらつき、水面からの反射のコースティック効果などです。
そして、脈動するライトや点滅するライトなどすべてを含み、それらを一緒に合成するシステムを作成しました。任意の数の光源があれば、それらすべてがそれを行うことができます。素晴らしいですね。それから、シャドウイングアルゴリズムを実装しました。光源から表面上の点に向かって光線を投射し、他のジオメトリと交差するかどうかを確認します。
交差しなければ、光はオブジェクトに当たります。交差する場合、光は最初に何か他のものに当たり、オブジェクト上のそのピクセルは暗くなるべきです。だから、これのリアルタイムバージョンを作りました。それは約0.5フレーム/秒で実行されました。だから、0.5フレーム/秒で走り回り、光の投射物を撃ち、動的照明を見て、「いつか、コンピューターはこれに十分な速さになるでしょうが、今日ではありません」と思いました。
そこで、すべての照明を事前に計算する非リアルタイムバージョンを作りました。そして、「待てよ、オブジェクトのシャドウイングを事前に計算すれば、光が動いていない限り、照明を動的に適用することができる」と気づきました。影付きの松明のちらつきができます。当時のコンピューターで実際に実用的だった動的および静的照明のすべてのケースを理解し、それらをアーティストに公開しました。
これは素晴らしいことでした。私はこれらの小さな機能を入力し、アーティストに公開していました。毎日、彼らは利用可能なより多くの照明オプションのあるドロップダウンを見つけ、それらを使い始め、私が決して可能だと思わなかったことを行っていました。これが常に最もクールなことでした。
エンジンを構築するプログラマーとして、あなたは構築している機能の意味を知っていると思うかもしれませんが、アーティストは非常に賢いので、彼らが一緒に機能を組み合わせて使用し始めると、あなたが予想したよりもはるかに多くのことを行う能力を構築したことに気づくでしょう。それがアーティストの天才です。彼らは制約を与えられ、その制約の中で、あなたが制約を考えると決して想像できなかったものを作り出します。それはエンジニアリングと芸術との間の美しい結合です。
その通りです。そしてそれは永遠です。ルネサンスの画家たちは絵の具で何をしましたか?そして初期のゲームアーティストは初期のエンジンで何をしましたか?皆が自分のメディアの能力を理解し、革命を起こしているのを見ています。これは私の頭を吹き飛ばしています。これは本当に楽しいです。霧についてはどうですか?霧を言及しましたね。それさえも知りません。霧をどのように行うのですか?
あなたはアンリアルと言いました。最初のバージョンに霧がありました。そうですね。それは面白いことでした。このグラフィックスハードウェア会社がフィンランドで設立したばかりで、彼らは彼らのGPUが何をしているかのスクリーンショットをリリースし、体積フォグで満たされたシーンを示しました。
いくつかの光源を持つ霧の部屋がありました。そして現実の世界でそれが起こるとき、あなたが見るのは光の周りの輝きであり、光が周りの霧を明るくします。しかし、霧は一部の照明を吸収するため、霧の明るさは時間とともに減少します。だから、光から離れるほど、より多くの減衰があります。
そして、そのような空間で重なり合うたくさんの色付きの光があるなら、その効果は絶対に魔法的です。霧の光の下にいるようなもので、上に街灯があります。それは超現実的で、ただ美しく見えるものです。だから、「ああ、彼らはリアルタイムの体積フォグをする方法を見つけました。自分で理解しなければなりません」と思いました。それで、それはもう一つの30時間のコーディングセッションでした。
いいですね。しかし、中核で私は「ここで起こっていることは、この照明機能があり、空間内の特定の点での光は光源からの距離の二乗の逆数で減衰している」ということに気づきました。二乗の逆数はアイザック・ニュートンから来ており、照明に適用されます。霧が光と相互作用する方法は、目の位置から世界の表面上の点までの視界を計算することでした。
それは霧を通過しており、その時点で霧を照らす光の量の関数として、より多くの光を蓄積しています。そうですね、私はそれを機械工学で知らない間に研究していました。それは線積分です。ある関数の線上の積分を持っています。これはまさにそれが使われる目的です。
連続した空間と時間にわたる関数の値を蓄積するためのものです。たくさんの数学を行い、「わあ、積分」と気づきました。そして、すべての積分の参考書を見ました。ありがたいことに、人々はそれらをすべて解決しています。1 / r^2の変換された積分がrのアークタンジェントによって解決されることに気づきました。
だから、目の位置と最終的に見えている表面の点の位置に基づいていくつかのパラメーターを計算すれば、そこからどれだけの霧を蓄積できるかを正確に計算できます。もちろん、それはピクセルごとにはできません。なぜなら、それはCPU時間の数百サイクルを要するからです。だから、私たちがする必要があったのは、ライトマップに相当するものですが、世界の1平方メートルごとに霧を計算するものでボリューメトリック照明を計算することでした。
だから、それに十分なパフォーマンスがあり、ボリューメトリック照明を構築し、アーティストに与えました。彼らはボリューメトリック霧を使用して魔法のように詳細なレベルをリアルタイムで構築し始めました。そして、数十年後、そのハードウェアで働いていたエンジニアの一人と話し、彼らのボリューメトリック霧について尋ねました。それが私にリアルタイムで自分でそれを理解する方法を見つけるのにインスピレーションを与えたことを彼に伝えました。彼は「ああいいえ、私たちはズルをしました。3Dスタジオマックスからそれをレンダリングしただけです」と言いました。素晴らしいですね。それは本当に素晴らしいです。
それは多くのレベルで非常にインスピレーションを与えます。あなたはそれが可能かもしれないと見て、たとえそれが一種の煙と鏡であっても、それから実際にそれを実現しました。これらの種類の話を聞くのは非常にインスピレーションを与えます。非常に不確実性があり、それを解決する方法を見つけ、多くの制約があるにもかかわらず、リアルタイムでそれを生き返らせ、アンリアルが作り出したこの世界を作り出す方法です。
ジョン・カーマックを何度か言及したので、もしその時のゲーム業界の仲間のパイオニアとして、ジョンについて何を尊敬していますか?
ジョンは彼のコードから最高の結果を得ることに対する強烈な献身と、過去のコードに対する執着を全く持たないという点で特異です。彼が行った伝説的なこと、リアルタイムコンピューターグラフィックスでの絶対的なブレークスルーという結果は、彼の最初の試みではありませんでした。何度も何度も挑戦した後、より良いアプローチを見つけ、古いものを捨て、再び構築し、絶対的に最高のソリューションを見つけるまで彼のコードを継続的に書き直した後の7回目か8回目でした。
私はそれがすべてのプログラマーが取り入れるべき教訓だと思います。何かが本当に本当に重要であるとき、その性能が製品や品質や能力に絶対的に重要であるとき、完璧を達成するまで反復し、最初や2番目のソリューションで十分だとは考えないでください。
そして、それは結果であり、あなたと彼の両方がゲームの未来、ゲームの世界の未来を定義しています。それを見るのは本当に美しいです。それは非常に不確実性の下、非常に多くの制約の下で、あなたは方法を見つけ出します。そして、それは今日まで続いています。なぜなら、ハードウェアは信じられないほど改善されていますが、周りの世界の超リアルで非常に動的なリアルタイムレンダリングを作成するためには、それはまだ本当に本当に難しいからです。
あなたが言及したようにすべての種類の最適化があります。アンリアルエンジン1の旅について話してもらえますか?1から5.5または今は6かもしれませんが、30年間仮想世界を作ってきましたね。ハードウェアの指数関数的な改善に合わせて30年間ゲームエンジンを進化させるのはどのようなものですか?変わったことは何ですか?変わっていない普遍的な真実は何ですか?
それは驚くべき経験でした。30年前は誰も、実際にその時間枠で見てきたハードウェアのパフォーマンス向上を予想していませんでした。複数のコアと高いクロックレートとより多くの並列性の間で、それは約10万倍高いCPUパフォーマンスです。もし航空でそれを持っていたら、アルファ・ケンタウリのような近隣の星への旅行をしているでしょう。
そうですね、まさにそうです。そしてグラフィックスではそれ以上でした。ペンティアム90 CPUで実行していた頃と比べて、文字通り1000万倍の正味使用可能なGPUパフォーマンスがあります。すべて30年の間で。そして、それは本当に世代を超えてエンジン開発の一部の領域が絶対的にその技術に追いついていることを感謝させてくれました。
アンリアルエンジンで働くレンダリングチームは、そこでの本当の奇跡の働き手です。アンリアルのほぼすべての世代で、レンダリングコードのほとんどを置き換えてきました。そして、異なる時点でのさまざまなリーダーやさまざまな名人たちは、最新世代のハードウェア向けに絶対的に再考し、最適化されたシステムを構築してきました。
アンリアルエンジン1はソフトウェアレンダリング用に構築されましたが、Voodoo oneがサイクルの後半に登場し、サポートを追加しましたが、完全に能力を発揮し、活用されたわけではありませんでした。アンリアルエンジン2は、エンジンに最新のGPUハードウェアアクセラレーション機能をもたらし、車両などの新機能をいくつか構築することでした。
これはGPUが本当にムーアの法則のみんなの期待を突破する前の初期GPU時代でした。しかし、その突破はDirectX9、プログラマブルシェーダーの能力とともに起こりました。いったんGPUで実行されるコードを書く制御を持ち、画面上のすべてのピクセルに色を付けることができ、そのGPUコードは文字通りペンティアム90で数年前に書いた同等のコードより100倍速かったです。
そうですね、そのDirectX 9世代は本当に神の恵みでした。そしてEpicの長年の名人、アンドリュー・シュナイダーがアンリアルエンジン3のレンダリングの核心をリアルタイムピクセルシェーディング、リアルタイム照明、いくつかの異なる技術を使用した動的シャドウを行う能力の周りに書きました。そして当時表示し始めていた初期のデュアルコアCPUのビットをサポートするためにレンダリングをマルチスレッド化しました。
それは大規模なグラフィカルなアップグレードでした。アンリアルエンジン4はいくつかの改善を行い、ただ機能を追加し続け、アーティストに照明とジオメトリのためのより多くのオプションを与え、よりリアルさを作成しました。しかし、私たちの最大の単一レベルのリープはおそらくアンリアルエンジン5でのNaniteマイクロポリゴンジオメトリソリューションとLumen、グローバルイルミネーション照明ソリューションでした。
これはゲームゲームのようなコンピューターグラフィックスから、アーティストがそれを作りたい場合の完全な観察可能なフォトリアリズムへのギャップを本当に埋めたと思います。そしてそれが進化であり、グラフィック側の進歩は絶対に驚くべきものですし、オーディオ側やその他の領域でも同様です。
しかし、エンジンの一部は1998年に私が書いて出荷したバージョン以来、それほど変わっていません。ファイル管理システムは何度か最適化されましたが、完全に再考されたわけではありません。そしてネットワークシステム、クライアントとサーバーが一緒に話し、ゲームの状態を交渉する方法は、依然として私が書いたものの進化です。
それは今、やや古臭く感じています。フォートナイトで観戦しているときに、何らかの理由でいくつかのパラメーターが更新されないというネットワークのバグがまだ見られます。それはそのネットワークモデルの損失性質のためです。そして、時間とともに積み上がってきた最大の制限は、アンリアルエンジンでのゲームシミュレーションのシングルスレッド性です。
私たちはシングルスレッドシミュレーションを実行しています。16コアCPUを持っていても、ゲームシミュレーションには1コアを使用しています。シングルスレッドプログラミングはマルチスレッドプログラミングよりもはるかに簡単だからです。私たちは自分たち自身やパートナーやコミュニティに、マルチスレッドの複雑さを負担させたくありませんでした。
そして時間とともに、それがますます制限となっています。だから私たちは本当に次世代のテクノロジーについて考え、取り組んでいます。それはアンリアルエンジン6となるでしょう。それが私たちがアンリアルエンジンの歴史を通じて持っていた本当のコアの制限のいくつかに対処し、現代の世界がその時間枠内でコンピューティングの分野で学んだすべてを考慮した、より良い基盤にそれらを置く世代です。
それは恐ろしく挑戦的なエンジニアリング問題ですし、アンリアルエンジンのすべてのバージョンで、その背後にある素晴らしいチームは、コードのほとんどを捨て去る、あるいは少し劇的かもしれませんが、基本的に古いアプローチを捨て去り、あなたがカーマックについて言及したように、再び始め、NaniteやLumenのように、現在のハードウェアに最適化し続ける、しかしそれがどのように行われるかを再考することを厭わないようです。
しかし、シングルスレッドからマルチスレッドへの移行、それは恐ろしいです。そして、それは部分的に、なぜ使用されているプログラミング言語を再考する必要があるのかという理由であり、多くのことを再考する必要があります。それは魅力的です。アンリアルエンジン5についてもう少し話しましょう。
私はたくさんのものを見ました。2024年のGDCでのアンリアルの状態を見ました。ありがとうございます。それを見て興奮して笑いました。もし様々なことについて少し話せるなら、ちょっとだけマニアックになりましょう。人々はこのビデオを見るべきです。彼らは土について話しました。ただ超リアルなもので、これはマーベル1943のためであり、マーベルの宇宙をナチス占領下のフランスに置いています。
冬の中で。だから雪があり、これは歴史の中の非常に強烈な瞬間であり、それは本当に感情を生み出し、あなたをそこに連れて行きます。雪を含めて、多くのものがあります。しかし、土を見るのは、リアルタイムでシーンに多くの詳細を追加する方法を示す本当に良い方法です。この経験に無限の詳細を与えるものです。これは本物です。これは超リアルです。
そして、私はそのトークで、ジオメトリの生成に関わるもの、照明に関わるもの、そのようなものすべてについて説明していると思います。土について話していただけますか?土のウルトラリアルな質感、照明、ジオメトリ、それらすべてを生み出すコンポーネントは何ですか?Naniteと Lumenが美しいオーケストラでどのように一緒になり、1943年のナチス占領下のフランスの土をリアルタイムで描くのかを教えてください。
そうですね、画面上にはたくさんのことが起きていて、この画像の真のヒーローはエピックではなく、この環境を構築するために協力したアーティストとテクニカルアーティストたちです。なぜなら、彼らはシステムが可能だと思っていた範囲をはるかに超えたものを作り上げたからです。これがコンピューターグラフィックスの魔法なんです。これをクールに見せている単一の機能はありません。技術的な機能が十数個あり、それぞれが相互に作用しています。そして、それらが互いに相互作用する方法のために、実際に個々の要素を特定することは難しいんです。
ここで起きている本当に重要なことの一つ、ああ、今それがオフになっているのが見えますね、それはライティングです。このシーンを動かしているルーメン照明システムは、異なるスケールで異なる種類の照明計算を行っています。これはダニエル・ライトの仕事で、10年かけて照明技術を進化させた結果です。
彼の理論は、当時はかなり物議を醸していましたが、十分な照明計算のレベルがあれば、シーンの絶対的な最高レベルから、建物が影を落とすところから、ここで見られる土の上の細部に至るまで、全てのグローバルイルミネーションを機能させることができるというものでした。全てが調和して、境界線が区別できないように。照明を機能させるための基礎的な作業が10年かかっています。特に、氷と土の間で相互作用する非常に詳細な影が見えますが、それはスクリーンスペースライティングです。
実際に影の計算が行われていますが、世界に基づいてではなく、画面上のピクセルに基づいています。それは、ピクセルシェーダーでそれらの計算を実行するのに十分な速さで行う唯一の方法だからです。このオブジェクトを追加したとき、テクスチャを追加したとき、異なる層を追加したとき、計算されなければならない全ての影を見てください。
影付けは本当に素晴らしいものですが、それが機能する理由は直感に反しています。誰かが初めてそれを私に説明したとき、私は「それは本当に賢いけど、うまくいくとは思えない」と思いましたが、実際にはうまくいくんです。なぜなら、入射光の位置と画面上の異なるピクセルのz座標を観察することで、そこにあるジオメトリが他のジオメトリをどのように遮るかを推測できるからです。
それは単なる近似であり、完璧ではありませんが、人間の目には完璧に見え、このようなシーンで見られる微妙な影を与え、それが非常にリアルに見えるようにし、影付けは他のものにも影響を与えます。また、ここでの色についても本当に興味深いことが起きています。
何が原因か分からないのですが、雪の一部から他の雪の部分に色が滲んでいるように見えます。いくつかの表面下散乱が起きているように見えますが、このシーンでそれが使われているかどうかさえ確かではありません。そして、マテリアルレイヤリングシステムがあり、マテリアル、土、雪などのレイヤーを重ねていきます。
それから、ジオメトリから跳ね返る光もあります。これはグローバルイルミネーションシステムの上に別の照明システムです。反射についてはどうですか?それは光の反射とみなされますか?物を照らすために跳ね返る光があります。
でも、実際の文字通りの反射もあります。例えば、土の中の水たまりを見ているときなど。そうですね。エンジンはいくつかの異なる反射テクニックをサポートしています。一つは、シーン内のすべての照明を捉えるテクスチャを計算し、それをテクスチャマップから反射させることです。
異なるピクセルから異なる光が異なる方法で反射するのが見えます。そして、個々の照明が物から反射するのもあります。これらの多くはデザイナーのコントロール下にあります。将来的な課題の一つは、いくつかのボタンを押すだけでこのようなシーンが魔法のように現れるわけではないということです。
これは非常に熟練した人々による多くの作業で、特定のシーンを構築するだけでなく、土の上に氷が重なり、全ての反射が機能するようにマテリアルレイヤーを設定する必要があります。彼らはこれを機能させるためにいくつかの技術的なアート決断をしなければなりませんでした。
初心者がこのような種類のシーンを構築しても、それほど良くはならないでしょう。私たちが直面している課題の一つは、この種の品質レベルの構築をさらに簡単かつシームレスで自動的にすることです。素材をここに配置し、その外観が出るようにシーンを構築するだけでいいようにしたいです。
シーンを作成したら、さまざまなことができます。彼らが「ヘッドライトを消せますか?」と言ったのを覚えています。照明をコントロールできました。これは全て動的であることを言っておきましょう。光の位置を変えたり、ライトをつけたり消したりできます。
それは信じられないことです。これは全てリアルタイムです。ジオメトリ、照明、テクスチャ、全てリアルタイムです。これは素晴らしいテクニカルアート、30年にわたる機能開発の力です。そして、NVIDIAが提供している20テラフロップスのグラフィックスパフォーマンスにも感謝しなければなりません。ありがとう、NVIDIA。
90メガヘルツから20テラフロップスへ。それは大きな変化です。かなりのものです。プレゼンテーションで彼らが話しているもう一つのことは雪についてです。1943年のナチスドイツの冬について話すなら、季節感、冬、寒さといった雰囲気を作り出す必要があります。そして全てを雪で覆う必要があります。
ここで示されているのは、オブジェクトに積もる雪の量をコントロールする能力です。アーティストがそうした能力を持つのは信じられないことです。シーンの中の雪の量を動的にコントロールできるのは。それはクールですね。本当にクールです。マテリアルレイヤリングのためのクールなシステムと、一緒に機能する十数のパーツがあります。
また、霧があり、霧を発する熱いオブジェクトもあります。アーティストがそれをやったんです。それは自動的に生じたわけではありません。それはマテリアルレイヤリングと呼ばれています。アーティストが異なるマテリアルを作成し、シーンに層を重ねることができるのですね。そうです。
マテリアルを互いの上に重ね、エンジンが遷移などを処理する中で、どのマテリアルがどの場所にどれだけ突き出るべきかを見ることができます。そしてそれはシーンの構造とライティングの計算に必要なオクルージョンを作り出すジオメトリの上に乗っています。
私が本当に衝撃を受けたもう一つのものに行きましょう。それは煙です。それを見てください。ああ、ゴミ箱の中に火があり、煙と影、照明と影が煙の上で絡み合っています。これはリアルタイムですか?
はい、すべてリアルタイムです。どうやってやるんですか?煙はどうやって?下には強力なパーティクルシステムがあり、このような技術的基盤を提供していますが、その上には素晴らしいアーティストリーがあります。素晴らしい物理エンジンもそれを動かしています。
どの部分が何をしているのか正確に言うのは難しいです。いくつかの異なるパーティクルシステムがあります。炎用のものと、そこから出てくる煙用の別のものがあります。ここでの煙で本当に興味深いことは、それが光を遮っていることです。
煙を通過するときに光がどのように減衰するかの計算があります。そのため、煙の上の照明が本当に興味深いものになっています。多くの試みがありましたが、これはこの種の煙がもはやビデオゲームのように見えなくなった最初のデモでした。
それはただ、燃えるゴミ箱から黒い煙が立ち上る様子のようでした。そしてそれはアーティストの洗練さです。それは非常に大きな部分を占めています。繰り返しになりますが、ツールとアーティストの相互作用です。それを長い間見ていられます。
現実の世界で火の周りに座って、火と煙を見ているだけで魔法のような何かがあります。人間はそれを何十万年もやってきたのかもしれません。そして同じ… 私はただそれを見つめていて、人々が話すのをやめて、ただ無限に火を見ていられたらと思いました。それが没入感です。
その中にいたいと思います。そのゴミ箱の周りに座って、火と煙を見て、暖かくなりたいです。なぜなら雪のために寒さも感じていたからです。本当にその中に没入します。それはとても美しいです。本当のアートです。本当に素晴らしく作られています。
さて、人間について聞かなければなりません。シーンを作ることについて話しましたが、リアルな人間を作るのは本当に難しいです。それについて話せますか?超リアルな人間をどうやって作るのか?感情を伝え、顔の細かいニュアンスや詳細を示すために、背後に俳優がいます。
これはアンリアルエンジンの一部であるメタヒューマンクリエイターについても触れる良い機会かもしれません。そうですね。人間はコンピューターグラフィックスの中で最も難しい部分です。なぜなら何百万年もの進化によって、顔のパターンを検出し、感情や意図を推測するための専用の脳システムが与えられているからです。洞窟人が見知らぬ人を見たとき、彼らが友好的なのか、それとも殺そうとしているのかを判断しなければならなかったからです。
そのため、私たち人間は顔に対して非常に詳細な期待を持っており、不完全さに気付くことができます。特にコンピューターグラフィックスの限界から生じる不完全さに。それが最も難しい問題となります。メタヒューマンの取り組みは、世界で最も才能あるデジタルヒューマンのビジョナリーであるヴラド・マステロが何世代にもわたって取り組んできた数十年にわたる取り組みの一部です。
しばらくはゲーム業界の個々のクライアントにサービスを提供し、その後スリーラテラルチームの一員としてエピックに加わり、現在はデジタルヒューマンをリアルにするために必要なすべての技術を構築する世界的な取り組みをリードしています。一つの部分は人間をキャプチャすることです。そのために、人間をキャプチャスフィアに入れ、数十台のカメラで高解像度・高フレームレートの映像を撮影する、非常に高度な専用ハードウェアを構築しました。
人間の顔をキャプチャするのは複雑です。なぜなら、顔の微妙な詳細や、筋肉、腱、脂肪がどのように協力して異なる表情を作り出すかがあるからです。そのため、人の顔の形だけでなく、彼らが通過する可能性のある動きの全範囲についても考慮する必要があります。
一人の人間をキャプチャするには、そのような環境で数時間のキャプチャ作業が必要で、その後、その人間の正確で、かつリアルタイムで再現可能なバージョンを環境に取り込むには、何千時間もの処理作業が必要です。行われていることの一つは、実際の俳優や女優をキャプチャして、それをビデオゲームで使用することです。
しかし、もっと興味深いことは、何千人もの人間をキャプチャして、人類全体の顔の範囲を含むデータセットを形成することです。すべての文化、すべての大陸、すべての年齢、すべての顔のバリエーションを回って、代表的な人々をキャプチャします。そうすることで、顔の全範囲を表現し、それらを組み合わせて、システムが以前に見たことのない任意の顔を再作成できるようにします。
この高精度のデータの巨大な量をキャプチャし、それを使用して顔を消費者レベルで再構築します。例えば、iPhone で誰かの顔の写真を撮り、その場でそれを合成するのではなく、人間の顔の既知の詳細をすべて組み合わせて、最も正確な表現をキャプチャします。
それがデータの問題です。他にもコンピューターグラフィックスの問題はたくさんあります。髪をレンダリングするための技術があります。これは本当に難しいです。なぜなら、私たちは物理法則を知っていますが、すべての髪を一本一本レンダリングすれば簡単ですが、単に10億倍遅すぎるからです。
そのため、すべての光とすべての髪の毛の相互作用を計算せずに、レンダリングとピクセルに対する髪の正味の効果をキャプチャする近似が必要です。それが一つの部分です。顔の異なる部分のための詳細な機能があります。表面下散乱があります。私たちは人間を不透明だと考えていますが、実際には私たちの皮膚は光が通過します。
完全に不透明ではなく、光が皮膚を通過する方法は私たちの外観に大きな影響を与えます。これが、マネキンを人間のようにリアルに見せるためにペイントすることができない理由です。それは単なる固体表面です。そして、その種の詳細を持つことは決してないでしょう。
ちょっとそこで考えてみると、それは私の頭を吹き飛ばしました。皮膚の油っぽさが非常に特定の微妙で複雑な反射を作り出し、そして一部の光は吸収されて皮膚を通過し、それがマイクロシャドウとでも言うべき何かを作り出すと言えますか。
それは人間の目が認識できるテクスチャを作り出し、私たちが人間と考えるものを作り出します。だから、皮膚の油っぽさがどのように光と相互作用するか、そしてそれがどのように吸収されるかを計算する必要があります。そして、微妙な表情を作るための筋肉や、目の微妙なしかめっ面、または微妙な笑顔の形成など、関与するすべての筋肉を考慮する必要があります。
人間の顔の愚かで迷惑な微妙さをキャプチャする必要があります。本物の笑顔と偽の笑顔の違いなど。ああ、私は人間の顔が大好きです。一般的に人間が大好きですが、深い悲しみを明らかにする笑顔の始まりを示す方法など。
人間の顔を見るとき、私はそれを読むことができます。それを見ることができます。繰り返しになりますが、これはエンジニアリングとアーティストです。リアルタイムでそのようなものをレンダリングできるツールが必要です。それは信じられないほど難しいことです。でも、すみません。
顔の照明だけでも、このような複雑さがたくさんあります。顔を正しく表現するには、文字通り数十の異なるシステムとコンピューターグラフィックスの側面が相互に作用する必要があります。そしてそれらのうちの一つでも間違っていると、目はそれに完全に引き付けられ、不気味の谷の悪い側面にいることになります。そのため、この分野で必要な完璧さのレベルは、世界のレンダリングや草などの他のものよりもはるかに高くなります。
建築物の影が少し間違っていたとしても、実際には問題ないでしょう。あなたの脳はそれほど気にしません。しかし、人間に何か間違いがあると、それは完全に不協和音になります。メタヒューマンを使ったデジタルヒューマンの作成について、エディター側と、それに命を吹き込む側の両方についてもう少し話せますか?私はたくさんのビデオを見ましたが、個々の開発者がアンリアルエンジンエディターが提供するツールを使って人間に命を吹き込むのはそれほど難しくないようです。
昔は、すべての顔がアーティストによって一から手作りされていましたが、今では主に2つのツールがあります。一つはメタヒューマンクリエイターツールで、顔を作成するためのものです。ここでは、ユニークな人間を作成するために調整できる多数のパラメータがあります。
それをメタヒューマンクリエイターからアンリアルエンジンに取り出し、さまざまなコンピューターグラフィックス機能を追加できます。クロスシミュレーションシステムを使用して服を追加したり、髪や他のパラメータを調整したりできます。それからメタヒューマンアニメーターがあります。これは、顔のキャプチャに基づいて人間をアニメーションするためのツールで、iPhoneのように単純なデバイスで行うことができ、キャプチャしたアニメーションを希望するヒューマンに転送します。
これは単純なことではありません。俳優が一つの顔の形を持ち、画面上のキャラクターが別の顔の形を持つ場合、俳優から顔への翻訳は実際に非常に洗練されて非明白です。もし文字通り適用すると、あなたの視点からは完全に間違っているでしょう。
これらが現在人々が使用している主なツールです。そして、アンリアルエンジン内では、顔があり、あなたが望むことは何でもできます。また、メタヒューマンのジオメトリパイプラインの外に出たいなら、独自の顔、つまりあらゆる種類の生き物を構築し、アニメーションツールを使用してそれをアニメーションすることもできます。
しかし、これは絶対的な写真リアリズムと、すべてを完全にコントロールできるようにする30年のプロジェクトであり、おそらく合計で50年かかるでしょう。まだやるべき仕事はたくさんあります。まだ問題を解決したとは思っていません。
単にアーティストに大きな生産性の乗数と品質の乗数を与えただけですが、これはまだ「完成」と言えるような状態ではありません。それでも、人々がそれを効果的に使用しているのを見ました。顔に話すために必要な口の動きを近似するためのプラグインや外部サービスを見たことがあります。
それは本当に便利な機能です。そうですね。スタジオに俳優がいて、特定のパフォーマンスを記録している場合は、彼らの顔の動きをキャプチャして適用するだけです。しかし、音声録音だけを持っている場合や、音声録音を生成している場合、あるいはそれがパラメトリックやプロシージャル、AIで生成されたものである場合、そのとき発話を口唇の動きだけでなく、顔の表情や全体的な意図に変換するシステムが必要です。
私たちが話すとき、活動しているのは顔全体であり、さまざまな方法で感情を表現します。単に部品の機械的な動きだけではありません。ナナイトについて少し話しましたが、バーチャルジオメトリシステムの背後にある魔法についてでした。しかし、ルーメンについてもう少し話せますか?一般的に、顔やシーンを複雑な方法で動的に照明するには何が必要かについて、その魔法を実現するために興味深いことは何ですか?
ルーメンはグローバルイルミネーションのためのシステムで、シーン全体での光の相互作用を現実を模倣する方法で計算することを目的としています。照明を行う最初の世代のエンジンは、光が光を放ち、それが当たる表面が照らされ、直接当たらない表面は暗いと言うだけでした。それだけが持っていた技術でした。
そのため、光が当たらない領域は完全に黒くなりましたが、現実では、光はシーン全体を動的に跳ね回ります。光が赤い壁に当たると、ほとんどの青と緑の光は吸収されますが、赤い光は反射して他のものに当たります。
だから、赤い壁と白い床がある場合、光は赤い壁から床に跳ね返り、床が赤く変わります。シーン全体を通して複数回跳ね返る光の跳ね返りは、ここで解決すべき重要な課題です。繰り返しになりますが、物理法則は知られています。この完全な解決策は1950年代に書き下ろされたと思います。
ルーメンでの本当の魔法は、ダニエル・ライトが長い期間にわたって形成されたアイデアに基づいて、何年もかけて開発したシステムで、異なるスケールで照明がどのように跳ね返るかを計算します。マイルやキロメートルのスケールからピクセルやミリメートルのスケールまで。
各レベルで計算するだけでなく、各レベルでシームレスに統合して、完全にシームレスで正確な照明の外観を与えます。以前の技術は非常に特殊化されており、アーティストは各光について正確に何をするか決定する必要がありました。目標は、シーンを構築し、その中に光を配置するだけで機能するようにすること、それだけ簡単にすることです。
このブログ記事を見てみると、動的に、屋内と屋外があることを言っておくべきでしょう。屋外光の影響を動的に計算できる能力、それを見てください。なんて美しいのでしょう。単に照明だけでも。
今、洞窟の画像を見ています。外部光が洞窟の内部の複雑さを照らしています。それを見てください。現実世界の光は多くの跳ね返りを経て、その効果は非常に微妙ですが、それがないと、それを見逃します。
多くの場合、人はシーンが間違っている理由を指摘できませんが、それが間違っていることを知っています。それはここで見られる微妙な照明キューの欠如です。素晴らしいビデオゲームだけでなく、素晴らしい映画のためにも、照明は映画を作ることができます。非常にドラマチックなシーンの照明を見ています。
このシーンに入るのは興奮と恐怖を感じます。それは全て光に関係しています。光と闇の相互作用。それは本当に信じられないほど素晴らしいです。光はすべてです。そしてツールの力をアーティストの手に渡すことは、本当に特別なことです。
業界は大規模な進化を遂げ、これを素晴らしくするためのサポートシステムがたくさんあります。そして常にアーティストがいます。滑らかな表面での反射を見ています。おお、なんて美しいんでしょう。そうですね、ワオ。そしてアルゴリズムがここでかなり多くのことをしていることを理解する必要があります。
光だけでなく、光を反射する明るいオブジェクトも大量にあるシーンを持つことができます。それぞれがリアルに見えるためには、反射の中でキャプチャする必要があります。シーン内のすべての光子を計算することはできません。そのため、本当に詳細な近似が必要です。
それがコンピューターグラフィックスの分野です。それは全く扱いにくい物理法則の、ますます効果的な近似についてです。しかし、そのグラフィックスの結果は視聴者による感情や経験です。世界の美しさのファンとして、それを合成的に、人工的に、グラフィックスを通じて作り出せることに興奮します。
そしてそれはストーリーテリングの可能性を大きく広げます。ビデオゲーム以外でも、多くの人々が映画のためにアンリアルエンジンを使用しています。アンリアルエンジンで作られた短編映画「Wars Over」がオスカーを受賞したのを見ました。おめでとうございます。それをレジュメに追加できますね。アンリアルエンジンで作られた映画がオスカーを受賞したのはすごいことです。
では、映画業界でのストーリー作りにアンリアルエンジンを使用する未来についてどう考えていますか?能力と生産性の向上です。これらの事業のどれにおいても制限要因はコストです。そしてエンジンが彼らの仕事をより簡単にすればするほど、それはより多くの力をもたらします。
ハリウッドで見られる大きな革命の一つは、グリーンスクリーンを使った人間のシーンへのコンピューターグラフィックス統合から、アンリアルエンジンによって動かされるリアルタイムコンピューターグラフィックスを表示する大型LEDウォールパネルへの移行です。それは品質の大幅な向上です。
古いグリーンスクリーン映画は、キャラクターの照明が間違っているために認識できます。彼らがどれだけ修正しようとしても、実際には決してうまくいきません。あなたの前にLEDパネルとLED光源がある前で撮影するとき、俳優は映画で登場するはずの実際の自然なシーンからのすべての照明を取り込むだけでなく、周りを見回してそれを見ることができ、どのようなセットで演技しているのかを正確に認識しています。
最終的な結果はそれだけ高くなります。それは俳優が自分が入っているシーンを見ることでより良く仕事をできるだけでなく、技術がより良い照明計算と、バーチャルな光と実世界の光のより良い相互作用を可能にし、最終結果を素晴らしいものにしています。
生成AIについて多くの興奮がありますが、人間のアーティストが作るものとAIシステムがアンリアルエンジンで作れるものの間の相互作用の未来をどう考えていますか?業界の多くの人々が、ビデオやその他のものに対するAIの進歩の速度について過度に楽観的だと思います。実際の問題は一貫性です。高品質な画像を出力するのは簡単です。
しかし、シーン全体にわたるビデオでは、すべてのAIアプローチには一貫性の問題があり、それらが簡単に修正されるとは思いません。基本的に、AIはそれらが入っているシーン全体、彼らが入っている映画やプロットの全体的なアーク、そして周囲の世界全体とそれがシーンにどのように影響するかについて、何も似たような理解を持っていません。
一方、ゲームエンジンはそれらが必要な場所で正確にそれを持っています。そのため、世界クラスの高品質制作の分野で見られるのは、単に皆がAIに移行し、それに貢献する人間のクリエイティブな部分が時代遅れになるということではないと思います。AIが人間のクリエイティブな力を増幅する力となり、より良いものをより迅速に、より高い品質で作成できるようになると思います。
生成2Dアートや生成テキストの分野とは異なり、AIの未来はより複雑でニュアンスに富んでいると思います。そして、マーク・ザッカーバーグとVRで行ったインタビューは、これの最初の良い例だと思います。このVRディスカッションでは、あなたの顔をキャプチャし、完全な3Dコンピューターグラフィックスモデルをレンダリングし、その結果をAI画像エンハンサーで修正し、通常のコンピューターグラフィックスレンダリングでは失われる多くの微妙さを追加できました。
それは最初のステップです。アンリアルエンジンの出力がAIピクセルシェーディングポストプロセッサーによって強化されることを想像できます。オブジェクトの作成が強化されることを想像できます。特に、すでに作成された高品質のオブジェクトを混ぜ合わせることができます。
エピックのQuicksoleチームは世界中を回り、非常に高い品質レベルで何万もの実世界のオブジェクトをスキャンしました。彼らは岩から木、考古学的発見物まで、すべてをキャプチャしています。そして、それらの素晴らしいライブラリをFabコンテンツサイトに持っています。足りないのは、任意の量の新しいコンテンツを作成する能力です。
そのようなデータとAIを使用して、高品質にスキャンされた木に関する知識から、仕様を満たす完全に新しい木を作成することは本当に価値のあることになると思います。しかし、これによって人々の必要性や役割が減るとは思いません。むしろ、それを強化するものだと思います。
Amazonや Netflixで映画を見ようとすると、大量のリニアコンテンツがあり、そのほとんどはそれほど良くありません。メディアの限界や予算などの制限のためです。AIをそれらの強化剤として使えば、誰もが今よりもさらに多くの機会を持つことになると思います。人々の働き方を変えたあらゆる技術革命は、最終的に人々にとってより多くの機会を生み出してきました。これが最後になるかもしれないと予測するパンディットもいますが、私はその反対だと思います。私はこれについて楽観的であり、それが誰にとっても機会を生み出すことについて楽観的です。
生成AIを使って、メッシュやテクスチャを作成し、クリエイターがより速く作れるように、アンリアルエンジンの世界に動的なオブジェクトを生成することが可能だと思いますか?顔や木などの外観をより速くコントロールできる、細かいノブではなくメタノブやハイパーパラメーターなどを使用することは?
はい、それはゲームエンジンとコンテンツ作成のための次の10年の中心的な課題だと思います。なぜなら、出現しつつある世界の二つの非常に異なるモデルがあるからです。一つはシーングラフです。アンリアルエンジンや他のエンジンによって維持されている3D世界内のすべてのオブジェクトのセットを記述するために使用する技術用語です。
ビデオで見たのは、岩や木、雪、橋、人々などです。それぞれには膨大な量のデータが付随しています。テクスチャマップ、サウンドファイル、アニメーションファイルなどです。膨大な詳細がすべてそこに保存されています。正確なコンピューターグラフィックス表現によって、どのような視点からも、どのような設定でもレンダリングすることができます。
それは完全に汎用的なシステムであり、任意の時点での世界の状態について完全なコンテキストを持っています。したがって、常に正確に再現することができます。同じシーンを10回連続して再生すれば、常に同じです。決してランダムに変わることはありません。「なぜこのキャラクターの顔がストリーム中に変わったのか」と思うこともありません。また、すべてを手動で構築する必要があるため、かなり制限されています。それはコストがかかり、時間がかかり、専門知識が必要です。
そして、AIが見たり考えたりする世界の別のモデルがあります。もし私たちがそのパラメータで何が本当に起きているかを覗くことができるなら、それは脳のニューロンのような曖昧な接続のようなものです。世界やグラフィックス、画像、人々、その他すべてについての膨大な知識を持っています。
それは人間が理解できない形で保存されていますが、プロンプトから画像を生成したり、プロンプトからビデオを生成したりするなどのクエリを通じて抽出することができます。しかし、その大きな問題は、それがとても曖昧なデータだということです。正確な結果を得るようなコマンドを与える方法を知りません。
もし一度に一つの画像を生成し、プロンプトを少し変更すると、完全に異なるものを生成するかもしれません。アートディレクションすることができません。だから、これは完全に手なづけられていないツールです。そして、これら二つをマージし接続する方法をより多く見つけるとき、AIがコンテンツ作成のプロセスを強化することを想像できます。
従来のシーン表現では、AIとシーン表現が共有されることを想像できます。AIはプロンプトだけでなく、世界内のすべてのオブジェクトとその特性のリストも見ることができ、それらのオブジェクトがどのように動き、相互作用するかについてより多くを学ぶことができます。
ですから、エンジンとAIの間の絶え間ないフィードバックサイクルがあれば、安定したシーンと、コンテンツを得る高い生産性の両方の世界を得ることができ、また、特定の部分を選択してアートディレクションし、それらのアートディレクションが永続的なシーン表現の一部として認識され、維持されるようにすることができます。
AIがピクセルの空間ではなく、シーングラフの空間で操作し、オーディオなど、あなたが言及したエンパワーするクリエイターのためのシーングラフ内のオブジェクトを作成できる日が待ち遠しいです。それは非常にエキサイティングな未来です。この話題に関して人々が持つ恐れについて話せますか?アーティストやエンジニアがAIに仕事を奪われる恐れについて。
彼らに希望の言葉を提供できますか?これは確かに最も極端な例です。なぜならAIは以前の技術よりもはるかに進んでいるからです。しかし、同様の恐れは他のすべての産業でも持たれていました。デジタル音楽合成が音楽家を時代遅れにするという恐れがありました。初期のミニやヤマハシンセサイザーなどのデジタル音楽楽器を使った曲が、本物の音楽とは見なされないとして、特定の音楽産業賞を受賞できなかった非常に短い期間がありました。
そして時間が経つにつれて人々は教育され、「これらは人々が演奏する楽器にすぎず、以前と同じ方法でそれらをコントロールしている」と認識しました。Photoshopで作られたコンピューターアートは本当にアートなのか、それともただのおかしなコンピューターのものなのかという同様の質問がありました。今日ではデジタルアーティストは尊敬を勝ち得ています。
Photoshopに存在するツールのいくつかはかなり洗練されています。今日では、それらにはAI機能もありますが、AIは最終的にアーティストのツールセットの別のツールになると思います。それはより強力で、指向性があり、人間に奉仕するツールになると思います。
多くの疎外感は、プロンプトが全体的な作品を提供するのに非常に強力である一方で、その細かいニュアンスをコントロールさせることを完全に拒否することから来ています。それは疎外感を感じさせます。画像を与えて、「この部分をこれに置き換える」とか「そのオブジェクトを緑にする」と言っても、それができません。
多くの場合、どれだけ多くの言葉でもプロンプトで説得することができません。そのため、コンピューターが私たち人間やアーティストから制御を奪い、私たちが望むことを拒否し、独自の意見を持っているように感じさせます。それは競争相手のように感じます。私たちがはるかに細かいコントロールを持ち、アーティストが「このオブジェクトを強化する」「これをする」「あれをする」と入れるようになれば、それはPhotoshopに存在するいくつかのツールのように感じるでしょう。それらは絵筆に比べれば超能力のようなものですが、AIもそのように感じるようになるでしょう。クリエイターが自分の体や心の自然な延長のように感じられる方法で作品を作成し強化するのに役立つでしょう。
もちろん、解雇による実際の人間の痛みがあります。AIへの過度な期待があり、企業がAIシステムを実装しようとし、その過程で多くの人々を解雇する可能性があります。それらの人々が感じる痛みは本物です。
この種の変革には常に痛みが伴うでしょう。それは恐ろしい痛みです。一般的に、人間の経験における痛みは恐ろしいものです。しかし、あなたが説明したように、人間とAIのコラボレーションに個人的にワクワクしています。常に最先端のツールを使用し、それらがあなたをより生産的にし、クリエイターやアーティスト、エンジニアとしてどのようにあなたを強化できるかを試し続けることに対してオープンであれば、成功し続けると思います。
複雑なトレンドがたくさん進行中であり、それらを分解して区別するのは難しいかもしれません。ソーシャルメディアで最も多くのトラクションを得る理論は、しばしばそこで働いている本当の根本的な動機を捉えていないと思います。しかし、コード制作に関わるAIは、おそらくコーディングに関わる人類の必要性に純益をもたらすでしょう。
それは仕事の一部を変えるかもしれません。新しいやり方を学ぶ意欲のある人を時代遅れにすることはないと思います。それはいつもそうでした。また、AIには過剰な期待もあります。AIは、何百万ものGitHubリポジトリがすでにやっていることをコードとして吐き出すのが本当に得意です。それは根本的なパターンを学んだ感じです。
特に複雑なタスクでは、これまでに行われていない新しいことをさせるのは悪名高く難しいです。AIに求めるコードの量が多ければ多いほど、その場でなんとなく機能するコードの混乱を残されるだけです。コードの問題は、99%は機能しますが、残りの1%をAIで100%にするのは手作業のコーディングよりも難しいかもしれないということです。このトピックを見ている誰もが、難しい問題に対してコーディング支援を実際に使用して、それがどのように機能するか試してみるべきです。
個人的には、ボイラープレートコードを生成することがより楽しく、より速くなり、より難しい決断や大局的な決断、より革新的な決断などに集中できるようになります。ただプログラミングがより楽しくなります。なぜなら、孤独を感じなくなるからです。間違ったコードを提供されても、「ああ、それもやり方の一つだね。面白いね」と思えます。
それと話すことができます。それは多分プログラミング経験についての何かを示しています。それは部分的に時々少し孤独だということです。ボイラープレートコードのトピックは興味深いです。なぜなら、ボイラープレートコードの存在自体が、プログラミング言語とソフトウェアモジュールを作成するというアイデアの失敗だからです。
AIにソート関数を作るように頼みます。素晴らしい。今あなたは、他の人々が書いた百万の関数とともに、バグがあるかもしれない別のソート関数を持っています。書かれてテストされ、最適化され、誰もがそれに依存するソート関数を持つ方が良いでしょう。そして、より多くのモジュラーソフトウェアは実際にAIの機会を減少させるでしょう。なぜなら、プログラミング作業をしている人々は主に、それ自体が実際に難しい問題である独自の問題を解決し、単に他のウィジェットを接続するだけではないからです。
多くの場合、AIは単に私たち自身に鏡を映すことで人間のシステムを改善するのに役立つと思います。先に謝っておきますが、メタバースについて広く話しましょう。あなたはメタバースのアイデアの大きな支持者でした。
今日それが何を意味するのかについてもっと具体的に話しますが、私たちは現実をより良くシミュレートすることについて話してきました。質問は、今日私たちの周りで見ている現実のレベルをシミュレートするには何が必要ですか?この超リアルな没入型の楽しい現実である地球をシミュレートするにはどれくらい離れていますか?
これから数年間で驚くほど近づくでしょう。確かに20年以下です。私たちが完全な写真リアリズムを達成した分野と、まだ不足している分野を見ると、非人間的な相互作用のあるすべての分野、ジャングルや都市を歩くこと、すべての照明など、非常に近づいています。それは数年で実現するかもしれませんが、人間、人間の対話や意図を含むすべての問題は、私たちの脳を満足させ、リアルだと納得させるために、はるかに高いハードルを超える必要があります。
そして、それがこれからの10年間のグラフィックス開発とシミュレーション開発の主要な課題になると思います。つまり、リアルな人間が最も重要ということですね。そうです。視覚的なものと行動も含めて、すべてです。このことについて約10年前に尋ねられたとき、無限の計算能力を与えられたとしても、リアルな人間をシミュレートすることはできないと言いました。なぜなら、単にアルゴリズムがないから、人間の知性をシミュレートする方法がわからないからです。それは当時は絶対に事実でしたが、もはやそうではありません。
生成テキストAIで見ているのは、少なくともテキストレベルでは人間をかなり上手くシミュレートしていると言えるレベルです。まだ感情的なレベルではありませんが、少なくとも話された言葉のレベルではあります。そして、より多くのシナリオでそれをトレーニングする方法をより多く見つけていくと、次の5年以内に非常に説得力のある人間のシミュレーションが行われる可能性があります。それが良いアイデアだとは言っていませんが、技術の流れは不可避的にその方向に向かっており、それは驚くべき速さで進んでいます。
私たちはこのことを十分に言わないのですが、現在のLLMの状態は、アラン・チューリングとChatGPTが会話したとしたら、本当にチューリングテストに合格します。ほぼ確定的にチューリングテストに合格します。もちろん、私たちはバーを上げ続けます。チューリングテストは本当のテストではないとか、有用なテストではないとか言いますね。
しかし、次第に超リアルな顔と体と、ますます感動的で強力な感情、スピーチ、テキストが組み合わさっていきます。私はLevel Labsという素晴らしい会社と一緒に働いていますが、彼らはテキストを音声に変換しています。
テキストに命を吹き込むことに特化した会社があります。それはさらに進化するでしょう。異なる会社がそれを非常にうまくやっています。そして突然、人間が話している合成的に作られたシーンがあり、そのシーンのために涙を流すほど感動します。完全な暗闇の中の美しく照明された顔、感情、シーンのドラマ性。
そうですね、5年、10年、おそらく20年とおっしゃっていますね。私たちの生涯で間違いなく見ることになるでしょう。私の質問のレベルを上げると、私たちがシミュレーションの中に生きていると思いますか?そして、もしそうだとしても、そうでなくても、私たちがその中にいると完全に確信するようなシミュレーションを構築するのはどれほど難しいでしょうか?
これらの質問は必ずしも答えられないわけではないと思います。宇宙の根本的なメカニズムについて、もっと実際の努力を見たいと思います。私たちがここに全く理由なく存在しているとは思いません。世界はかなりクールな場所で、私たちが存在できることや、物理法則、特に標準物理モデル、そしてこれらの原子や熱力学的勾配の存在下で生命が進化することにつながるすべてのパラメータは本当にクールです。
それは全体論的にもっと研究する価値のある分野だと思います。我々がシミュレーションの中に生きているかという問いは、常に「もし我々がシミュレーションの中に生きているなら、彼らは何の中に生きているのか」という問いになります。なぜならある時点で何らかの基本現実がなければならないか、真剣に提起された哲学的理論の一つは、物理的現実がないというものでした。
物理法則のような方程式の系があれば、それらの方程式の下での力学系のすべての可能な進化は一種の物理的現実を持っています。だから、私たちは実際に私たちの周りに宇宙を必要とするのではなく、数学の法則の発現のようなものなのかもしれません。
その哲学に手を出すのが好きです。そしてAIがますます賢くなり、物理法則を完全に捉えることに近づくにつれて、これらの質問はかなり説得力を持つようになります。もし私たちがシミュレーションの中に生きていないとしたら、この現実についてシミュレートできないものは何でしょうか?
物理はシミュレート可能に思えます。私たちが話したような信じられないようなことも、非常に素晴らしいけれど、シミュレート可能に見えます。しかし、意識の炎、それを感じること、人間として私たちの目に灯る何かがあります。それはシミュレートできないかもしれません。それが宇宙のメカニズムの説明につながるスレッドかもしれません。
それを理解することは本当に重要ですが、そのメカニズムについては完全に無知です。多くの宗教的なテキストはそのメカニズムについて示唆していますが、私たちはほとんど無知です。そのメカニズムが何であるかについて、信仰の飛躍だけを持っています。
十分に進んだ技術を考えると、入れ子のシミュレーションのアイデア全体が無意味になります。別の現実をシミュレートしたいなら、実際に現実を作り出しているだけです。同じ結果を生み出す量子力学的な操作を行っており、それらを最大のパフォーマンスで実行しています。
だから、それは本当に入れ子のシミュレーションではなく、単に宇宙で起きている別のことです。それは興味深いことですが、最終的にはそれは神学的な問題であり、科学の一部として神学を扱うことがもはやクールではないので、その方面の研究はあまり行われていません。
尊敬される物理学ジャーナルにそのようなトピックについての結果を発表することはできません。しかし、量子力学の法則自体が、神や魂、あるいはあなたがそのようなものに付けたい外部入力の源のための場所を持っていることに注目するのは興味深いです。
完全な重ね合わせ状態で進化する量子系を観察すると、実際には特定の可能性だけを見ます。多重スリット実験では、光は最終的に一つのスリットか他のスリットを通過したと観察されます。これはランダムな数が私たちの周りのすべてに注入される場所です。私たちが観察するすべてにおいて、毎秒何兆何兆何兆回も。
もし何か外部の入力を付けたいのであれば、そこに場所があり、科学の厳密さを通じて真剣にアクセス可能かもしれませんが、私たちはそこについてほとんど何も知りません。面白いことに、その分野では、洞窟人が知っていたことより何も多くを知りません。量子力学の法則を知っており、私たちよりも進んだコンピューターがすぐに登場するかもしれません。
しかし、生命や宇宙、そしてすべてについての根本的な質問への答えは全くありません。より実践的に考えると、メタバース形式のビデオゲームの世界を作り、人間がそこに留まりたいと思うようになると思いますか?
シミュレートされた現実についてのこの種の議論について、没入感の本当のテストは、完全に健康で興奮した通常の人間が、現実の世界に戻りたくないと選択することです。どれほど難しいと思いますか?
技術は来ており、そこまで行くべきかどうかという人間の問いがあります。ゲーム開発者として、エピックはそれを目指していません。私たちは楽しいゲームを作ります。私たちが見つけた最終的な表れは、人々が一緒に遊び、実生活の仕事やその他のことの間に楽しむための楽しいゲームです。
しかし、シミュレーションがますますリアルになり、能力がますます現実的になるにつれて、人類がその空間でどのように運営すべきか、どこまで行くべきか、どのような制限を設けるべきかについて、いくつかの難しい質問をしなければならないと思います。いくつかの難しい質問があると思いますし、単に人間中心的かもしれませんが、おそらく二つのことに法的な境界を設けるべきでしょう。
人間があまりにも長く留まりたいと思うような現実を作らないこと。そして、より重要なのは、苦しむことができる人間のシミュレーションを作らないことです。私にとって、超リアルな人間を作ることについて話したように、それは最終的に苦しむことができる人間を作ることを意味します。彼らは恋に落ち、心の痛みや喪失を経験することができます。
彼らは死を恐れることができます。そして、人間の状態の完全な現実をシミュレートすればするほど、苦しむことができるシミュレートされた人間を持つような場所に近づきます。そして法的に言えば、それは許可されないような場所に到達しなければならないと思います。人間が扱うのは難しいことです。
興味深い最高裁判所の判例になるでしょう。苦しむことができるほど十分にリアルな人間を作ると、その人間を拷問したり、その人工の人間に恐ろしいことをすることができます。しかし、それはまだ間違っているように感じます。
シミュレートされた人間を拷問することは間違っていると感じます。ビデオゲームをプレイし、シューターで皆が楽しんでいる場合、それは間違っているとは感じません。しかし、境界線があり、それは最高裁判所が探求する魅力的な境界線になるでしょう。
ああ、私たちは何てワクワクする未来に生きているのでしょうか?そうですね。ゲーム開発者は一般的に善意の側にいることを理解することが重要です。今日の人気のあるビデオゲームで人々がする最悪のことは、GTAで銀行強盗をするようなものです。それは明らかにフィクションで、楽しく、真剣ではなく、誇張されています。
物事がよりリアルになるにつれて、特に人間のシミュレーションについて、答えなければならない難しい質問があります。しかし、すべてのゲーム開発者が覚えておくべきことは、私たちはエンターテイメントを提供し、楽しみを提供し、他のことからの気晴らしを提供し、彼らの人生の一部になることで人々の生活をより良くするためにここにいるということです。
現実の代替を提供しようとするのではなく、単に人々が楽しみのために行う多くの他のこと同様、楽しいエンターテイメントの源を提供することです。あなたは何年もメタバースについて話してきたと言いました。少し戻って、メタバースとは何ですか?
楽しさについて言えば、フォートナイトは、何億人もの人々がこの大規模なソーシャルゲームで楽しんでいます。それをメタバースと呼ぶこともできるでしょう。メタバースの異なるフレーバー、層について説明してもらえますか?
メタバースは、誰が何を言うかによって株価が上下するアイデアです。一部の人はそれを口を開くことで大幅に下げる能力を持っています。しかし、究極的にはこれはマルチプレイヤーのソーシャルゲーム体験についてです。あなたと友達が3Dの世界に集まり、好きな方法で一緒に楽しむことです。
フォートナイトバトルロワイヤルをプレイしているなら、それは私の見解ではメタバースの本質を捉えています。特にフォートナイトでは、ソニーが参加し、すべてのプラットフォームのすべてのプレイヤーがフォートナイトで一緒にプレイし、音声チャットし、単一のゲーム体験の一部になれるようになったとき、それは新しい性質を帯びました。
それはDoomから受け継いだようなただのマルチプレイヤーゲームではなく、あなたと友人の間の真のソーシャル体験でもありました。フォートナイトバトルロワイヤルはその一つの表れに過ぎません。もう一つはReckRoom VRのようなもので、VRで友達と一緒に立ってビリヤードをしたり、バスケットボールをしたり、他の軽いエンターテイメントをしたりします。
多くのプレイヤーが一緒にプレイし、エンターテイメントの一部として社会的に参加するゲームはすべて、メタバースのビジョンの核心的な本質に迫っていると思います。そして、まだ初期段階にあります。
私は1992年頃からインターネットを使っていましたが、それはかなり基本的なものでした。今日のゲームの状態を振り返ると、その究極のバージョンにたどり着くまでにはまだ長い道のりがあることを認識するでしょう。しかし、すべては順調に進んでいると思いますし、フォートナイトバトルロワイヤルをリリースし、エピックの全員がスクワッドで一緒にプレイし、その世界を体験し始めたとき、この傾向が始まったことを認識し、フォートナイトクリエイティブやUFNを通じて独自の世界を作ることで、誰でも私たちの仕事に加わることができるようにするため、できることはすべてやる必要があると思いました。
それについてもう少し詳しく話したいと思います。エピックは多くの素晴らしいゲームを作ってきました。アンリアルトーナメント、ギアーズオブウォーなど。しかし、ゲーム業界を変革したと言えるゲームはフォートナイトです。特にフォートナイトバトルロワイヤルです。フォートナイトの起源の物語を説明してもらえますか?
フォートナイトは謙虚な始まりを持っています。2011年、ギアーズオブウォーのゲームの最終段階を終えた頃、新しいゲームのアイデアを探索したいと思っていました。小さめのゲーム、オンラインゲームを構築し、そのスペースについてより多くを学びたいと考えていました。一度に一つの巨大なゲームだけを制作するのではなく。
会社の全員に1週間与えられ、好きな同僚とチームを組んで、アンリアルエンジンを使ってゲームを作りました。1週間でかなり興味深いものを構築できます。チームの一つが、後にフォートナイトになるものの最初のバージョンを構築しました。最初のバージョンは異なるアートスタイルを持っていましたが、昼間に建築システムを使ってフォートを建て、夜が来るとゾンビからフォートを守るという基本的なアイデアがありました。
そのゲームは非常に長い間開発されていました。私たちは常にその可能性を見ていました。建築の側面だけでも信じられないほど楽しかったのですが、異なる時期に異なるピボットを行いました。ある時点で、現在のフォートナイトのアートスタイルにより現実的なスタイルから移行しました。それをより、ピクサースタイルのクールなスタイル化されたキャラクターにしました。
その決断はどのようなものだったのでしょうか?ギアーズオブウォーはグラフィックスを最大限に活かした素晴らしいものであり、フォートナイトの芸術的スタイルとは異なります。同じ会社が、このような楽しく、愚かなグラフィックスタイルのフォートナイトを作るのは驚くべきことです。
人々は世界最高の人々と働きたいからエピックに来ます。そしてアーティストは多くの異なる個人的なアート志向やスタイルの能力をもたらします。彼らの多くは非常に多才であり、写実的なコンテンツや非常にスタイル化されたコンテンツを制作できます。フォートナイトの最高のアーティストの多くは、ギアーズオブウォーの最高のアーティストでもあり、スタイルを変えながらも素晴らしい仕事を続けました。
フォートナイトは本当にメインストリームになる可能性があり、人々が長い間プレイするゲームになる可能性があると認識しました。そのため、コール・オブ・デューティのようなゲームのように、常に暗いシーンでライフルのスコープを探し続けるようなストレスの多いものではなく、視覚的に魅力的なアートスタイルを持つことが目標でした。
アーティストの一部が新しいアートスタイルを定義し、それに移行しました。そして、異なる時点で、それはデスティニーのような軽いMMOのようなものに進化し、かなり複雑なRPGやスタット要素を持っていました。それが、アイテムとスタットの永続性を持つMMOのようなタワーディフェンスゲームに進化しました。それがフォートナイトセーブザワールドモードになりました。
2017年初頭にそれをリリースし、中程度の成功を収めました。予算を回収し、収益を上げることができました。同時に、バトルロワイヤルジャンルが急成長していました。PUBGが出たばかりで、エピックの多くの人々がそれをプレイしていました。彼らは「フォートナイトの建築があれば、これはとても素晴らしいだろう」と言いました。そこで、作戦室にチームを集めました。30人ほどが一つの大きな部屋にいました。
彼らは4週間で信じられないほど一生懸命働いて、バトルロワイヤルを構築しました。良いことに、フォートナイトのコンテンツは過去7年間で構築されていました。彼らは巨大なコンテンツライブラリを持っていましたが、欲しいタイプのゲームプレイはありませんでした。それをすべて4週間で構築し、出荷しなければなりませんでした。
それはエピックを指数関数的な成長曲線に乗せました。私たちは300人の従業員から数千人の従業員に成長し、約1億ドルの収益から数十億ドルの収益に成長しました。当時のゲーム世界の中心になりました。主にオンラインの大規模なゲームプラットフォームではなかったものから、バトルロワイヤルで同時に大勢の人々が一緒にプレイできるようにするための技術的課題について話してもらえますか?4週間で、そこで克服しなければならない技術的課題は何でしたか?
2012年以来、プレイヤーアカウントやログイン、マルチプレイヤーゲームに必要なさまざまなシステムをサポートするためのオンラインバックエンドシステムを構築してきました。それらはスケーラブルに構築されました。
奇跡的に、それらは十分に安定して構築されており、スケールアップすることができました。そのコードをパッチするチームは、約4万人の同時ユーザーから1500万人の同時ユーザーにスケールさせるために、1年間の集中的な作業を行いました。それはかなりのスケーリングです。それは膨大です。
しかし、彼らは基盤を構築するのに素晴らしい仕事をしたので、それは扱いやすかったのです。彼らがそうしていなければ、会社は死んでいたでしょう。フォートナイトはプレイできず、すべてが失敗していたでしょう。そこには大きな違いを生む多くの詳細があります。Spotifyが話していたように、どれだけ速く曲を配信できるかは製品を変え、曲を海賊版にしたいような粗悪なものからこれは十分に良く、経験を本当に楽しみたいと思うようなものに変えます。
そのため、1500万人の同時ユーザーに遅延のない、実際に機能する体験を作るのは非常に重要です。それを実現することがどれほど難しいかについて何か言えますか?オンラインサービスを構築するための最近のトレンドはマイクロサービスです。
フォートナイトとのすべての相互作用を処理する一つの大きなサーバーではなく、各バトルロワイヤルセッションの100人のプレイヤーのゲームインスタンスを実行するゲームサーバーがあります。そして、アカウントサーバーとその多くのインスタンスがあり、それらはすべて共有データベースと通信しています。何百もの異なるマイクロサービスが互いに通信しています。
スケーリングはそのシステムのボトルネックを特定し、それぞれがスケールでき、負荷を処理するのに十分な冗長性を持っていることを確認することです。Amazon Web Servicesとクラウドホスティングに感謝します。エピックはサーバーハードウェアを購入せずに1500万の同時ユーザーに到達しました。Amazonに電話して「もっと必要だ」と言うだけでよかったのです。
フォートナイトがこの指数関数的な成長を遂げている時期があり、ある週にはブラジルで混雑した週末にサーバーが足りなくなり、次の週にはさらに混雑した週末があり、それを処理するサーバーがありました。Amazonの誰かがブラジルに何百万ドルものサーバーハードウェアを急送し、フォートナイトがそれを必要とする瞬間にそれを起動したのでしょう。
その物語には多くの無名のヒーローがいて、その多くを私たちは聞いたことがありません。AWSの背後には多くの無名のヒーローがいます。現代のインターネット、私たちが当然と思っているすべての信じられないサービス、ゲーム、サービスは現在AWSで実行されているか、当初はそうであり、Google Cloudなどでも同様です。
フォートナイトがどれだけのお金を稼いだかについて話してもらえますか?これはビデオゲームの歴史の中で最大の成功の一つです。また、フォートナイトは年間数十億ドルを稼ぎます。それはエピックの収益の大部分です。アンリアルエンジンのライセンス、ロケットリーグ、フォールガイズ、Fabコンテンツマーケットプレイスなどの他のツールの堅牢なビジネスもありますが、その大部分はフォートナイトです。なぜなら、私たちは技術の未来だと考えるものの構築に大きく再投資することを選んだからです。
私たちは稼ぐ以上のお金を毎年使っています。しばらくの間、私たちは稼ぐ以上に年間10億ドル以上を使っていました。それは持続不可能であることがわかり、その時に痛みを伴う解雇を行いました。そして安定しました。現在、私たちは稼ぐ以上に年間数億ドルを使っていますが、これはよく余裕があります。なぜなら、銀行に数十億ドルがあるからです。
とても小さな会社が非常に大きなゲームを持っていた時に得た利益と、調達した投資のおかげです。私たちは地面から油を汲み上げる油井ではありません。私たちは未来の技術パワーハウスになるために成長しています。3Dの空間と将来のリアルタイム3Dシミュレーションは、人類のための技術の主要な側面の一つになると考えています。それに全力で投資しています。
長期的な未来に投資しているのを見るのはワクワクします。研究に取り組み、エピックの次の章を定義するリスクを取っています。今日の成功を明日の成功に投資し、それはまったく異なるものかもしれません。
その一部は、アンリアルエンジンの開発、研究、イノベーションへの投資です。その通りです。私たちは、3年、4年、5年は実現せず、お金を全く稼げないことを知りながらプロジェクトに取り組み始めることができる会社です。
それは全く問題ありません。それが時間とともに私たちの成長を支えたサイクルです。常に未来に投資し、製品を出荷し維持し、それらから収益を得ながら、真剣な研究開発を行う真剣な会社であることです。ここではいくつかの方向性があります。
一つは、このメタバースのアイデアの将来の進化についてです。潜在的にコミュニティを作ることです。フォートナイトは人間が相互作用するこの信じられないほど巨大なコミュニティですが、あなたのビジョンは単に一つのゲームを超えています。人々がゲーム間を移動し、アイデンティティを持つことができるような標準について考えているかを教えてください。
ゲームの現状から始めましょう。なぜそれがダメなのか。それが良い出発点です。フォートナイトは素晴らしいものです。フォートナイトに入ると、月間アクティブユーザーが1億人います。あなたの友人の多くがそこにいます。あなたはアプリを離れることなく、彼らと一緒にプレイし、シームレスに体験から体験へと移動できます。
プレイできる島が10万あり、その一部は本当に素晴らしいです。常に新しいものが登場し、常にすることがあります。ロブロックスをプレイしたい場合は、フォートナイトアプリを終了し、ロブロックスアプリを起動します。異なるプログラム、異なるフレンドシステム、異なるアカウント名、フォートナイトでのユーザー名とロブロックスでのユーザー名は異なり、それらは互いに接続されていません。
だから、すべての友人を再び作る必要があり、プレイするための異なるものを見つける必要があります。そして今、コントロールが異なります。ジョイスティック、マウス、キーボード、コントローラーがその体験でどのように機能するかを再学習する必要があります。場所から場所へ行く必要があります。フォートナイトで何かを購入し、それは本当にクールで、フォートナイトのどこでもそれを使用できます。
そしてロブロックスに行くと、そのアイテムはありません。異なるものを購入する必要があります。そしてそれらはロブロックスでしか機能しません。コール・オブ・デューティも同じです。それは別の孤立した場所です。ワールド・オブ・ウォークラフトやリーグ・オブ・レジェンドも同様です。あなたが行くすべての場所は独自の場所です。
異なる友人、異なるアカウント名、異なる人々、そしてそれらの間には社会的な結束はありません。長い間、コンソールはこの問題を解決しようとしてきました。コンソール全体のフレンドシステムとアカウントを作り、あるゲームでのPlayStationの友人は別のゲームでのPlayStationの友人でもあります。でもそれはPlayStationだけです。
Xboxを使っている場合、PlayStationの友人を見ることはできません。だから、二つの基本的に直交して交差する世界の区分があります。これらは悪意を持って作られたわけではありませんが、発生し、分離された孤立した島となっています。一つはプラットフォームとそのソーシャルサービスであるXbox、PlayStation、Nintendo、Steam、Epicなどであり、もう一つは人々がプレイする異なるゲームです。
この奇妙な歴史的な遺物のために、私たちは人々が友人やものを持ち歩きながら、シームレスにゲームからゲームに移動できない世界に取り残されています。この解決策は、すべてのシステムを連合し接続することです。すべてのプラットフォームのすべてのプレイヤーが名前で認識され、@記号を入れることができます。
あなたのXbox名、フォートナイトやEpic名、Steam名がすべて一つの空間で一緒に存在し、相互運用できるようにします。ソーシャルエコシステムを統一することが起こる必要のある一つのことです。次の、より大きな課題は経済も統一することです。ワールド・オブ・ウォークラフトで持っている剣がフォートナイトで機能すべきだとは言っていません。
すべてのゲームは独自のゲームプレイルールを持ち、多くのゲームはそれらでしか機能しないものを持つでしょう。しかし、ゲームプレイの結果に影響を与えない、純粋にクールな外観やクールな外観のコスメティックシステムのアイデアを共通して持つゲームの巨大なセットがあります。
主要なマルチプレイヤーゲームのほとんどがそれらを持っています。ゲームを見ると、おそらく70%をまとめて、それらは十分に似ているので実際に相互運用できると言えるでしょう。フォートナイトでアウトフィットを持ち、ロブロックスでアウトフィットを持ち、おそらくコール・オブ・デューティでも同じアウトフィットを持ち、おそらく他の100から200のゲームでも持ち、それらが一緒に機能することを期待できるでしょう。
他の種類のアイテムも相互運用可能でしょう。フォートナイトには車のアウトフィットがあり、車の外観を変えることができます。そして、フォートナイトの世界で物理的な車を見つけると、そのセッションで最初に乗る人がいると、ブーム、それはあなたの選んだ車のコスメティックを取ります。
そして今、あなたはクールな車を持っています。それはあなたのものとして識別可能です。フォートナイトでは早い段階で、アイテムショップからの収益をすべてのエンゲージメントソースに開放することが、フォートナイトをクリエイターエコノミーとして機能させる鍵であることを認識しました。フォートナイトが製品としてそしてビジネスとして機能する二つの大きなことがあります。
一つはゲームモードで、フォートナイトバトルロワイヤルやすべてのユーザーモードなど、それらはエンゲージメントのソースです。それらは超楽しいので人々はそこでプレイし、プレイしているので、キャラクターをよりクールに見せるためにクールなものを買う意欲があります。だからこそ、多くのエンゲージメントソースがありますが、エンゲージメントソースは直接お金を稼ぎません。
フォートナイトバトルロワイヤルでゲームアイテムを購入するためにお金を使うことはできません。ゲームプレイは課金要素がなく、単なるゲームです。だから私たちはアイテムショップから収益を得ています。そしてアイテムショップはエンゲージメントソースのためだけに調整されます。バトルロワイヤルでプレイしていなければ、誰もフォートナイトのアウトフィットを買いたいと思わないでしょう。
フォートナイトのゲームをプレイしていなければ、なぜフォートナイトのアウトフィットを買うでしょうか?だから、このアイテムショップの経済に全ての収益があり、エンゲージメント経済に全てのエンゲージメントがあります。そして、フォートナイトのクリエイターエコノミーを魔法のように機能させるものは収益共有です。エンゲージメントによってエンゲージメントソースに応じてアイテムショップの支出を分配します。
アイテムを購入し、あなたの時間の40%をバトルロワイヤルで、60%をユーザーモードでプレイしている場合、あなたが使ったお金、その利益の部分は分離され、そのエコノミーに参加するすべての異なるクリエイターに支払われます。
そのため、フォートナイトは今までに4億ドルのクリエイターエコノミーにスケールアップし、それは成長しています。それは驚くべきことです。その設計において本当に重要なことの一つは、他の企業、他のエコシステムに拡大できるクリエイターエコノミーであることを確保することでした。
現在、私たちは多くの業界標準団体を持っています。一つはゲームの評価、ゲームの年齢評価を標準化しています。別の一つはウェブ用のファイル形式を標準化しています。別の一つは3D用のファイル形式、クロノスグループやメタバース標準フォームなどを標準化しています。
もし標準団体がゲームでのポータブルアウトフィット、あるゲームで購入して別のゲームで機能するゲームアウトフィットを標準化したら?それらの寸法、能力、何ができて何ができないかなどを標準化したら?そうすれば、すべてのゲームがお互いのアイテム購入を尊重し、エコシステム間でも収益が共有されるアイテムエコノミーを持つことができるでしょう。
それは信じられないことでしょう。それは本当に素晴らしいことでしょう。まず、ビデオゲームをプレイしない人々にとってはばかげているように思えるかもしれませんが、アウトフィットはビデオゲーム間で持続できるアウトフィットは重要です。私たちが服を着る目的は何でしょうか?それは私たちのアイデンティティの一部であり、世界に自分自身を表現する方法です。私はこの馬鹿げたスーツとネクタイを着ていますが、身につけると気分が良くなります。
そして他の衣装も、私には二つの衣装があります。これと黒いTシャツとジーンズです。それを着ると気分が良く、鏡を見たときに自分自身を認識できます。ああ、あの人を知っている。そのアウトフィットをゲームからゲームへ、おそらく何年にもわたって持ち運べるのは素晴らしいことでしょう。
より複雑なアイテムについての価値の標準化についてもコメントできますか?例えば、ディアブロから剣を取り、フォートナイトの銃に変換することを、価値に基づいて行う。あるゲームでのアイテムの価値と別のゲームでのアイテムの価値の間で、実際のアイテムではなく価値の空間で操作するような、それともそれはすでに一般的すぎますか?
これは可能だと思います。フォートナイトの経済について多くの分析を行い、フォートナイトの一部の体験は他よりも高い支出につながる、または相関することがわかりました。バトルロワイヤルはその点で比較的強いです。なぜなら、キャラクターを背後から見て、他のすべてのキャラクターを前から見る機会があり、自分が誰であるかを本当に見て、エモートしたり、他のプレイヤーと対話する多くの機会があるからです。そして多くのゲームがその特性を持っています。
一つの面白い異常が目立ちました。フォートナイトで大きな突破口となったゲームの一つ、Only Upがあります。それは物体や物のスタックの道をたどって上へ上へと登っていくだけのゲームでした。それは単に愚かなほど楽しかったです。みんなが好きでしたが、Only Upをプレイしているとき、人々はアウトフィットにあまりお金を使わないことがわかりました。そして実際に直感的です。他のプレイヤーを見ていない場合、何かを見るとしたら、彼らが物体から物体へジャンプしながら追いつこうとしているときに彼らのお尻を見ているだけです。彼らはあなたの上にいます。そのため、それはアウトフィットをあまり見せないモードでしたが、ゲームモードと支出の間の経済的相関を決定することができます。
それは非常に魅力的です。フォートナイトはこのような研究を行うことができる巨大な経済です。人間の間で発生するデジタル市場と彼らが何を価値あるものと考えるかを理解することができます。そしてその価値から、おそらく非常に安定した種類のお金が生まれるでしょう。
そう思います。代替通貨システムは必要ありません。残念ながら、人々が異なることをハイプしようとしているため、多くのアイデアが融合されています。しかし、大規模なマルチプレイヤーソーシャルゲームのこのアイデア、メタバースの概念、毎月6億から8億人がそのようなゲームをプレイしています。そのため、それは現実であり、それは起きていて、非常に進行中です。
VRはより小さな聴衆を持っています。これのようなものを持つためにVRが必要だとは思いません。VRはハードウェアであり、一部の使用ケースでは体験を向上させるかもしれませんし、そうでないかもしれません。一部にとってはおそらく良くなり、一部にとってはおそらく悪くなるでしょうが、確かにVRに殺到しているバトルロワイヤルプレイヤーのセットはありません。
もう一つはNFTです。デジタルまたは暗号通貨をメタバースと同一視しようとしています。それは単にお金や価値交換を示す方法です。それをお金で行うことも、NFTやその他のもので行うこともできます。しかし、この将来のデジタル経済について、根本的に暗号通貨などを必要とするものは何もありません。
必要なのは相互運用性です。相互運用性はブロックチェーンを通じて起こりうるし、データベースを通じて起こりうるし、標準やプロトコルを定義する標準機関を通じて起こりうる。私たちは鉄道が標準化されて以来、何百年もそれを行ってきました。それは全く新しい技術的解決策を必要とするものではありません。
暗号通貨のトピックについても、それは非常に不満です。ブロックチェーンと暗号は私たちが話しているようなことの多くを可能にする本当に強力な技術だと思いますが、多くの人々がそれを使って金儲けをしようとし、バブルを作り出そうとし、ハイプとミームコインなどが、実際に価値のあるものからどんどん遠ざかっていきます。フォートナイトをプレイする体験と、バトルロワイヤルでプレイするときのあなたの外見です。
言うのは馬鹿げているように聞こえるかもしれませんが、それは本当です。それは価値があります。物理的な空間で金があるようなものです。私たちはそれが価値を持つことを知っています。あなたが言っているように、フォートナイトでのアウトフィットの見た目は明らかに価値を持っています。
だから、標準的なお金の価値の定義をそれに接続したいと思い、それがハイプのものにならないようにしたいのです。あなたが言及したNFTは単にそうなり、人々が実際に価値を置いているものの近くに留まるのではなく、買ったり売ったりしてお金を稼ごうとする人々の土地へと急速に流れていきます。お金を忘れてください。
それは価値ある体験や価値あるものを交換することについてもっと重要です。そのため、フォートナイトをプレイし、その後別のビデオゲームに行き、価値ある体験を続け、そしてフォートナイトに戻ってくることができます。あなたはそれを行う方法があるかもしれないと言っていて、ウェブが持つようなさまざまな標準を基本的に作り出すことができるでしょう。ウェブサイトを表示するためのさまざまな標準、ネットワーキング側で必要な通信など。
ウェブを機能させるためのさまざまな標準のようなものが、メタバースを可能にするためにはどのような標準が必要でしょうか?多くの異なるものが必要です。標準が非常に成功している一つの分野は、データ交換のための低レベルのファイル形式です。
ウェブは2D画像用のPNGファイル、オーディオ用のMP3ファイルを持っています。3Dにはピクサーのユニバーサルシーン記述(USD)ファイル形式があります。シーングラフ、シーン内のすべてのオブジェクトとそのパラメータの記述です。そのため、それらの機能をサポートするエンジンはそれをインポートし、元のエンジンと同じシーンをレンダリングできます。
これはアンリアルエンジン、Unity、Blender、そしてあらゆる種類の3Dパッケージの大部分で機能します。そして、glTFテクスチャ形式があり、3Dオブジェクトのテクスチャとジオメトリと他の低レベルのデータを保存します。フォートナイトのキャラクターを見るとき、そのファイル形式と画像ファイル形式で静的な外観、体の形、アニメーション、異なるポーズを保存できます。
異なる標準ファイル形式は、エモートで作る全ての音を保存できますが、まだいくつかの部分が欠けています。最も大きな欠けている部分は、メタバースの標準化の中心にあるプログラミング言語です。ウェブを見ると、ウェブはさまざまな技術の組み合わせです。
最も大きな二つはHTMLであり、2Dシーングラフまたはウェブページ上のコントロールとオブジェクトの2Dレイアウトを記述します。しかし、それは単に静的なデータです。非移動、非アニメーションのウェブページです。そしてJavaScriptプログラミング言語があり、それを操作してユーザーに表示し、コードで実装できるあらゆるものを実装するために使用されます。
それはあなたのウェブブラウザで実行される小さなプログラミング言語です。そして、メタバースは同様の役割を果たすものが必要です。しかし、メタバースと3Dゲーム一般的には、JavaScriptよりもかなり強力で、より安全で、よりスケーラブルで、より能力のあるものが必要です。なぜなら、メタバースは実際にウェブページよりも難しい技術的問題だからです。
ウェブページはアプリのように、単一のコードとコンテンツのバンドルであり、それを会社が準備して、リリースし、新しいバージョンがリリースされるまで正確にそれであり続け、バージョンからバージョンへとアップグレードされます。しかし、メタバースは何百万もの異なる人々によって構築されたコードとコンテンツの複合体である必要があり、それらが一緒にシームレスな世界を形成する可能性があります。
完全に分散した共同作業です。また、ウェブサイトはそうである必要はありませんが、非常に少ない情報を表示しています。メタバースは、フォートナイトのように見えるときでも、個々のプレイヤーが協力するときにシーングラフで伝えられる情報量は非常に膨大です。
フォートナイトの最高の詳細度は約60ギガバイトのデータです。それはフォートナイトクリエイティブ経済に存在するものの一部に過ぎません。そして、これが10年後にどうなるかを考えると、標準が出現するにつれて、エクサバイトのデータがあるかもしれません。
フォートナイトバトルロワイヤルはゲームプレイの最終的な表現だとは思いません。何度も見てきたように、私たちが技術的な能力を得るにつれて、グラフィックスがより高性能になり、CPUがより性能を発揮し、ウェブサービスがますますスケーラブルになると、以前は不可能だった新しいジャンルのゲームが登場します。
Doomはデスマッチの時代を開き、3Dマルチプレイヤーゲームが全く可能になった最初でした。初期のバトルロワイヤルゲームは約10年か15年前に始まり、当時になって初めて可能になりました。20年前には構築できなかったでしょう。なぜなら、ただVRゲームほどの大きさの環境を、これほど多くのプレイヤーで、この程度の相互作用とパフォーマンスでレンダリングすることができなかったからです。
単に実行するのが不可能だったのです。一定レベルの技術的能力を得て、これまでに発明された最高のシューティングジャンルとなるジャンルが登場しました。しかし、より多くの能力を得るにつれて、既存のものよりも優れた多くのジャンルがまだ発明されると思います。
現在私たちが欠いている能力の一つは、単一の企業が作成できる以上の環境とゲームシミュレーションを構築する能力です。フォートナイトやロブロックスでは、何万人ものクリエイターがそれぞれコンテンツを構築しています。
ユーザーはそれらの意味のある量をプレイしています。そのため、企業を超えてスケールしたエコシステムがありますが、それでもまだ一つの島に行き、そのクリエイターの作品をプレイするというものです。スケーラビリティのもう一つの方向性は、人々の作品をより多くシームレスな連続的なプレイスペースに入れることです。
意味のあるゲームでは、大陸や地球の大きさの環境でゲームが行われ、場所から場所へ移動し、異なる人々によって維持される異なる領域を見ることができます。異なる空間に行くと、ゲームルールがそれに応じてカスタマイズされます。
そして体験から体験へと移動できます。一つの企業の製作物が常にどこにでも存在するのではなく、ある人が作った車に乗り、他の20人が作った武器を持ち、何千人もの他の人々が構築した環境でシミュレーションが行われます。それらの人々は別々の企業のために働いているか、自分自身の起業家や独立系の開発者、または熱心な人々であり、全員が同時に一緒に作業しています。
そのようなことを起こすために今書く必要があるコードの種類は全く実用的ではありません。そのため、私たちは’verse’という新しいプログラミング言語技術と、未来のメタバースプログラミングのための提案された標準に大規模に投資しています。それらの問題を解決し、そのような世界を可能にすることを望んでいます。
まず、それは非常にエキサイティングな未来です。数百や数千ではなく、数百万のクリエイターが、地球のように大きな世界の異なる小さなまたは大きな要素を作成できる世界です。目を閉じてその世界を想像すると、本当にエキサイティングです。それは特定の島のリリースをコントロールする中央集権的な企業ではなく、人々がこのデジタル世界の現実のすべての島を常に動的に修正しています。
それを可能にする技術について話せますか?’verse’プログラミング言語について言及しました。まず、Epic Gamesの最高経営責任者であるあなたが、プログラミング言語の理論家が狂喜するような、プログラミング言語の微妙な詳細を記述した論文の共著者であることはどれほど正当なことですか?
‘verse’と呼ばれるこのプログラミング言語について話してもらえますか?それは関数型論理言語です。それは何であり、’verse’のいくつかのクールな機能は何ですか?’verse’は大規模なシミュレーションプログラミング用に構築しているプログラミング言語です。
それは、フォートナイトの島を構築するだけでなく、何百万もの他のプログラマーが使用でき、巨大な環境で共存できるモジュールやコンポーネントを構築し、また巨大なスケールのシミュレーションまでスケールアップできるコードを書くことを簡単にするように設計されています。一部のゲームは小さいでしょう。バトルロワイヤルは、おそらく100プレイヤーが実際に最適であることがわかるかもしれません。
千人のバトルロワイヤルバージョンは悪くなるかもしれませんが、千人、百万人、そして数千万人のプレイヤー体験があり、それらはさらに良くなる可能性があります。待ってください、数千万人のプレイヤーが一緒に?確かに、1500万人の同時ユーザーを集めたフォートナイトイベントがありました。しかし、それらすべてが100人ごとのサーバーに分かれているという事実は、実際にはポジティブではなく、単に技術の限界です。
アンリアルエンジン1とそのシングルスレッド決定にさかのぼります。もし私たちがコンサートを構築でき、すべてのコンサート参加者、潜在的には数千万人が同時に一緒に参加でき、その大規模な群衆がいることを見て、全員が興味深いことをし、互いに対話できるとしたら。それははるかにクールでしょう。
一つのシーングラフで1000万人が対話している様子を想像するだけで。なんてクールな世界でしょう。1000万人がいます。画面には1000万未満のピクセルがあります。ナイキストのサンプリング定理は何を言っていますか?それはすべてのプレイヤーに対して完全なオーバーヘッドが必要ないことを意味します。
あなたの周りのプレイヤーを他のすべてのものの近似でレンダリングする必要があります。しかし、ネットワーキングコンポーネントもあります。あなたはレンダリングについて話していますが、そこではたくさんの作業が必要です。しかし、これが私たちの仕事です。難しい問題を解決します。
なぜなら、それらが簡単なら、他の人々がすでに解決しているでしょう。それは本当にクールです。その可能性、そのビジョンは本当にクールです。たとえ10万人、あるいは1万人を一緒に連れて行くだけでも、物理的な世界でコンサートに行き、周りにたくさんの人々がいるとき、そのエネルギー、またはフットボールの試合に行くとき、そのエネルギーは他に類を見ないものです。そのエネルギーをデジタル世界にもたらすことができれば、それは素晴らしいことです。
それを実現するための技術面、プログラミング言語の側面について話し続けてください。’verse’は関数型論理言語です。なぜなら、それが最も単純で強力な言語を同時に作る方法だと思うからです。
1970年代、初期のプログラミング言語の一つであるパスカルを構築したプログラミング言語設計者のニクラス・ウィルトは、プログラミング言語は多くの機能を持つことによってではなく、一緒に機能し、任意に組み合わせることができる少数の機能を持つことによって高い力を達成すべきだという原則を述べました。そのため、比較的小さなセットの事柄を学ぶ必要があり、実際の知識はそれらを組み合わせてより大きなプログラムを達成する方法を学ぶにつれて得られます。
プログラミング言語の分野には長い歴史がありますが、1950年代に最初のプログラミング言語設計者が集まり、ALGOL(アルゴル)と呼ばれる最初の標準化言語を構築しました。1956年にあった会議はあまり知られていませんが、そこで現代のプログラミング言語の主要な基礎のすべてが決定されました。それはC言語ファミリーが継承したものです。
そのため、私たちは彼らによって定義された世界に非常に住んでいます。ありがたいことに、彼らは多くのことを正しく理解しました。関数の動作方法、変数の動作方法、再帰の動作方法を定義しました。感謝すべきことに、それらのことは正しく理解されましたが、いくつかの間違いもありました。
‘verse’はそれらを修正しようとしています。それが関数型論理部分です。関数型論理言語の興味深いことは、古いスタイルの言語では、式は値を生成しますが、関数型論理言語では、式はゼロ、一つ、または複数の値を生成できることです。ゼロ値を生成する場合、それは失敗すると言えるでしょう。
一つの値を生成する場合、それは成功すると言います。そして複数の値を生成して、イテレート提供する値のセットがある場合、それをイテレートできます。今日のプログラミング言語には、このゼロ、一つ、または多くの値の方法を本当に考えずに定義された機能が多くあります。
それが関数型論理言語が対処する問題です。最も基本的な例はプログラミング言語のif文です。ある条件が成立する場合、このことを行い、そうでない場合は別のことを行います。今日の言語では、これはブーリアン型の変数や、ブーリアンを生成する式で行われます。真または偽のブーリアン変数があります。
ブーリアンに評価される式があります。だから、多くのこれらの機能を一緒に使用して条件を表現できます。しかし、そのブーリアン式の評価で行った計算は失われてしまいます。関数型論理言語では、条件はそうしません。それは成功して値を生成するか、失敗します。
成功すれば、then分岐に行きます。操作が成功しました。今、あなたはこの一つのコードのバッチを実行しています。そして式が失敗した場合、else分岐に行きます。しかし、そのエキサイティングなことは、成功または失敗する式が値を生成し、変数をバインドできることです。
それらはthen分岐でアクセスされます。そのため、一連の変数が変数に成功的にバインドされた場合にのみ条件の内部に到達できる条件を書くことができます。これにより、条件が保持されるかどうかをテストし、それらのテスト結果を使用することができます。それによって、より高いレベルの信頼性が得られます。
そして従来の言語のfor文は、単に一連の値を反復的に生成するために一緒に織り込まれた命令型コードの集まりです。for文の中で複雑なことを行うのはかなり厄介で、イテレータなどのようなますます複雑な構造を構築することになります。
関数型論理言語のアイデアは、for文が複数の値を生成でき、ゼロ値を生成するとゼロ回のイテレーションを行い、多くの値を生成するとそれらすべてをイテレーションとして通過するということです。ネストされたループの代わりに、条件やfor文の中で、SQLクエリのように見える任意のものを書くことができ、一連の変数をバインドし、一連のテストを行い、イテレートする順序で一連の結果を生成し、それらすべてを処理して結果を生成することができます。
だから、一種のSQLクエリの力、データ構造に対する大規模な複雑なクエリの力を得ることができます。言語の中で、あなたのコードは単に単純な反復操作を実行しているだけです。そのため、データベースと通常のプログラミングの両方の利点をより均一な方法で得ることができます。
この力の源は、ユーザーが値を生成するだけでなく、失敗する可能性のある関数も書けるということです。質問に答える関数を書くことができ、その答えは「はい、私の値はこれです」または「いいえ」のどちらかになります。これらを組み合わせて任意のクエリを作成できます。面白いことに、これはC++の動作方法ではありません。
C++からVerseに移行するEpicのプログラマーたちが最初にVerseコードを書くとき、彼らはC++スタイルでVerseコードを書こうとします。それが実際には優れたC++や優れたVerseよりも複雑なコードになってしまいます。しかし数ヶ月後には上達して、以前よりもコンパクトで素晴らしいコードを書くようになります。一方、これまでプログラミングをしたことがなく、フォートナイトのコンテキストで初めてプログラミングを学ぶユーザーを見るのは本当に興味深いことです。
これらのユーザーはこの考え方を直感的に理解します。プログラミングはこのように機能すると単に想定し、私たちが内部で書いているものよりもはるかに高度で興味深いforループや条件文を書いています。それは彼らが基本的な概念を理解しているからです。
まあ、あなたは本当に多くの興味深いことを言いました。まず、多くの人々がVerseで初めてプログラミングを学んでいることは非常に興味深いです。これはプログラミングを見る非常に異なる方法であり、あなたが言うように、ある意味では非常に直感的なプログラミングの学び方です。この論理言語には多くの特性があります。
そのひとつは、まあ、コンフルエンスについても話せますが、正確性についても。コードの正確性を証明する能力、つまりバグのないコードを書くのが基本的に簡単になる点です。メタバースを構築する際の重要性について話していただけますか?
そうですね。メタバースの課題は、まず、時間とともに進化する巨大なコードベースがあり、それが多くの作者によって書かれているということです。毎秒どこかで新しいモジュールが更新されるかもしれません。そして、この決して停止することのない常時稼働シミュレーションでは、すべてがその場でライブアップグレードされることを期待しています。
その重要な要素のひとつは、すでに公開したものの更新をリリースし、それが以前にリリースしたものと下位互換性があることを確認する能力です。それは本質的に型チェックの問題であり、新しいインターフェースが古いものと下位互換性があるかを確認することです。
それは言語の型システムに行き着きます。型システムに関しては長年にわたり非常に興味深い研究がなされてきました。残念ながらその多くはC++プログラミング言語に取り入れられていません。しかし、このフィールド全体のいくつかの分岐が見られます。
JavaとCが初期に行い、その後放棄して更新しなかった本当に興味深いことのひとつは、ある型のセットを持つモジュールを今日公開した場合、将来的にそのモジュールにどのような変更を加えても下位互換性を壊さないかという非常に厳格なルールを定義することでした。
これは型チェックの問題です。例えば、整数を返すと約束する関数があるとします。将来的には、自然数を返すと言うことができます。なぜなら、すべての自然数は整数だからです。それは下位互換性のある変更です。しかし、有理数を返すとは言えません。なぜなら、一部の有理数は整数ではないからです。
そのため、システムはそのような変更を拒否するべきです。しかし、型チェックについての遥かに興味深いことは、1930年代に実際になされた認識でした。特定の方法でプログラミング言語の型システムを設計すると、それが変数の型を表現するだけでなく、役立つようになるということです。
すべての型システムが行う伝統的なことは、「変数Xは整数型である」というように宣言することです。しかし、型システムを特定の方法で設計すると、型は定理、つまり数学的定理を表現できるようになります。ピタゴラスの定理は素晴らしい例です。しかし、プログラムにおける定理の一例は、「この関数は整数の配列を受け取り、同じ整数の配列を返すが、結果はソートされている」というものです。
それを定理として表現し、この型理論のシステムに従うと、そのソート関数を書く人が実際に結果をソートしたことを証明するよう要求できます。つまり、型は定理であり、特定の方法で構築された値はそれらの定理の証明になります。現在、数学の文献では、より多くの定理がメカニカルに証明されています。
数学者たちはコンピュータによって正しい証明であることが検証される方法で定理を証明しています。昔の数学では、人々は言語で書き記していました。ユークリッドの定理をすべて見ると、それは単なる言語でした。古代ギリシャ語で書かれた証明のステップを読者に示し、それが真であると納得させるためのものでした。
1930年代以降、数学者たちは厳格な形式的証明に向かって移行しました。機械的に検証できる一連のステップがあります。彼らは物事を証明しています。そして、数学者が定理のコンピュータ証明を行ったと言うとき、彼らが本当に意味しているのは、Leanのような証明言語やCoqのような定理証明器、他にもいくつかの証明言語でプログラムを書いたということです。コンピュータがチェックした機械的な証明を書いたので、嘘をつくことは不可能です。
あなたがあることを証明したと言い、コンピュータがそれを検証すれば、それは間違いなく真です。これは数学的証明言語の特徴ですが、徐々にプログラミング言語にも取り入れられているアイデアでもあります。Verseの目標は、そのアプローチと技術を完全に採用する最初のメインストリームプログラミング言語になることです。
それだけでなく、ユーザーフレンドリーな方法で採用することです。そうする必要はありません。この考え方は、変数の型にだんだんと多くの情報を組み込みたいということです。プログラミング言語に求めたい特性は、コンパイラがプログラムを受け入れ、エラーを表示しなければ、プログラムは機能するはずだということです。
人間が間違える方法はたくさんありますので、その理想を完全に達成することはないでしょうが、コンパイラがより多くの人間のコーディングエラーを捕捉し、ユーザーに何が間違っているのかを伝えることを可能にする言語機能をより多く持つことで、それに近づくことができます。これは、メタバースにおいて非常に重要になります。
実行時に発見されたバグを修正するコストは、出荷済みのプログラムのバグを修正するコストよりも何百倍も高いのです。自分のコードを実行しているときに観察したバグを修正する場合、コードの一行を修正するだけでバグは修正されます。
しかし、それをライブで修正する場合は、パッチをリリースし、パッチノートをリリースし、パッチをテストし、導入された可能性のある他のすべてのバグをチェックする必要があり、すべてが非常に高価になります。ですから、Verseプログラムとアプローチの本当の目的は、コンパイル時にこれらのエラーをすべて捕捉し、メタバースを非常に信頼性の高い場所にすることです。
コンパイル時にプログラムが正しいことを証明できる世界が見えますか?何かの正確さという意味で。事柄が大きくなるにつれて、証明することは計算上難しくなりますよね?この分野全体で本当に重要なことは、これらの機能を徐々に採用し、本当に必要なところに適用できるべきだということです。
例えば、暗号化アルゴリズムのようなものを書いている場合、それは物事を証明するのに良い場所です。エコシステム全体で使用されるデータ解凍ツールを書いている場合、それがメモリをオーバーランしないことを証明することは実際に非常に重要です。今日、セキュリティの脆弱性が発生する理由の多くは、C言語では、コンパイラが捕捉できたかもしれないのに、この機能がないために捕捉できなかったからです。
これを怖いものと見るべきではありません。CやC#、Javaのような型言語で作業している人は誰でも、常に定理を証明しています。整数型の変数があり、それに何らかの値を割り当てると、その値が整数であることをコンパイラに証明しています。そうでなければ拒否されるでしょう。
より高度な証明を追加していくと、システムから合成特性が生まれ、それらは使いやすく、人々が好んで使用するようになります。将来的に、AIが特定の種類のコードを書くのを手伝う場合、AIの大きな問題は、何かをするよう依頼し、何かを行うコードの断片を書くよう依頼すると、完全に有効で、コンパイルされるけれど、間違ったことをするコードの断片を与えるかもしれないということです。
この配列をソートする関数を書いて、それがそうしたことを証明しなさいと言える言語があれば、AIは実際に証明を書くことができ、コンパイラがエラーを出さなければ、それが実際に配列をソートしていることを信頼できます。そうでなければ、AIに戻って「それは機能しなかった」と言うことができます。
しかし、私たちのプログラムが私たちが言うことや、それらが行うと考えることを実際に行うことを知っている点に到達することは非常に重要なことです。ちなみに、あなたがカリー=ハワード対応について私にメモを送ったことを言及すべきでしょう。私はその話題について深く掘り下げましたが、それはプログラムと証明の間の数学的関係を示す魅力的な分野です。
その通りです。これは1930年代の結果であり、ほとんど誰も知らないコンピュータサイエンスの最も重要な結果の一つです。彼らは型システムの厳密な分析と1930年代のプログラミングの定式化を行い、数学的論理で証明できるすべてのことは、特定の機能を持つ型システム内で証明できることを確立しました。
証明とは何かを分解すると、整数が存在するという証明は、5のような整数です。だから「var x int」のようなものがあり、「x = 5」と言うとき、あなたは5が整数であることをコンパイラに証明しています。それは二次的な性質として現れますが、もっと高度なことを証明することができます。
定理Aが真であり、定理Bも真であることを証明したい場合、定理Aを証明する値と定理Bを証明する値のペアを提供する必要があります。これは証明の連言法則です。選言法則もあります。そして、証明のための含意法則もあります。
それが実際に関数によって満たされることが分かります。プログラミング言語で関数を書くとき、あなたは「これをくれれば、あれをあげますよ」と言っています。何らかの型のパラメータをくれれば、別の型の結果を提供します。その関数を書くことで、あなたはこのようなものが与えられれば、別のものを生成できることを証明しています。これは含意の証明です。わずか7つの法則で、型システム内のすべての数学的論理を構築できます。
プログラミング言語において十分な注目を集めていない重要なことの一つは、プログラミング言語のいくつかの側面は単に主観的だということです。それらはプログラミング言語設計者の単なる機構です。例えば、Guido van Rossumはインデントを特定の方法でサポートするようにPythonを決定しました。
人間の表記法や物事の命名を扱っている限り、常にその主観的な層があります。しかし、プログラミング言語の他の部分は主観的ではなく、基本的であるべきです。型システムを見ると、数学的証明を与える型システムの方法があり、数学的証明を与えない他のすべての型システムの方法は単に劣っており、最終的には拒否されるべきです。
コンピューティングの仕事の一つは、過去に実際に何を正しく行い、何を間違えたのかを特定し、間違ったことをすべて実際に戻って修正することだと思います。そうしなければ、我々のシステムは最終的に自身の複雑さの下で押しつぶされることになります。過去一年間でソフトウェアやサービスにおける恐ろしい脆弱性の大規模な発表がありました。
ある国家が電話傍受のための通信監視システムの多くをバックドア化したことが判明しました。それは大きな問題ですが、最終的にそれを分解すると、おそらくいくつかのCプログラムのバッファオーバーランのためです。プログラミング言語に関するこれらの決定は長期的な影響を持っています。
何億人もの人々が使用するこれらのシステムを構築する際に、あなたが実際にどのように最初の原則からそれを構築するかについて再考していることは本当に興味深いことです。Verseの主要な設計目標は、初めてのプログラマーが学ぶほど単純であること、あらゆる種類のコードやデータを書くのに十分に一般的であること、チームでプロジェクトを構築、繰り返し、出荷する上で生産的であること、可能な限り多くの種類の実行時の問題を捕捉するために静的に検証されていること、つまりコンパイル時に我々が話し合ったように、リアルタイムのオープンワールドマルチプレイヤーゲームのためのパフォーマンスがあることです。パフォーマンスについてはあまり話していませんでしたね。すぐにそれについて質問できればと思います。
完全であること、つまり言語のすべての機能がプログラマーの抽象化をサポートしていること、時代を超越していること、今日のニーズと予見可能な将来のニーズのために構築されていることです。そして、我々が話し合った設計目標がいくつかあります。強く型付けされており、関数型プログラミング、オブジェクト指向プログラミング、命令型プログラミングの最良の部分を使用するマルチパラダイムです。
可能な限り決定論的であること、つまり何度も実行すると毎回全く同じ方法で実行されることです。利用可能な式についてあなたが話したことは本当に魅力的です。この中にはとても多くの素晴らしい機能があります。投機的実行の並行性について話してもらえますか?あなたが必要とするスケールで並行性を可能にするVerseの特徴は何ですか?
これは私たちがこの世代で解決しようとしている最大の技術的問題の一つです。並行性を制御して、通常のプログラマーが普通のコードを書くだけで達成できるようにすることです。それは難しいことです。単一スレッドのコンピュータでのプログラミングでさえ十分難しいですが、それは完全に予測可能です。
言語が決定論的であり、同じコードを何度も実行すれば、常に全く同じことを行い、何が起こるかについての予測不可能性はありません。変数を特定の順序で読み書きしており、常に同じ動作を見ることになります。
問題は、複数のスレッドや一つの問題に一緒に取り組む複数のデータセンターノードを導入すると、それぞれが異なるデータを読み書きし、進行しながら世界の状態を変えたいということです。今日でも、実世界のプログラムでの並行性のほとんどは手動で達成されています。
プログラマーは複数のスレッドで実行される可能性のあるこのコードを非常に注意深く書いており、予測可能な結果を得るためにデータへのアクセスを各スレッド間で交渉しています。それは信じられないほど難しいです。
アンリアルエンジンの5世代すべてにおいて、私たちは毎回、すべてのゲームプレイコードを手動で複数のスレッドにスケールアップしようとしないことを決定しました。それは私たち自身だけでなく、アンリアルエンジンをライセンスし、ゲームを構築しようとするすべてのパートナー企業にとっても、失敗する可能性が高すぎるのです。それはただの危険な選択です。
並行性にはさまざまな解決策がありますが、それらはすべて最適ではありません。一つの試みられた解決策は、「この問題を全く解決しようとしないでおこう。プログラムをマイクロサービスに分解しよう」というものでした。Amazon.comのような大規模なオンラインウェブサイトのほとんどは、異なるサーバーが互いにメッセージを送り合うことで交渉する何百ものマイクロサービスで動作しています。そしてプログラマーがそれらを非常に注意深く書くことで、最終的には注文を受け付け、それを台無しにしないように信頼性を確保しています。
しかし、これはメタバースには全くスケールしません。メタバースには何百万ものプログラマーがいて、そのほとんどはコンピュータサイエンティストではありません。彼らはほとんどが趣味家や愛好家、初めてのプログラマーで、楽しみのためにプログラミングをしています。彼らは並行して実行している異なる計算間のすべての依存関係を想像することはできないでしょう。
しかし、1980年代に行われた驚くべき基礎的な研究があり、それはHOLL並行性に関する論文によって非常に現実的なものになりました。「Composable Memory Transactions」が論文の名前で、プログラムへのトランザクション更新のシステムについて説明しています。トランザクションのアイデアは、トランザクションはメモリに対して一連の操作を行うコードのブロックだということです。
読み取りや書き込みを行うかもしれません。注文を処理するかもしれません。注文を受け付けたり拒否したりするかもしれません。お金をある銀行口座から別の口座に移すかもしれません。そして条件付きの決定を下すかもしれません。例えば、「あなたは自分の口座から100ドルをこの人の口座に移したいと言いました。あなたに100ドルあるかどうか確認します。なければ、拒否します。100ドルあれば、あなたの口座から100ドルを引き出し、他の人の口座に追加します。」
トランザクションがなければ、誰もがランダムに互いの銀行残高を追加したり引いたりしていると、誰かが銀行残高を読み取り、100を引き、それを書き出すかもしれません。しかし、その間に誰かが別のものを書き込んでいれば、一貫性のない銀行残高が発生する可能性があります。これらがすべて特定の順序で実行されることを確保する方法がなければ。
トランザクションのアイデアは、プログラム全体を更新に分割する方法だということです。自己完結型の更新であり、任意の量の計算を行いますが、単一スレッドの方法で実行する必要があります。ゲームエンジンの場合、それはゲームプレイオブジェクトの更新です。
フォートナイトをプレイしているとき、ゲームプレイオブジェクトが見えます。他のすべてのプレイヤーはゲームプレイオブジェクトです。すべての敵はゲームプレイオブジェクトです。すべてのロケットやプロジェクタイル、車、動いて相互作用している物は、世界の固定的な静的な部分ではなく、それぞれが別のゲームオブジェクトです。
これらの各オブジェクトは、60フレーム毎秒でフレームごとに1回の更新レートで更新されます。フォートナイトバトルロイヤルのゲームプレイでは、100人のプレイヤーがいると、毎フレーム何万ものオブジェクト更新が行われています。何十億人ものプレイヤーがいるシミュレーションでは、それよりもはるかに多くなるでしょう。
現在、それは各ゲームセッションで単一スレッドで行われています。これがフォートナイトの100人プレイヤーの制限の理由です。サーバーを最大限に活用しても、今日おそらく140人くらいまで増やせるかもしれませんが、それは数千人や数百万人、数十億人には到達しません。
私たちが必要としているのは、私たちのコードを魔法のように自動的にスケールするテクニックです。トランザクションがそのアイデアです。トランザクションは、その全体が実行されるコードの粒子です。
このトランザクショナルメモリの概念のアイデアは、プログラマーが完全に普通のコードを書き、完全に普通の方法で変数を読み書きし、並行性について全く心配する必要がないようにするということです。そして、システムは、今日のプログラム、コンピュータは単にあなたのプログラムを実行します。プログラミング言語レベルでの推測は行われていません。
トランザクションのアイデアは、私たちが適用する必要がある一連の操作があり、それらの大規模なセットを並行して適用しますが、それぞれがすべてで共有されているグローバルメモリから読み書きする代わりに、すべての書き込みをローカルに追跡します。データの変更をグローバルメモリに書き出さず、そのトランザクションだけのためのバッファに保存します。
そのコードにとっては、それがグローバルシステム上で実行され、グローバルゲーム状態に影響を与えているように見えます。しかし、それはそのトランザクションだけに分離され、後で検討するために取っておかれます。何百、何千もの更新を同時に実行し、どれが読み書きの競合を持っていたかを確認します。なぜなら、2つのトランザクションが同じデータを読み書きしなければ、それらはどちらの順序でも、あるいは同時に実行しても、最終結果は変わらないからです。
順序は重要ではありません。このようなシステムを想像し、ゲームプレイオブジェクトの何百万もの更新を並列に任意に実行するのは非常に興味深いです。それが我々が話していることを可能にするものです。つまり、何千万もの人々が一つのシーンに一緒にいるということです。
まさにその通りです。重要なのは、これらの更新を投機的に実行し、競合がないことを確認するまでそれらの変更をメモリにコミットしないということです。10,000個のオブジェクトを更新し、9,000個が競合なしだったことがわかるかもしれません。そのため、それらの9,000個のオブジェクト更新をメモリに適用し、それらはどの順序で実行しても結果は変わらないでしょう。
残りの1,000個のオブジェクトがあります。今度はそれらを再度実行する必要があります。それらを別の方法で実行してみて、最終的にメモリにコミットさせるようにします。その間、それらの計算はすべて捨てて、後で再度行います。
これを行うことで、プログラマーが対処するプログラミングの問題から、私たち言語設計者が対処する言語の問題に移行しています。百万人に課せられる膨大な苦痛を、少数の人々に課せられる膨大な苦痛に移行しています。実際にこれを機能させる必要があるのは少数の人々です。
それは素晴らしいです。本当に信じられないことです。Verseの現状はどうですか?そして、あなたが概説しているのは、もし成功すれば、これがアンリアルエンジン6の大きな部分になるということですね。タイムラインはどうなっていますか?現在の状況はどうですか?
並行して多くのことが進行しています。Verseの鍵となるのは、私たちが望むすべての機能を持つ言語の究極のバージョンを指定してきたのに対し、時間の経過とともに言語のより控えめなバージョンを出荷しており、過去1年半で数十のアップデートをリリースしています。
この考え方は、出荷バージョンが時間の経過とともにより多くの機能を獲得していきますが、各バージョンは古いバージョンとの下位互換性を維持しながら、継続的に改善し、私たちが進むにつれて究極のバージョンに近づいていきます。私たちはこの実験を完全にフォートナイト用のアンリアルエディタの世界内で行ってきました。
現在、私たちはこれをテストし、アンリアルエンジンを使用してすべてのプロジェクトに提供する前に、フォートナイトクリエイターとメタバースのユースケースでのみ繰り返し実験しています。この考え方は段階的に改善し、構築していくことです。現在のUEFnはプログラミングのための機能が比較的少ないのです。より多くの機能が必要であり、追加するものすべてがフォートナイトクリエイターにとって世界をずっと良い場所にするのです。今年の間、数ヶ月ごとに主要な新しいAPIを追加しています。
一方、スタンドアロンゲームを構築しているアンリアルエンジンのライセンス利用者は、C++を通じて既にエンジン全体にアクセスできます。彼らはAPIに対して大規模な期待を持っているため、将来のゲームプレイを構築するために必要となる必須機能をすべて構築するまで、これを彼らにリリースすることはできません。
そのため、私たちには進捗の二つの異なる流れがあります。ゲーム開発者向けのアンリアルエンジン5と、フォートナイトコミュニティを対象としたアンリアルエンジン5です。両方に適用されていない特定の開発部分があります。
アンリアルエンジン5の機能のすべてが実際にフォートナイトで利用可能なわけではありません。一部はまだ解決できていないか、プラットフォーム非依存の方法で7つすべてのプラットフォームに展開できる段階に達していないためです。これらすべての異なる開発の流れが集まる場所がアンリアルエンジン6です。それは数年先のことです。
正確な時間枠はありませんが、おそらく2〜3年後にプレビューバージョンが見られるかもしれず、それに向けて継続的に進歩しています。それは素晴らしいですね。言語の究極のバージョンがあり、常に取り組み、考え続けているのですね。
そして、大勢の人々が使用しているが、まだフォートナイト用のアンリアルエディタという制約された環境内にある言語の出荷バージョンがあります。フォートナイトゲーム用のものです。そして、フォートナイトのコンテキストで学んだ教訓をフォートナイトを含むあらゆる種類のゲーム用のシミュレーション世界を作成するという、より一般的なコンテキストに統合するのを待っているより一般的なアンリアルエディタ、アンリアルエンジンがあります。
フォートナイトで言語をテストする場であり、究極的にどのようなものになるかを見据えながら、私たちが言及したすべての機能を提供するために必要なセットアップもしています。素晴らしいです。U6の目標は両方の世界の最良の部分を合わせることです。
フォートナイトコミュニティとライセンス利用者にとってはるかに簡単なゲームプレイプログラミング、あらゆる種類の大規模なシミュレーションに対するより大きなスケーラビリティ、より使いやすさ、つまりそれに精通し経験のあるプログラマーを雇うのが容易になります。また、すべてのゲーム開発者が完全な展開能力を持ち、ゲームを一度構築して、どこにでも出荷できるようにすることも確保します。
これの究極のバージョンは、ゲーム開発者がどんな種類のゲームでも構築できるようにします。そのゲームをフォートナイトアイランドとしてフォートナイトに出荷し、プレイヤーがそこに入り、フォートナイトのアイテムや化粧品を持ち込み、適切に相互運用できるようにするか、スタンドアロンゲームとして出荷するか、またはその両方が可能です。
スタンドアロンゲームとして出荷する場合でも、この時間枠内にフォートナイトアイテムエコノミーをあらゆる種類のサードパーティ開発者に開放する予定なので、オープンエコノミーを逃すことはないでしょう。理想的には標準化団体を通じてですが、複数のフェーズがあるかもしれません。
スタンドアロンゲームを出荷することを選択した場合でも、フォートナイトアイテムがあなたのゲームで機能し、あなたのゲームアイテムがフォートナイトで機能し、アイテムエコノミーが全体的なメタバースエコノミーと統合されるようにできます。マシュー・ボールが過去数年間にわたって文書化してきたゲーム業界の本当の中核的な問題を解決します。
ちなみに、マシュー・ボールは本当に役立ってくれました。彼は素晴らしい本を書きました。皆さんにチェックを勧めます。更新バージョンがあります。
インディー開発者について少し質問させてください。多くのソロ開発者がアンリアルエンジンを使用してビデオゲームを作成しているのを見ました。個人でビデオゲームを作成している人たちです。Choo Choo Charlesは素晴らしいビデオゲームだと強く推薦します。ギャビン・アイゼンブ、素晴らしい人です。
彼はそのゲームをソロで作成し、かなり人気があると思います。彼はビジュアルを使用したと言っています。彼はC++さえ使用せず、ビジュアルスクリプティングを使用しました。ブループリントを使用しました。そうですね。
つまり、人々はチェックアウトするべきです。インディー開発者をサポートしましょう。ギャビンをサポートし、そのような人々全員をサポートしましょう。サポートすべき天才とアーティストがたくさんいると思います。クレイジーな夢想家たちをサポートすることが重要です。
それはそれとして、Epicがギャビンのようなインディー開発者をサポートする方法は何だと思いますか?彼らに超能力を与えて、少なくとも彼らがアートを続けられるだけの十分なお金を稼げるようなゲームを作ることができるようにするには?
それは本当に生産性に関することです。ゲームで成功するためには、素晴らしいゲームを持つ必要があります。もし以前に誰も構築したことがないタイプのゲームを対象としているなら、巨大なジャンルで大きな期待がある競争よりも、より小さく、よりシンプルなゲームを構築できるかもしれません。
しかし、重要なのは、誰かが合理的な時間内でそれを行い、完成させ、出荷し、成功裏に維持できるようにすることです。ツールはその大きな部分です。ツールをできるだけ生産的にすることです。しかし、他にも多くの側面があります。
例えば、コンテンツマーケットプレイスを持つことは大きなことです。手元にあるコンテンツの山、一部は無料、一部は有料、他のクリエイターによって構築されたものは、小さなインディーチームが大きなゲームを構築することを可能にし、ゲームのユニークなコンテンツに集中できるようにします。
彼らのゲームプレイを書き、彼らが望むように環境をレイアウトすることができますが、すべての木や岩を構築する必要はありません。なぜなら誰かがすでに一つを構築しており、それらはおそらくあなたのゲームに完全に適しているからです。時間が経つにつれ、もっと多くのものが出てくるでしょう。
また、コンテンツクリエイターとして生活しているインディー開発者も多くいます。彼らはFabマーケットプレイスやUnity Asset Storeにコンテンツをリリースして、それで生計を立てます。しかし、労働の専門化は本当に価値のあることです。
初期の頃は、基本的に一人が一つのゲームを構築していました。1980年代のゲームの多くはそのように構築されました。時間が経つにつれ、アーティストが専門化し、次にプログラマー、そしてゲームプレイプログラマーとエンジンプログラマーが分かれました。
今ではテクニカルアーティストがいて、AAA 3Dゲームに貢献する何十もの異なる専門分野があります。それらのコンテンツの断片をモジュール化できればできるほど、自分で構築する代わりに既製品を手に入れたり、エンジンに合成させたりすることができ、クリエイターがものを速く、成功裏に作ることができるようになります。
多くの他のことの中で、あなたは哲学的・精神的に独占企業と戦ってきました。その一つはデベロッパーから30%を請求しているAppleのマーケットプレイスです。AppleやValveなどの企業がそのような収益の切り取りを請求すべきではないという考えについて話していただけますか?
非常に基本的な原則から始めましょう。私が最初に所有したコンピュータはApple 2 Plusでした。スティーブ・ワズニアックによって設計され、Appleによってマーケティングされたもので、その後IBMのPCも使いました。
当時、誰でもコードを書くことができました。コンピュータは文字通りプログラミング言語のプロンプトで起動しました。プログラムを書かずに他の人のプログラムを実行するには、実際に作業をする必要がありました。それは信じられないほど力を与えるものでした。
誰でもプログラムを書くことができました。誰でもフロッピーディスクに入れることができました。誰でも友達と共有することができました。誰でもそのコピーを作り、店に置き、販売し、ビジネスを構築することができました。
彼らは完全に、大手テック企業の許可を求めることなく、望むことを何でも行うことができました。IBMからでさえ、当時地球上で支配的なコンピュータ企業だったIBMがIBM PCをオープンプラットフォームとしてリリースしたことを覚えています。
これは魔法のような素晴らしい時代であり、世界中の技術に関して無比の経済的進歩の時代だったということが私の心に強く刻まれています。時間が経つにつれ、大企業は自分たちがソフトウェアメーカーが独自にソフトウェアをリリースすることを遮断し、ブロックできること、ソフトウェアメーカーが顧客と直接ビジネスを行うことをブロックできることに気づきました。
私はこの慣行を常に恐ろしく虐待的だと見なしてきました。コンピュータや電話を買うとき、あなたはそれにお金を使います。それはあなたのお金であり、そしてあなたはその電話を所有しています。Appleがあなたが他の開発者から直接アプリをインストールすることを遮断する絶対的な理由はありません。
あなたが望むなら彼らのウェブページにアクセスするか、自分自身のアプリを書いて、開発者アカウントを取得せずに、彼らの官僚主義を通過せずに、自分自身で実行することができるはずです。そしてアプリを取得する消費者が開発者と直接ビジネスを行えない理由はありません。
あなたはすでにその電話を買いました。なぜAppleはあなたが行うすべての商取引に30%のジャンク手数料を追加するべきなのでしょうか?そしてなぜ彼らはそれを一部のものには適用し、他には適用しないのでしょうか?私はこれを深く虐待的だと常に見なしてきました。
それはかつてアプリとソフトウェア経済を支えた競争エンジンを遮断します。それはWindowsやインターネット上ではまだ活気ある競争エンジンですが、モバイルアプリではもはやそうではありません。なぜならこれらのストアが出現し、ユーザーに有用な価値を提供していないからです。
はい、それらはソフトウェアを見つけるための検索機能ですが、他の企業がより良いものを構築できない理由はありません。もしSteamがあるいはValveがiPhone用のSteamを構築したら、iPhone用のSteamはiOSアプリストアよりもはるかに優れたアプリストアになると思います。多くの人々がそれを使用し、AppleはSteamとの競争でより良いアプリストアを構築することを強制され、その結果として誰もが自分の製品を改善するでしょう。
しかし、AppleとGoogleがソフトウェア経済を推進する競争エンジンを遮断することは、すべてに対して大きな影響を持っています。30%の手数料だけではありません。30%の手数料は経済的に破滅的ですが、彼らは他のレベルの管理も課します。
AppleはiOS上のすべてのウェブブラウザがAppleよりも優れたウェブ標準を実装することを妨げています。Appleはデータストレージ機能と3Dグラフィックス機能をiOSウェブAPIで非常に制限しています。ウェブブラウザ内で実行されるウェブアプリからアクセスできるAPIです。そして彼らはそれらのアプリがネイティブアプリと競合できないようにするためにそれらのアプリを意図的に弱体化させています。
ウェブアプリからこれらの機能を奪うことで、ウェブアプリがネイティブアプリと競合することを妨げています。もしAppleがメタバースをウェブを扱うのと同じように扱うなら、彼らは「Appleのメタバースエンジンのみが使用可能である。アンリアルエンジンは許可されない」と言うでしょう。そして彼らはメタバースに自分たち自身の制限をすべて課し、すべての商取引をAppleを通じて強制するか、それが非競争的で悪質になり、競合できないようにするでしょう。
彼らには他のアプリ開発者を不利にするために使用する巨大な一連の反競争的テクニックがあります。例えば、特定の種類のアプリを構築できるのはAppleだけであるとか、特定の機能を統合できるのはAppleだけであるとか言っています。
ヨーロッパでは、DMA法がAppleに競合するストアを許可することを要求していますが、彼らは「ストアはストアだけであるべきである」と言っています。Facebookにストアを組み込むことはできません。ソーシャルネットワークをストアに組み込むことはできません。ストアはストアだけでなければなりません。なぜならストア以上のものがストアであれば、私たちとより効果的に競合できるかもしれないからです。
それはソビエトの用語を使うと、防御と深さの戦略です。彼らは競合しようとするあらゆる試みに致命的な一連の障壁を構築しています。一つの障壁が克服されても、他の障壁は残り、全体的な計画を遮断します。
それはヨーロッパで展開されており、AppleはEpicゲームストアを立ち上げることを可能にしましたが、Epicとビジネスを行いたいクライアントの両方にとって非常に困難で非競争的にしたため、欧州連合がDMA法を本格的に施行し、Appleに厳しい重大な罰則を課してコンプライアンスを強制するまでは成功のチャンスがありません。
もう一度言います。彼らがやっていることは間違っていると思います。公的な圧力と政府の圧力によってプラットフォームを開放することを願っています。また、Appleを愛する人間として、これはAppleにとっても良いことだと思います。
会社において自然なことは、閉じて管理し、競争を潰したいという欲求です。しかし、Appleには優れたエンジニアがいっぱいいます。開放して勝利してください。これにより、Appleストアを改善するための正しい種類の競争的なインセンティブが生まれます。彼らは素晴らしいインターフェースを作ることに優れていますが、競争は剣を研ぎすますでしょう。これはすべてをずっと良くするでしょう。
公的な圧力がたくさんあることを願っており、あなたがこのように声を上げていることを深く感謝しています。圧力をかけ、人々に「これは間違っている」と言うのは大丈夫だということを知らせています。ありがとうございます。競争はみんなをより良くします。
独占企業が競争を強いられると、突然その独占企業の製品はずっと良くなります。消費者への提供も良くなります。Appleが最高になり得る多くの領域があるのが見えますが、彼らが持っているものは本当に本当に酷いものです。これらの古い政策に固執する古い警備隊のリーダーシップが、自分自身をすべての開発者、すべての規制当局の敵にしており、それは最終的に彼らに大きな損害を与えるでしょう。
新しい世代が来て、明るい未来への道を描くのを待ちきれません。EpicはAppleと素晴らしいパートナーシップを10年以上持っていました。デモやパートナーシップ、技術使用を一緒に行い、素晴らしいことを成し遂げました。スティーブ・ワズニアックの元々の見解を取り戻すAppleがあればいいなと思っています。
Apple 2は素晴らしいものでした。完全にオープンなプラットフォームでした。Apple 2のマニュアルはすべてのROMの一覧を含んでおり、ROMのソースコードも含まれていました。何が起きているのかを正確に理解でき、そこから学ぶことができました。コンピュータ全体のハードウェア回路図も含まれており、周辺機器を作成して接続する方法を学ぶことができるオープンなエコシステムでした。そのようなAppleが再び世界で最高の企業になるでしょう。
現在のAppleは単に歴史の間違った側にいて、変わる必要があると思います。EpicとAppleが一緒に前進し、一緒に繁栄する道を見つけ、Appleが競争をより良く受け入れることを願っています。
この会話で感心するのは、あなたがSteamについて好意的な言葉で何度も言及していますが、Epic Game Storeについてはほとんど言及していないことです。あなたは多様性、自由を望んでおり、人々が最良のものを選択できるようにすることで、人間同士が自由に交流できる大きなネットワークを作りたいということが伝わります。
さて、Epicが数年前に競争的圧力を作り出したのは、Epic Games Storeを立ち上げ、Steamの30%の収益カットではなく、12%の収益カットに切り替えたことでした。「これはそんなに高いカットであるべきではない」という競争的圧力を生み出しました。
これは素晴らしいアイデアだと思いました。今でも素晴らしいアイデアだと思います。素晴らしいことです。この会話の準備をするにあたり、インターネットを見てみると、EGS、Epic Games Storeに対する多くの批判がありました。
まず、インターネットはドラマと批判でいっぱいであることを言っておくべきです。素晴らしいものを称える十分なことがありません。インターネットというブロブに対して一つのリクエストをできるなら、素晴らしいものを称えることができないでしょうか?批判もしていいですが、称賛が足りません。
批判の二つの方向性は、ストレートにランチャーインターフェースが使いにくく、Steamの多くの機能が欠けているということです。そして二つ目の批判は、Epic Game Storeにあるいくつかのゲームとの排他的契約についてです。
まず、12%に対して大きな賛辞とお礼を言いたいです。そのビジョンについて話していただけますか?次に、これら二つの批判についてコメントしていただけますか?
確かに。人々がEpic Games Launcherを使いにくいと特徴づける理由の一つは、Epic Games Launcherが実際に使いにくいからです。これを改善する必要があります。そこには多くの作業が進行中です。
私は生活の質の機能に対応し、他のすべての機能よりも優先することでもっと上手くなっていれば良かったと思います。Steamには業界最高のプログラマーの多くが15年間蓄積した作業があります。Steamに取り組む遥かに大きなチームがあります。そこに費やした時間も多いです。
そのため、Epic Game Storeで何をいつサポートするかについて多くの優先順位付けの決定をしなければなりませんでした。多くの場合、商品化、ゲームの複数のバージョンの販売、通常版からデラックス版へのアップグレードの提供など、商業的な機能をサポートすることが優先されました。
他の優先事項には生活の質やランチャーのロード時間などがありました。生活の質の機能に十分な重点を置いていませんでした。これを非常に明確に複数回認識し、複数回のリファクタリングを行いましたが、それは私たちと多くのユーザーにとって間違いなく失望でした。
私たちが認識するのに時間がかかったことの一つは、それが均一ではないということです。CDNへの近さやゲームコレクションのサイズによって、素晴らしかったり本当に使いにくかったりします。それが本当に使いにくいユーザーは、不満を口にする傾向があると思います。
また、Steamランチャーも初期の頃は私の記憶によると、またはオンラインで見てみると、かなり使いにくかったことも言っておくべきでしょう。Epic Game Storeに対する批判の一つは、「Steamのすべての機能がない」というものでしたが、私たちは決してSteamのすべての機能を持ちたくありません。
Steamにはゲーム用のフォーラムがあります。私たちはフォーラムを作りたくないと決めました。そして私たちのパートナーと話すと、一般的に彼らは私たちが彼らのゲーム用のEpic Game Storeフォーラムを作ることを望んでいませんでした。なぜなら、彼らが好むコミュニケーションチャネルがすでにあるからです。
ソーシャルメディアや複数のプラットフォーム、Redditなど、ゲーマーがゲームについて議論するための場所がたくさんあり、彼らはそれらの議論がそこにあることを好みます。私たちの目標はSteamのすべてを模倣することでは全くありません。
しかし、Steamと同じくらい簡単で楽しく使えるようにする便利な機能はすべて持ちたいと思っています。前途は長いですが、再投資を続け、そこに数十億ドル規模のビジネスを構築しており、成功すると思います。
Epic Games StoreはすでにPC上のフォートナイトにおいて莫大な量のEpic Gamesの商取引をサポートしており、今ではAndroidやiOS、欧州連合でもサポートしています。それは永遠に業界の一側面であり、私たちは決して心を失うことはありません。
ある時点で、Epic Gamesのアプローチの利点がSteamのアプローチの利点を上回ると本当に感じています。特にゲームがマルチプラットフォームになるにつれて。すべてのゲーマーにとって本当に厄介なことの一つは、現実世界に多くの友達がいることです。誰もが異なるプラットフォームを持っています。
あなたのSteamの友達はXboxの友達に接続されておらず、PlayStationの友達やNintendoの友達にも接続されていません。そのため、PCゲームをPCだけのハードコアなグループに閉じ込め、他のすべての側面を難しくしています。
多くのゲームはDiscordに移行しましたが、それ自体が問題です。なぜならあなたのSteam名はDiscord名ではなく、それはPlayStation名でもありません。そのため、ゲーム内に2人の人がいて、4つの異なるIDを持っていることになり、それは最悪です。
フォートナイトのために構築したEpicオンラインサービスとソーシャルシステムを、すべての開発者にクロスプラットフォームのソーシャル機能をスーパー簡単かつ無料で提供することを目指しています。これは私たちがゲートキープしたりレントシークしたりしようとしているものではなく、人々を閉じ込めようとするものでもありません。それはただソーシャルゲームをみんなにとって簡単にする方法です。
より多くのゲームがフォートナイトのアプローチに従い、特にマルチプレイヤーゲームがマルチプラットフォームになるにつれて、メタスタス法則は業界で非常に現実的な現象です。それはいくつかのゲームを転覆させ、他のゲームの成長を引き起こしています。それは今日のゲーミングの世界を席巻する第一のトレンドです。それは「あなたのゲームは、ユーザーの現実世界の友人の何パーセントと接続できるかに応じて、二次関数的により価値が高まる」というものです。
あなたのゲームは、すべてのプレイヤーを結び付け、異なるオンラインプラットフォームの人口に分割しないことで、大幅に恩恵を受けます。そして、将来のトレンドはその方向に向かっていると思います。ValveがSteamworksをすべてのプラットフォームで動作するように開放してくれたらと思います。彼らは簡単にできたはずです。私たちはそれを行いました。
しかし、彼らはそれをレバレッジとして人々をSteam PCゲームストアにロックしておくために使用しているようです。そして、それは長期的な戦いになるでしょう。なぜなら、Steamの非常に有毒なユーザーグループがいて、彼らはEpicと私たちのストアを批判することだけに専念したsubredditさえ作成しました。
彼らはEpicオンラインサービスを使用する開発者に対して、基本的に嫌がらせキャンペーンを作成します。開発者がそうするのは、プレイヤーをプラットフォーム間で接続し、プラットフォーム間で友人を持ち、プラットフォーム間で音声を持つことができるようにするためです。しかし、突然それがネガティブなものに変えられようとしています。
EpicはデベロッパーにWin-Winの関係を望み、ゲーマーにもWin-Winの関係を望み、そしてSteamも素晴らしい仕事をすることを望んでいることは明らかです。SteamとEpic Games Storeの競争においては、一緒に素晴らしいものを作り出してほしいです。
オンラインで何かを読まなければ、それは私には明らかですが、オンラインではこの建設的ではない否定性があります。
Steamのユーザーへのポジティブなお礼と称賛を言いたいです。フォートナイトで常にあったマルチプラットフォームへの推進力に感謝します。Epic Game Storeとあなたがフォートナイトプラットフォームで行っているすべてのことでの圧力を作り出したことで、XboxとPlayStation、PCの間の障壁を破る前に。
あなたとグループの全員とフォートナイトをプレイする機会を得ました。素晴らしいインターフェース、オーディオチャット、本当に楽しかったです。数人のPC、PlayStation、Xboxの人々がすべて一緒にいるのが見えました。小さなアイコン以外は何を使っているか分かりませんでした。
これらのプラットフォームで作成したすべての障壁が消えています。そしてあなたがEpic Games Storeで、そしてフォートナイトプラットフォームで行っているすべてのことで圧力を作り出したことで、これは本当に素晴らしいことです。
これらのサイロを作成する理由はありません。なぜなら最終的にはゲーマーを最優先にし、実際の生活の友人と交流し、人間のネットワーク全体で新しい友人を作ることができるようにするべきだからです。とにかく、そのことに感謝します。その圧力を作り出してくれてありがとう。
ありがとう。それは興味深い時期でした。ソニーはクロスプラットフォームプレイを妨げる長年の方針を持っていました。私たちは長い一連の会話を持ち、最終的にはかなり厳しいものになりました。しかしソニーは最終的に方針を変え、PlayStationを開放しました。一連の非公開の会話を通じて、彼らは正しいことを行いました。
それだけでなく、ソニーとのパートナーシップは2018年のその議論以来増加しています。私たちはより緊密になり、さらに多くのことを行っています。God of Warなどのゲームからのキャラクターがフォートナイトに登場するなど、ソニーブランドのIPとの協力があります。
あらゆる種類のクロスオーバー、ソニーでのアンリアルエンジンの大規模な採用、ゲーム製作のため、Sony Picturesでの映画製作のため、Sony Musicとの音楽パートナーシップなど。それは絶対に素晴らしい関係です。
これは、歴史的な理由から将来にとってもはや意味をなさない方針に固執していた会社の素晴らしい例だと思います。そして、親密なパートナーとの真剣な議論の後に、それを修正し、素晴らしいことをしました。
今やソニーはずっと良い状況にあり、Epicも良い状況にあり、すべてのゲーム開発者も良い状況にあり、業界全体がこれらのサイロが続いていたら可能だったよりもはるかに強くなっています。
そして、もしかしたらXboxとのプラットフォームプレイをブロックすることがソニーに利点を与えるという潜在的な懸念にもかかわらず、実際にソニーはその時以来、Xboxに対する市場シェアを拡大しています。だから、それから良いことしか生まれなかったと言えます。
Appleのより良いバージョンであれば、私が上級Appleマネジメントに送ったメールを受け取り、「ああ、ここに問題があるのね。議論すべきだ。再考すべきだ。聞くべきだ」と考えたでしょう。しかし彼らはそうしませんでした。だから私たちはAppleとの5年に及ぶ戦いの真っ只中にいるのです。そして、希望的にはソニーとの15年以上のパートナーシップの初期段階にいるのです。
さあ、Appleよ、私たちはあなたを愛しています。もう少し頑張ってください。私が言及した批判の二つ目の線、いくつかのゲームとの排他的契約についてです。排他性に対してあなたは反対してきたので、これについて話していただけますか?
ここで働いている原則について話しましょう。Appleが他の企業に彼らの決済サービスを使うよう強制することはAppleの強制的な決定です。しかし、もしAppleが他の開発者に利点や優れた取引、資金など、他のポジティブなインセンティブを提供することで彼らの決済サービスを使うよう説得したとしたら、それは完全に問題ないでしょう。
一つは競争を妨げることであり、もう一つは実際の競争です。Epicはどの開発者にも排他的関係を強制したことはありません。むしろ、私たちは開発者に対して支払いやインセンティブ、マーケティング、または彼らにとって価値のあるものを提供し、その見返りに彼らが私たちのストアに排他的に来ることを交換しました。
それは彼らのゲームです。そのため、それをどう配布するかを決めるのは完全に正当に彼らにかかっています。それは彼らのゲームです。Steamを通じて配布したければそうできます。Epicを通じて排他的に配布したければそうできます。両方を通じて配布したければ、それも可能です。
もし私たちが彼らにお金やその他の価値あるものを支払い、その見返りに彼らがEpic Game Storeに排他的に来るなら、それは彼らの権利だと思います。これはEpicがSteamの市場シェアのほんの一部しか持たない弱者として、Steamと積極的に競争するためにより良いゲームの供給を提供することで働いている例です。
一部のSteamを好む消費者は、ゲームがSteamにあることを好むかもしれません。しかし各ケースにおいて、開発者は彼らがSteamにいるよりも、この排他的な契約をして利益を得ることで利益を得ると信じていると判断しました。
Epic対Google裁判での主要な証拠の一つは、陪審員に排他性の利点を指摘しようとした開幕の証拠でした。新しいストアがオープンすると想像してみてください。そのストアの外には大きな看板があり、「私たちは新しいストアです。他のストアが持っているものすべてを持っており、価格も同じです」と書いてあります。
あなたは新しいストアに行きますか?いいえ。誰も競合するストアが同じゲームをすべて持ち、すべての価格が同じであれば、Steamから切り替えることはないでしょう。そこで、私たちはSteamと強力に競争するための方法として最初に二つを検討しました。
私たちはSteamよりも良い価格でゲームを販売したいと考えました。各ゲーム開発者に支払う金額に同意することで、もしゲームが50ドルで販売され、私たちが12%取るなら、私たちは実際に価格を下げ、場合によっては損をしてでもより良い取引を提供することができました。
しかし、すぐにすべての開発者が私たちに、もし彼らがより良い価格を提供すれば、Steamは彼らにマーケティングの特集や利益を与えなくなり、コンソールメーカーも怒り、彼らの関係がすべて害されるため、より良い価格に同意しないと言いました。
つまり、強力なプラットフォームやエコシステムが開発者に価格で競争しないよう促すという潜在的な問題があります。価格で競争できないので、私たちは排他的な契約を結ぶことで供給面で競争することを決めました。そして多くの契約を結びました。
開発者に多額のお金を支払いました。ゲームからの実際の収益を超えて、開発者に純支出として10億ドル以上配布したと思います。これは多くの排他的なゲームを得るためでした。一部は成功し、一部は失敗しました。
BorderlandsはEpic Games Storeで素晴らしい成績を収めました。GearboxはEpicを通じてSteamで行ったのと同じくらいうまくいったと感じました。なぜなら、Borderlandsを望んでいたプレイヤーはBorderlandsを望み、それを手に入れるために来たからです。
一方、他の多くのゲーム、特に絶対にそのゲームをプレイするという専用のオーディエンスを持たない小さなゲームはSteamでの露出から恩恵を受けました。彼らは有機的に到達できなかったオーディエンスに到達していました。
そのため、彼らの中にはEpic Game Storeで排他的にあることで、より少ない顧客にリーチするという点で、結果的に悪くなったと私たちと彼らが結論付けたものもありました。これらの限定的な排他性契約が終了すると、彼らはゲームをSteamに置き、何が機能したか多くのデータが収集されました。
これはいくつかのゲームにとってはうまく機能し、他のゲームにとってはうまく機能しませんでしたが、競争しようとする企業、特に弱者は何らかのユニークな価値を提供する必要があります。競合他社を通じては利用できないものを提供する必要があります。
Steamを使うことを好み、Steamでゲームを買うことを好み、ライブラリを一カ所に持ちたいSteamユーザーがこれを好まないことは理解できます。しかし、競争がより良い取引をもたらすためには、競争相手が現れることを可能にする競争メカニズムをサポートしなければなりません。
もしValveがEpic Game Storeの成功を通じてEpic Game Storeと競争することを強いられたなら、開発者はより良い取引を得ることになるでしょう。消費者はより良い取引を得ることになるでしょう。そして、これらの30%の手数料はストアをサポートするために必要な実際のコストに向かってかなり低くなるでしょう。
そこには多くのことが言えますね。私はSpotifyがポッドキャストでこれをしようとするのを見てきました。弱者としてそのスペースに参入し、例えばJoe Roganとの排他的な契約を結び、そのポッドキャストはSpotifyでのみ公開されるようにしました。
個人的には、長期的にEGS、Epic Games Storeに見たいのは、Spotifyが今やっているように、排他性をまったく行わないことです。Joe Roganでさえ、彼らは手放して、広く開かれています。代わりに、インターフェースの使いにくさのない領域で競争することです。
Epic Games Storeが示す12%という基盤は、哲学的に、それが倫理的に何を表すかという点で、精神的な領域でも競争しています。それも勝つための非常に強力な方法です。今やEpic Games Storeを使う十分な数の人々がいるので、排他性から離れるのは理解できます。
競争のため、弱者が参入するために必要であることは理解できますが、それはあなたが行った多くの決断が表す自由、選択の自由の精神に反するものです。ゲームをクロスプラットフォームにし、開発者に自由を与え、ゲーマーに選択の自由を与えるということです。そういう意味で、排他性は少しそれに反するものだと思います。
ここにジレンマがあります。すべての競合するストアによる軟らかい力の行使により、ほとんどどの開発者もSteamよりEpic Games Storeを通じてより良い価格を提供することが難しくなっています。
もしEpicの収益シェア12%の効果が、Epic Games Storeでのゲームが単に22%安くなるというものであれば、それは消費者の行動を大幅に変える始めるでしょう。人々はより良い取引を求めてここに来始めるでしょう。
しかし、開発者がそれを提案したときにSteamが不快な電話をかけることにより、開発者が消費者に節約を還元することを妨げているなら、何が利用者を既存のストアから離れ、より良い取引を提供するストアに向かわせるメカニズムでしょうか?
基本的に、開発者がストアを通じて価格で競争することを恐れているなら、マルチパブリッシャーストアの間で収益シェアの約90%を持つ支配的なストアがはるかに小さなストアが競争できるように調整するために何ができるでしょうか?
そこには何らかの答えが必要だと思います。より良いUIは素晴らしいことです。Steamは非常に洗練されています。Epic Games Storeも時間とともに同じくらい洗練されることを願っています。しかし、過去15年間のあなたのライブラリ全体がそこにあるという事実をどうやって克服するのでしょうか?
開発者が自分の経済的利益を行使することを恐れている場合、Epicで販売し18%以上の収益を得ることは開発者の利益になります。既存のものに対する本当の力があり、単にそこにいて同じくらい良いというだけではそれを克服するのは非常に難しいです。
最終的には、排他性が少なくなり、競争が私が最も好む種類になることを願っています。つまり、UI、体験、そしてSteam側では12%の競争です。それが30%から開発者をサポートするために30%から12%に近づくように低下することを。
とにかく、私は大きなサポーターであり、Epic Games Storeへの批判が好きではありません。しかし、私も排他性が好きではないと言わなければなりません。しかし、世界の現実を理解しています。人々が切り替えるか、少なくとも一部のゲームを試し、体験し、ライブラリの一部を弱者に割り当てるようにするためには、何らかのメカニズムが必要です。完全に理解しており、UIが改善し続けることを願っています。
ありがとうございます。排他性についてもう一点。私たちがGoogle Playの外でフォートナイトを立ち上げ、彼らと競争するつもりだとGoogleに伝えたとき、彼らは排他性を非常に強力な競争力と見なし、上位30のパブリッシャーに出向き、何億ドルもの資金を支払い、競合他社との排他契約を結ばないことに同意させました。
これは「プロジェクトハグ」と呼ばれました。開発者を近くに抱き寄せる。そしてこれが、陪審員が彼らの慣行が違法で反競争的であると判断した主要な証拠の一つでした。
30%について話すとき、常にSteamを擁護する人々がたくさんいます。「もちろん彼らはEpicよりも多くの機能を持っているので、より多くのコストがあります」。私たちはそれに関する非常に詳細なデータを持っています。
Google Playストアの運営、ストッキング、メンテナンス、ソフトウェア、エコシステム全体の全コストは収益の約6%です。競争市場では、コストが6%の企業が30%を請求することはありません。絶対にないでしょう。
Appleのコストも同様です。Appleはさらに効率的でリーンな運営を行っています。そのため、彼らのコストもおそらく6%の範囲内にあるでしょう。彼らは6%から30%にマークアップしており、これは独占企業だけができることです。競争的なビジネスを見てください。彼らはわずか数パーセントのマージンを持っています。
そこにある数字は、単なる反競争的な市場の歪みを端的に支持しています。
ゲーム業界の未来についてどう思いますか?インディー開発者について興味深いことをたくさん言いましたね。いわゆるAAA級のビデオゲーム会社、これらの大きなゲーム会社は未来がありますか?彼らの役割は何ですか?今後5年、10年、20年でこれらの大企業やインディー開発者の進化をどのように見ていますか?
ゲームには一つの定数があり、業界は時折それを見失うことがあります。それは楽しさです。人々は楽しさのためにゲームをプレイします。私たちの仕事は楽しさを提供することです。
最近失敗した多くのゲームを見ると、彼らは単に楽しさを提供しなかったか、人々の生活に存在する他の楽しさの源と競争できる方法で楽しさを提供しませんでした。だから、基本的なレベルでは、ゲーム業界の混乱を説明するために非常に複雑な理論は必要ありません。
多くのパブリッシャーの能力の低下が見られます。一部は人材の競争が原因です。EpicやRiotなど、本当に活気のあるゲームビジネスを持つ企業や、大手テック企業が最高の開発者を雇い、蓄積しています。
そのため、一部の企業は力強く競争していないか、悪化しています。彼らはより楽しくないゲームを作っています。他に起こったすべてのことは、それの一種の余興です。常に政治的なドラマがありますが、核心は楽しさを提供できなかったことだと思います。
楽しさの本質は変化しています。友達と一緒にボイスチャットを使って社会的に魅力的な方法でゲームをプレイすることは、孤独なゲームをプレイするよりもはるかに楽しいことが判明しています。もちろん例外はありますが、友達と一緒にプレイするゲーム、単にランダムなインターネット上の見知らぬ人ではなく、実際に現実世界で知っている人々と一緒にプレイするゲームにプレイ時間がシフトしていると思います。
これは私やフォートナイトや同様のゲームをプレイしている知人のほとんどにとって確かにそうです。これはゲームビジネス全体を再形成する上で本当に重要な効果を持っています。なぜなら、シングルプレイヤーゲームでは、20人が20の異なる意見を持ち、どのゲームをプレイするかについて、それぞれが異なるシングルプレイヤーゲームを購入するかもしれません。
しかし、マルチプレイヤーゲームでは、20のゲームがあり、それぞれが完全に個人的な好みを持ち、各自が独立してどのゲームをプレイするかを選択していれば、それぞれが異なるゲームを購入するかもしれません。しかし、彼らは皆一緒にプレイしたいと気づいています。
プレイヤーが増々行っていることは、彼ら自身が好むかもしれないゲームでなくても、友達と一緒に好きで受け入れるゲームをプレイしているということです。私が時々プレイするフォートナイトのグループではそれは確かにそうです。
あるプレイヤーはCODをプレイしたいと思っていたかもしれず、あるプレイヤーはLeague of Legendsを好んでいたかもしれず、他の誰かは全く別のものを好んでいたかもしれませんが、一緒にプレイすること自体が非常に楽しいのです。
これにより、強力なメタスタスの法則効果があり、友達の大部分を引き付けることができるゲームは、あなたをより引き付けることができ、引き付けるだけでなく維持することもできます。
マシュー・ボールの分析はこの数年間で本当にこのトレンド、メタバースと呼ぶか大規模なマルチプレイヤーソーシャルゲームと呼ぶかは別として、このトレンドを文書化してきました。昨年あたりから、この変化のペースが本当に加速し、より多くのプレイヤーがフォートナイトに来ています。
約1年前に月間アクティブユーザー1億1000万人の過去最高を記録しました。そして今回も近いピークに達しています。Robloxはかつてないほど大きくなっています。このトレンドは、プレイヤーが一緒にプレイするマルチプレイヤー体験に集約しているということです。
それに重なる別のトレンドとしては、素晴らしいシングルプレイヤーゲームや小規模なマルチプレイヤーゲームが登場したとき、人々はそれを休暇のように扱うことがよくあります。しばらくそのゲームをプレイし、その後戻ってきます。Wukongはその素晴らしい例だと思います。
中国の素晴らしいチームによる素晴らしいゲームでしたが、西洋のプレイヤーは本当にそのタイプのものを以前には見たことがありませんでした。それは素晴らしく、うまくいきましたが、ほとんどのプレイヤーはしばらくプレイして、その後に戻りました。
それは収益性があるかもしれませんが、そのようなゲームを構築しているビジネスは、数年ごとに新しいものを構築する必要があり、ユーザーを継続して作成する他のゲームを中心にビジネスを構築する必要があります。
しかし、多くのゲーマーが少数のゲームに移行すると、その効果はそれらのゲームの収益の増加、再投資の増加につながります。フォートナイトを構築している数千人のチームでEpicができることがあります。内部的に。そして数万人がフォートナイトに独立したクリエイターとして貢献しています。
そのレベルの投資で起こり得ることは、小規模なゲームでは起こり得ないことです。そのため、最大のゲームがより多くの再投資をして彼らのゲームをより楽しくし、他のゲームよりも速いペースで楽しさを獲得するという、ある程度の「勝者総取り」のダイナミクスが増加しています。業界はそれを中心に変化しています。
今のゲーム業界の教訓は、追求されている二つの大きな機会があるということです。プレイヤーを長期間、無期限に保持する可能性のある大きなゲームや本当に大きなマルチプレイヤー体験があります。そして、人々が大きなゲームから休憩を取るための本当に良いシングルプレイヤーや小規模なゲームもあります。
そこでのトレンドは、それらのゲームを効率的に開発することになるでしょう。3億ドルの予算でそのようなゲームを構築することはできませんが、4000万ドルの予算でできれば、多くのお金を稼ぐことができます。これが主な再形成だと思います。
それは、大きなオーディエンスにリーチできないシングルプレイヤーゲームのカテゴリーの多くにとって、かなり暗い見通しを作り出すと思います。しかし、これは単に今日の技術と変化の周りにビジネスを再構築するという本当のトレンドの一つです。
これは馬鹿げた質問かもしれませんが、あなたが作成したゲーム以外に、あなたにとって過去最高のビデオゲームは何ですか?人生であなたに影響を与えたか、あるいは作成されるのを見て「これは美しいアート作品だ」と思ったゲームは何ですか?
全く別の領域のものかもしれません。私はよくシングルプレイヤードメインのロールプレイングゲーム、エルダースクロールシリーズのスカイリムに戻りますが、それは彼らが作り出した世界でした。最近のゲームであるボルダーズゲート3も、再びシングルプレイヤードメインで多くの革新的なことを行っていた、本当に信じられないほどの作品でした。あなたが作成したもの以外にそのようなゲームはありますか?
私が最も感銘を受けるのは、完全な生きている世界を作り出したように見えるゲームです。あなたがその一部であり、もっと多くのことが起きていて、常にもっとあるという感覚を与えるゲームです。そして、あなたがどこへでも行き、何でもできるという感覚を与えるゲームです。
これらのゲームには実際に有限の制限があり、行けない場所がありますが、その不思議さの感覚を作り出すことは本当に魔法的なことです。例えばゼルダ ブレス オブ ザ ワイルド。そうですね。スカイリム、レッド・デッド・リデンプション。レッド・デッドは素晴らしいです。そこには完全な生態系シミュレーターがあります。
高校の同級生で川の生態学を研究するようになった人がいて、彼は「これは水文学的に健全な数少ないゲームの一つだ」と言っていました。川の形は実際に浸食のダイナミクスに従うように努力していました。その細部への注意はすごく、そこには大きな何かがあります。
業界を通じての旅は面白いことでした。私は1992年を最後にゲームをデザインしました。私はゲームデザイナーではありません。私は非常にオープンマインドで、これまでに存在した最高のゲームジャンルはまだ発明されていないと思っています。
私たちがより多くの技術的能力を得るにつれて、そしてクリエイティブな人々がそれを使用し、希望的により高い生産性ツールなどによって力を与えられるにつれて、私たちが夢にも思わなかったより多くのクールなことが現れるのを見るでしょう。世界シミュレーターのアイデアは実際にそこで本当に興味深いです。
多くの試みがありましたが、通常は作成するのに非常に遅く、費用がかかりますが、時間とともにそれが改善され、それも一つのことになるかもしれません。
あなたは非常に興味深いことをたくさん言いました。新しい都市建設ゲーム。シビライゼーションは、あなたの行動に依存して進化できるその深さのゲームを構築するというのは驚くべきことです。
そのスケールの世界を作り、あなたがその中に入り、その中にいることができるというのは。レッド・デッドは素晴らしい例だと思いますが、レッド・デッド・リデンプションを大規模に友達と一緒に歩き回れるような方法で作ることです。そして、あなたが何年もかけて与えてきたのは、アーティストがレッド・デッドがいくつかのことに与えたような細部への注意を与えることを可能にするツールを作ることです。
そしてひとたびそうすれば、そこには何か魔法的なものがあります。細部への注意を払えば、私は何だか分かりませんが、アーティストの愛情が何らかの形で伝わり、彼らが注いだ心遣いを感じることができます。
その通りです。最高のゲームには魂があります。それを本当に感じることができます。コール・オブ・デューティとフォートナイトは非常に異なる魂を持っています。それはゲーム内で見えるものだけでなく、プレイヤーがそれとどのように交流し、オンラインで互いにどのように交流するかにも現れます。それは本当に興味深いことで、もっと研究されればと思います。
私たちはいくつかの側面で魂について話しました。もっと研究されればと思います。デザイナーが行うこれらの小さなゲームデザインの決定は、プレイヤーがゲームについて考え、ゲームに見るものに深い影響を与えます。
フォートナイト・バトルロイヤルには常に神秘性の感覚がありました。あなたはこの島にいますが、ここで何が起きているのか正確には分かりません。家がたくさんあります。それらは放棄されています。なぜ?私は秘密を持っている人ではありません。私はデザインチームにはいません。私はプレイヤーとしてフォートナイトを体験していますが、それは本当にそれをたくさん発散しています。
また、良い精神性もあります。フォートナイトで排除されても、血の噴出や内臓は出ません。あなたはただシミュレーションから瞬間移動されるだけです。そして多くの場合、ゲームに負ける方法が十分に面白くて、実際に笑うか、「あのプレイヤーが勝ったことに敬意を表します。それは賢かった」と思うことがあります。
それはプレイヤーが互いに非常にポジティブになる傾向がある、これらの他のゲームとは非常に異なるダイナミクスを作り出します。フォートナイトでゲームがどうなっているかを測るために私がよくすることの一つは、フィルスクワッドをプレイすることです。
ランダムな他の3人のプレイヤーとマッチングされ、一緒にゲームをプレイします。彼らはボイスチャットを持っていることもあれば、持っていないこともあります。マッチメイキング地域が大きかった頃、少しバトルフィールドスペイン語を学び、メキシコシティほど南の人々と話すことができました。
そこでの交流のポジティブさは、オンラインで出会う可能性のあるあらゆる種類の人々の間で本当に印象的であり、コール・オブ・デューティのようなゲームで見られるものとは全く異なります。そこでは常に皆がエッジロードになろうとしています。私はオンラインゲーム文化が好きです。
聞かないといけないのは、伝説的なゲームの一つであるグランド・セフト・オートについてです。世界について言えば、それは全く独自のものです。その世界、キャラクター、スタイル、エッジさ、すべてです。しかし、グランド・セフト・オート6について私が興味深いと思うのは、彼らが永遠に時間をかけたことです。
あなたが前に言及した六ヶ月の話です。いくつかのゲームはただ完成に何年もかかります。アンリアルを完成に導くことができたあなたが、外から見て、なぜグランド・セフト・オートやその他の会社がゲームを完成させるのにそれほど時間がかかるのか、そのプロセスはどのようなものかについて洞察を与えてください。
ゲーム作りは非常に難しく、特に何かの境界を押し広げている場合はそうです。グランド・セフト・オートでは、あなたがこの巨大な都市にいて、何でも起こり得るという現実感と感覚、それがすべて生きていて呼吸していて、あなたはその一部に過ぎないという感覚です。Rockstarがそのジャンルにもたらした品質のレベルは驚くべきものです。
以前に達成されたことのない品質とディテールのレベルで何かを構築しているとき、それがどれだけ時間がかかるか予測することはできません。今日あなたが解決している問題が、次の品質の反復に到達するために、どのような新しい問題を解き放つかは分かりません。
多くの場合、一つのことを修正し、それを超現実的にすると、修正する必要がある他のものの非現実性が浮き彫りになります。私の心に常に浮かぶのは、高い品質基準がなければゲームを出荷するのは簡単だということです。
私たちも成功を収めることはないでしょう。Rockstarから見てきたのは、彼らは時間をかけますが、素晴らしいゲームを出荷し、最終的にはそれが価値あるものだということです。悪いゲームは永遠に悪いままです。遅れて良いゲームは、最終的にはリリースされ、良いものになります。
Rockstarは、品質を提供するというプレッシャーの良い例だと思いますか?Epicは最近、品質の提供において私が知る限り見逃していません。そのようなプレッシャーを感じますか?もう失敗は許されないと?
確かに感じます。誰もが何かを優れたものにするために、最後の瞬間まで非常によく働いています。これらの迅速な納期では本当に難しいです。新しいフォートナイトのシーズンを全体的に判断する前に、多くのものを稼働させる必要があります。
最後の月くらいまで、あなたが構築したものを本当に理解することはできません。そして、バランスなどに関する遅れて発生する問題があれば、通常はそれは最後の方にあり、それを修正するための急速な取り組みにつながります。
他の教訓はライブでしか学べません。そしてそれは、それがライブ体験であり、また実験でもあり、継続的に改善され続けるゲームを受け入れることを意味します。いつでも一部の人々が好まないことがいくつかあり、それから学び、改善し、前進します。
大きな哲学的質問をさせてください。あなたは今や人類に多くの楽しみをもたらす巨大な世界を創造しましたが、人類についても学ぶことができます。私たち人間について、人間の未来について、人類の未来について、何があなたに希望を与えますか?
デジタル時代にもたらされた二つの対照的な世界が見えます。一つはソーシャルネットワークの世界で、人々がお互いにタイピングし、大規模な否定性と政治、扇動主義があり、否定性と毒性を促進することが多いエンゲージメントによるキュレーションがある世界です。
それは多くの面で後退だと思う厳しい世界です。ソーシャルプラットフォームがもたらした社会的ダイナミクスのために、世界の基盤は少し不安定だと思います。しかし、それと実際の人々と接続されているときのオンラインでの良い精神性を比較すると、実際にフォートナイトをプレイしたり、以前に会ったことも話したこともない人々とフォートナイトのフィルスクワッドをプレイして、そこで発展する人間関係がポジティブかどうかを判断すると。
私はそれらが本当に優れていて心温まるものだと感じました。そこから学べる教訓は、人間が人間と話し、実際の世界や仮想世界で一緒にいることは、自然に共感を生み出す媒体であり、自然に結束につながるということです。
時には対立が起こることもありますが、一般的に私たちの社会規範や人々の間の良い交流、ポジティブさを促進することが多いです。一方で、お互いに怒りのメッセージをタイピングするという自己強化的な負のダイナミクスがあります。
ソーシャルメディアを見て、ますますソーシャルになっているゲームを見ると、二つの媒体の間に実際の社会的ダイナミクスという点で、これ以上大きな分裂を見ることができません。一つは超ポジティブ、もう一つは時に超毒性です。
そうですね、それは実際にテキストベースの媒体です。それはゲームに関するものでさえあり得ます。Discordを見ることができます。テキストでは本当に毒性があり得ます。しかし、現実世界の部屋でここに人間を一緒に置くと、物理的空間で人間が仲良くならないのを見ることはほとんどありません。
メタバースのような種類のデジタル空間を作成できる程度、それが十分に没入感があり、あなたが他の人を感じ、共感が現れ、そして共感から生まれる喜びが現れるという点では、人間が良いものであり、他者の良さを見たいという思い出しになります。
彼らは善良さを分かち合いたいと思っており、そのグループに集まると愛があります。彼らは他のグループについて悪く言うかもしれません、これが人間の暗い側面ですが、そのグループのダイナミクスに関しては喜びに満ちています。
はい、それは私にも希望を与えます。そして、私たちが共感的な方法で接続することを超簡単にするようなオンラインの世界を作成できる程度は、より良くなります。私はあなたがそのような世界の可能性の境界を押し広げていることに感謝しており、今日私と話してくれたことに感謝しています。ティム、これは素晴らしかったです、そしてあなたと話せたことは光栄です。
ありがとうございます、楽しかったです。ティム・スウィーニーとの会話をお聞きいただきありがとうございました。このポッドキャストをサポートするには、説明のスポンサーをチェックしてください。そして今、ベンジャミン・フランクリンの言葉を残します。「私たちは年を取るからプレイを止めるのではなく、プレイを止めるから年を取るのです」。お聞きいただきありがとうございました。次回にお会いできることを願っています。


コメント