K3の住民

最近はレア社のゲームについては書いていませんが、一応レア社のゲームが一番好きな人です。『雪圀』で"圀"は"国"とほぼ同義ですが、国ではありませんって当たり前か(笑)。

ゼルダ64エンジンについて

2017/05/31 「シーン」「ルーム」の項の一番最初の表現を修正。

皆さん、こんにちは。雪圀です。
今回はN64ゼルダ系統におけるメインシステム、ゼルダ64エンジンについて書いて
みようと思います。



先ず、ゼルダ64エンジンはスーパーマリオ64で使われているスーパーマリオ64
エンジンをもとに作られており、全体としてはシーンルームアクターの3つの
要素で構成されている。

シーン

シーンは、一言で言えば領域全体のデータ。このシーンには32個のルームを格納
することが可能である。
分かりやすく説明すると、シーンが「家」、ルームが「家の中にある部屋」であり、
その家に32個の部屋を作ることが出来ると思えばよいだろう。
シーンは全体のポリゴンを構成しているため、1つのルームから壁抜け等をして
ロードしていないような状態で別のルームに行っても落ちること無く歩くことが
出来るという特徴を持っている。
また、ワープ地点を持っているシーンも存在し、それを利用してルームを読み
込んでいない状態で普通は通れないようなワープ地点を通ることが可能となる。
また容量を抑えるためかルームと別のルームを引き離して別の場所であるかの
ように構成しているシーンも存在する。穴の中、ムジュラの仮面の「妖精の泉」が
それを利用しているシーンとして有名である。

ルーム

ルームは基本的にシーンの中にある1つの領域を表す。前にも書いた通り、簡単に
言えばシーンが「家」であり、ルームは「家の中にある部屋」である。
ルームはグラフィックデータを含んでおり、中にはロードするアクターのリスト
を含んでいるものもある。
ルームは2つ同時にロード出来るが(シーンでは出来ない)、これはルーム間の移動
をリアルに見せる為に利用されることが多い。
このルームには、ロードしていないルームに行ってそれをロードさせてそのルーム
を未ロード状態(別のルームに移動)にしてまたロードしていないルームに行って
ロードさせる・・・等を繰り返すと、アクターが複製出来てしまうバグが存在する
(出来るアクターと出来ないアクターはあるが)。
また、カメラ固定状態でルーム間の移動を行おうとすると2つのルームを読み込んだ
ままの状態になる「Actor Glitch」と呼ばれるバグも存在する。

アクター

一言で言えば、動くもの、オブジェクトである。アイテムやダンジョン等で使われる
ブロック、キャラクター、効果音やエフェクト(光の弓矢の光や爆発等)等様々な
種類のアクターが存在する。無駄な処理を省く為か、アクターには描画のフラグが
あり、これを立てることで描画される仕組みになっている。基本的にはカメラと
アクター間の距離が離れている、カメラに映らない方向だと、アクターは描画の
フラグが立たず、描画されない。このとき、動作を省略するアクターも存在し、これ
を利用したバグが幾つか存在する。
有名なのが、「森抜けバグ」である。カメラ固定状態で看板を読む途中でデクの実を
使うことでカメラ固定のままリンクを動かせるようにし、通せんぼしているコキリ族
をスルーしてハイラル平原に行けるというバグである。



以上です。今回紹介した3つの中で、「アクター」と言う言葉は次回の記事に使う
予定なので、それを含めたうえで記事にしてみました。

今回はこれくらいにしときます。


参考サイト→http://www.zeldaspeedruns.com/oot/generalknowledge/zelda-64-engine