スーパーマリオ64の制作~ギレス・ゴダード氏への完全インタビュー (2001年)

2026/10/11 4:28

スーパーマリオ64の制作~ギレス・ゴダード氏への完全インタビュー (2001年)

RSS: https://news.ycombinator.com/rss

要約▶

日本語翻訳:

『スーパーマリオ64』の持続する遺産は、単に技術的な優位性に由来するのではなく、生硬なハードウェア性能や複雑なメニューよりも「動きの質感」を最優先とする独自の開発哲学によって成り立っています。任天堂64が正式発売される前も、創作者である宮本茂と約15名からなる小規模コアチームは、SGI Onyxシステム上でソフトウェアエミュレータを開発し、アナログスティック操作やカメラ設計を洗練させました。既存の資産である頂点モーフィング(これはゲームの象徴的なマリオの顔を作成したことで有名です)を利用しながら、純粋にユーザーエクスペリエンスに焦点を当てました。任天堂の秘密主義的文化の中で活動し、この結束の強いグループはほぼ全ての時間を広範な内部プレイテストに捧げ、宮本茂はマリオの物理演算を個人的に調整し、7面体のコントローラスティックデザイン(数百のプロトタイプに影響されたもの)からダイナミックカメラシステムによる風景回避設計に至るまで、あらゆる詳細を監督しました。競合他社が処理能力を追いかけるのに対し、彼らは頂点モーフィングといった既存資産を活用して純粋にユーザーエクスペリエンスに焦点を当て、このアプローチはダイナミックなカメラ制御やレベル設計における新たな基準を確立し、直感的なコントローラ入力がプレイヤーとの時代を越えた絆を生み出すことを実証しました。結局、ゲームは単にグラフィック仕様を最大化するよりも特定の感覚調整を習得することでより深い影響を与えることを示し、業界の期待を再定義しました。なお、N64ハードウェア自体の開発遅延はなく、厳しい発売期限を満たしながら実現されました。

  • 改良版サマリー(必要に応じて;なければ元の文章を繰り返す): 上記の改良版が好ましいとされます。それは欠落していた具体的な詳細(マリオ顔の作成、コントローラーのプロトタイプ、SGI Onyxエミュレータなど)をナラティブの流れに統合し、より包括的である一方、元の明晰さと主要なメッセージを保持している点にあります。

本文

マリオ 64 の裏側:開発者ギレス・ゴダード氏による未公開メモ

マリオシリーズ 25 周年にちなんで、任天堂の開発者ギレス・ゴダード氏が 2001 年に受けた取材から、当時未公開かつ未編集の原稿を整理したものです。 元々は『NGC マガジン』に一部掲載されましたが、今回は大幅に拡張され、90 年代後半の任天堂の内情や開発の真実が詳しく語られています。 ※メモ内容はやや手粗いですが、「質問」欄は推測によるものもありますのでご了承ください。


1. プロジェクト概要とチーム環境

  • ギレス氏の役割
    • 正確な正式役職名は不明ですが、フロントエンドプログラマーのような仕事をしていました。
    • 主にマリオの顔部分を担当していました。
    • 起動中の演出は意図的なものであり、CD メディアではないにも関わらずバックグラウンドで多くの処理が自動的に行われていました。
  • チーム規模
    • 最終的には約15 名程度の小規模なチームでした。
    • 『ゼルダの伝説 オカリナ』に比べて非常に小規模でしたが、背景業務を担うメンバーもいました。
  • オフィス環境
    • オープンプラン型でしたが、小さな仕切り(キュービクル)がありました。
    • プロジェクトに応じて部署が移動し、コアチームは周囲のプログラマーやアーティストを引き込んで拡張する仕組みでした。
    • 当時はアーティストグループとプログラマーグループが独立して作業していました。
  • 労働環境
    • 極めて静かな雰囲気で、会話をするのは稀でした。
    • 日本の企業文化特有の「上司が通りかかったらすぐ黙る」という光景が見られました(欧米とは異なり)。

