FC2ブログ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ニアレストネイバーとバイリニアの違いでリプレイがズレた話

とりあえずざっくり中ボスまで作ってみた

以下ニアレストネイバーとバイリニアの違いでリプレイがズレた話
珍しい不具合に遭遇したからメモしておく
上記の動画でも使用したリプレイだけど高速再生するとリプレイがズレる
nia1.jpg
上の画像のように最初から最後までリプレイを高速再生すると最後のスペルで1つ残っていたビットが
2つ残る事になる。じゃあいつからズレていたのか検証してみると
binia.jpg
なんと一番最初の凍らせた面積からズレていた
実際にズレるのは凍らせた面積だけで乱数自体はその場ではズレないので奇跡的に最後まで再生されたけど

そこでなぜ高速再生すると凍らせた面積がズレるのか、そこで実際に凍らせた面積を求める画像を出力してみた
bi2.jpg

左が通常再生で右が高速再生のアイスマップ。違いが分かるだろうか
アイスマップの描画方式が通常再生時と高速再生時で違っていて左のアイスマップはバイリニアで描画されていて
右のアイスマップはニアレストネイバーで描画されている。たったこれだけの違いで凍らせた面積に違いができる

では何故高速再生すると描画方式が変わるのかというと高速再生の処理は描画処理を飛ばしているからであり
通常ゲームは描画を毎フレーム行う。この描画処理は自然になるようにバイリニアで描画するものが多い
そこで描画方式がバイリニアのままになっていてアイスマップを制作する際にもバイリニアで制作されるが、
描画処理がカットされることで描画方式がニアレストネイバーになってアイスマップが制作されていた
これがリプレイがズレた原因だったのである。







スポンサーサイト

コメントの投稿

非公開コメント

プロフィール

Tirとひっとー

Author:Tirとひっとー
Tir   リーダー
ひっとー サブリーダー

最新記事
カテゴリ
最新コメント
月別アーカイブ
カウンター
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。