2. マリオ 64 の開発経緯と宮本茂氏の関与

  • プロジェクトのきっかけ
    • 初タイトルであり、他のマリオ作品よりも実現すべきゲームと見なされました。
    • ハードウェア存在以前から始まり、Onyx エミュレーター(SGI Onyx)上で開発が進められました。
    • SGI から最初に受け取ったものであり、ハードウェアそのもののエミュレーションではなくAPI のエミュレーションでした。
  • 宮本茂氏の役割
    • EAD 内での進行プロジェクトは 3〜4 つのみであり、宮本氏はマリオ 64 に100% 没頭していました。
    • マシンに向かって座り、各種デモをプレイしていましたが、特に「実験的な遊び」を楽しむことが好きでした。
    • 彼の関与が「マリオの顔」の開発につながりました。
  • 「マリオの顔」の実験
    • 当時のアイデアは、リアルタイムで頂点計算を行うことで、個別のポイントだけを動かして形態を変える手法(当時は「メッシュ」と呼ぶのに苦労しました)でした。
    • インディエム上で GL プログラムを使いながら、インディカメラでマリオの顔を実験していました(単なる 2 つのピンポン玉による表現)。
    • 宮本氏は、「それを N64 でマリオの顔にすることはできるか?」と問いかけ、これが最初の実現されたゲームの一つとなりました。
  • 初期の状態
    • 当初は単純なグリッド上で歩き回り、拾い物や落とし物を繰り返す簡単な動作でした。
    • アニメーションデータはゲーム本体以前に存在しており、マリオの姿は最終版とほぼ同じ外見を持っていました。

3. カメラシステムとマップ設計

  • カメラの革新性
    • 宮本氏は SFC の『スーパーマリオブラザーズ』を 3D 化する際の方法に確信が持てず、時間がかかりました。
    • 「同じような感覚を 3D で実現する」ために試行錯誤し、固定経路のような見た目になりました。
    • 当初は批判がありましたが、宮本氏は風景を回避する仕組みを実証できていると評価していました。
  • カメラ担当
    • カメラシステム開発は、後に中止になった『スターフォックス』SFC 版で開発を担当した川越貴人氏(極めて優秀なプログラマー)によって行われました。
  • マップの組み立て
    • 3D ワールドは比較的短期間で形成され、最初に開発されたのは『ボブ・オンプの戦場』でした。
    • 敵キャラが動き回る状態を含めて、準備完了まで約6〜7 ヶ月かかっていたと推測されます。
    • NCL は 3D ゲームの開発経験がなく、アーティストたちはオブジェクトをゲーム内に取り込む方法に悩みました。
  • ボス戦の設計
    • 2D のボス戦レベルは「特定の経路への固定」によるものでした。
    • プレイヤーの立ち位置や出口が決まっているため、「角まで逃げた別の出口」を見つけることはできず、必ずボスと対峙する構造になっていました。

4. N64 コントローラーとの開発

  • コントローラーのない開発初期
    • 最初のマリオはキーボード(Onyx サーバー)で開発されました。
    • エミュレータボードの背面にあるシンプルなシリアルポートのみが利用可能でした。
  • N64 コントローラーのプロトタイプ
    • N64 のハードウェアを模擬する専用基板であり、改造されたセガコントローラーが接続されていました。
    • 多様なプロトタイプがあり、少なくとも100 つ以上存在しました(中央スティックの動作、形状など)。
    • 最終的には七角形のものになりましたが、円形なども試作されました。
  • 設計の優先順位
    • コントローラーがマリオ 64 の設計を決定づけたわけではなく、宮本氏がコントローラー操作からゲームを楽しんでいました。
    • マリオはテスト用として利用され、実際の動きは N64 コントローラーの中央スティック操作に基づいて考案されました。
    • カメラ移動については「D パッドを二つ設置」する案など多くの議論がありましたが、宮本氏は黄色いボタンによるカメラ移動には興味を示しませんでした。

5. 開発プロセスと難易度

  • キャラクターの完成度
    • ポリゴンの数は別として、キャラクターは最初から完成形に近いものでした。
    • 設計後すぐに導入され、大幅な変更はありませんでした。
    • アーティストたちはコンベアベルトのように素材を続々と提供し、締め切り厳守のためゲーム内への組み込みを行いました。
  • N64 の発売延期
    • N64 はマリオ 64 の完成のためには延期されませんでした(噂では最終チェックでわずかな遅れがあった可能性あり)。
    • 優れたプロジェクト管理システムにより、「いつ、誰が何をすべきか」が明確にされていました。
    • NCL は柔軟性があり猶予を申請することも可能でしたが、任天堂としてのプレッシャーも感じられました。
  • ショシンカイ(消費者ショー)での公開
    • 1995 年のショシンカイで初めて公開され、カメラの動きや自由な歩行が注目されました。
    • グラフィックだけでなく「動きそのもの」が大きな話題となりました。
    • 日本企業としての防衛的な姿勢(秘密主義)により、チームへの直接的なフィードバックは受けにくかったようです。

6. グラフィック品質とピクセルの重要性

  • N64 のグラフィックパイプライン
    • SGI は速度よりも「ピクセル品質」を重視しました。
    • Onyx や Indy で目指した「現実システム」のグラフィックパイプラインを N64 に圧縮することに成功しました。
    • 滑らかなテクスチャリング、適切な色彩、照明、アンチエイリアシングが施されていました。
  • プレイステーションとの比較
    • プレイステーションは速度優位でしたが、ピクセル品質は劣悪でテクスチャリングやアンチエイリアシングがありませんでした。
    • 圧倒的な高速さにもかかわらず画像が粗く見えました。

7. ゲームの「感触」作りとフィニッシング

  • 微調整(ファインチューニング)
    • 「感触」の秘密は微調整にあり、何時間もプレイして体験することが不可欠です。
    • EAD ではチームの半分が制作中、もう半分がプレイしている体制で高品質を目指しました。
  • 終盤の雰囲気
    • 組織的であり多くの人々が努力しましたが、一部では燃え尽きたケースもありました。
    • バグ数は少なく期限内に完了し、比較的リラックスした状態となりました。

8. ギレス氏による「スーパーマリオ 64」の最高瞬間

  • 城(Castle)
    • 3D ワールドマップを持ち、メニューシステムを回避するアイデアは革新的でした。実装面では形状を組み合わせた程度でしたが。
  • ヨッシー
    • EAD のゲームには一貫性があり、キャラクター間の連結が特徴です。ヨッシーに乗るアイデアは提示されましたが、より時間があった場合の検討事項でした。
  • 水(サウンドと物理)
    • 音響担当者は場所に応じて変化するサウンドを追求し、映画のような体験を実現しようとしました。
    • 水中への移動を有利にし、挫折感を招かないよう設計されました。
    • 水面テクスチャは存在せず、空欄として処理されています(美しい動きを持つテクスチャを採用することも試しましたが、妨害になるため見送りました)。
  • 物理学
    • 一部の面で現実に基づいていますが、ゲームプレイを目的とした物理法則に反する要素も多く含まれます。
    • 『ウェーブレース』や『1080』同様、基礎的な物理学に基づきつつ不可能な行為も可能にする追加要素を加えています。
  • 「マリオの眠り」イースターエッグ
    • N64 の 16 ビットデジタルサウンドを操作できた点は大きなメリットでしたが、カートリッジ容量への影響もあり慎重なバランス調整が必要でした。
  • 揺らぐゲート
    • N64 が頂点を操作できることを示しており、マリオの顔と同じアプローチです。
    • Onyx 上の反射マッピングに感銘を受け、N64 エミュレータを得て数学的な計算が可能であることを知り興奮しました。
  • 無限の階段
    • 特定の地点に到達すると即座に位置に復帰する仕組みで、極めて高速に実行されました。
  • レベルの規模と視覚効果
    • 遠方の物体が消えているのはこの仕組みによるものです。
    • 霧処理を避けつつ広大なレベルを構築できたのは、実質的にはコンパクトな設計が貢献しました。
    • 一部のマップでは地図形状を切り替える機能があり、巨大マップの錯覚を与えていました。

同じ日のほかのニュース

一覧に戻る →

2026/10/13 6:40

AI は道具です。それを巧みに使うには技術が必要です。

## 日本語翻訳: 本稿の核心的な論点は、大規模言語モデルは自律的な「自動化」ではなく、人間の技量が必要なツールであるというものである。これは、AI が独立した意思あるいは悪意を持って行動するという考え方を否定するものであり、ソフトウェアが「反逆する(rogue)」ように振る舞うなど、業界特有の成り行きや陰謀論的なナラティブに煽られておりやすい。物理的な器具が悪用され得るように、LLM もエンジニアリング上の制限によって予期せぬ出力を生み出すに過ぎず、エージェント性の喪失によるものではない。人間による判断が依然として中核をなすのは、ユーザーが盲目的に制御権を委ねるのではなく、フィードバックループ内で結果を検証し、プロンプトを見直し、変更を検証するからです。本稿は AI を記述するために使用される擬人化された言語を批判しており、「陰謀」などの用語は技術的な問題が存在する場所に人間の動意を不当に暗示することを示唆しているとしています。 今後の議論では、AI を別個の存在として描く枠組みから転じ、解釈への問いかけや誤りへの認識においてユーザーの専門性を育むことに焦点を移すべきです。開発者および企業に対しては、恐怖を煽る比喩ではなく正確な工学用語を採用することで、より良いリスク管理と説明責任を実現できます。真の熟達とは、どのような質問が重要かを理解し、熟練した運用と盲目的な委任を見極めることであり、不完全なパフォーマンスがツールの有用性や作業者の責任を否定するものではありません。

2026/10/13 1:13

C で構築されたモダンな Web アプリ

## Japanese Translation: 本テキストは、2026 年に C と CGI を OpenBSD 上で構築された独自の商用 Web アプリケーション「marketyour.games」について説明しています。このプロジェクトは現代のフレームワークよりも極度な簡潔性とセキュリティを優先しており、「BCHS」スタック(OpenBSD、C、httpd、SQLite)を採用し、外部のフレームワークや独立したデータベースサーバーは一切使用しません。核心的な革新点は、アプリケーション全体が静的にリンクされた単一のバイナリとして動作し、ランタイム依存関係がゼロであるというアーキテクチャにあります。デプロイはファイルを 1 つだけフォルダに配置するだけであり、古いバージョンを置き換えるだけで済みます。再起動やダウンタイムも不要です。 セキュリティは OpenBSD のデフォルト設定を通じて強制されており、httpd に対して `chroot` を適用し、C プログラムに対して `pledge` および `unveil` などのツールを使用して制約を課します。アーキテクチャは、すべての HTTP リクエストごとに新しいプロセスをフォークし、コードから直接アセットを提供することでメモリ内に完全に収まり、すべてのトラフィックを httpd を介して CGI バイナリにルーティングするという方式に基づいています。このアプローチでは JavaScript テンプレート言語を使用しない(プログレッシブ改善に従う)とともに、安定した CGI 1.1 規格に準拠しますが、使いやすさを犠牲にして制御性を追求します。 主な利点としては、サプライチェーンリスクが著しく低減すること—依存するのは C コンパイラーと 3 つのライブラリ(`libcurl`、`libsodium`、組み込み済みの `libcjson`)のみ—、そして GDB のような標準ツールによるデバッグが容易であることです。アプリケーションは通常の実行ファイルだからです。しかしながら、この手法では開発者がデータを解析するためのロジック(クッキー、クエリ、フォーム)やカスタムヘッダーの管理を自ら実装する必要があり、複雑な依存関係グラフではなく、基本的な HTTP 概念と Vim のような古典的なツール(プラグインなし)を活用する姿勢を選択します。

2026/10/13 4:40

ZX Spectrum 向けのデモシーンイントロを作成する

## Japanese Translation: 著者は、標準的な 128KB の ZX Spectrum にて手書きのレトロなイントロを成功裏に作成し、高度に最適化されたアセンブリ言語プログラミングにより複雑なビジュアルとオーディオを実現した。2 ヵ月間(2025 年 12 月から開始)にわたり、約 19KB のコード(具体的には 10287 バイトのメインルーチン)を書き下し、内蔵 ROM を書き換えることでカスタムフォント「Cartoon」を用いたスムーズなスクロールテキストを作成し、また Amiga モジュール「Milkman」を変換して 3 チャネル AY サウンドトラックを生成した。限られたメモリ制限を管理するため、アセットは BASIC ロードに分割され、ルーチンはオーバーヘッドを避けるために特定のアドレスでハードコーディングされた。技術的な最適化としては、Z80 RL 命令を用いてスクロールテキストの回転を実現し、スキャンライン衝突を避けるために Ruby で生成した座標テーブルを事前計算してスターフィールド効果を再現し、さらにサウンドチップから直接振幅レジスタを読み取ってバウンス VU メーターを実装している。プロジェクトは 1980 年代後半の Amiga クrack イントロに触発され、本物の Spectrum +3上でローカル TNFS サポートのある Makefile 駆動のビルドシステムを用いて開発された。最終的な.tap ファイルは Web ブラウザまたは pouet.net を経由して入手でき、レトロなハードウェア上で高忠実度な体験を提供し、極限を効率的に達成したコーディングの実証として立っている。

スーパーマリオ64の制作~ギレス・ゴダード氏への完全インタビュー (2001年) | そっか~ニュース