Page 1 of 1

なんらかの条件でマップが描画されない不具合

Posted: 2019/02/09 09:56
by GODHER
いつもNostalgiaを使わせて頂いております
GODHERです

条件はよくわかっていないのですが、
MapCollider.csの以下でNullPointerExceptionが発生することがあるようです。

if (_PolygonCollider.sharedMaterial != _Tile.tileCollider.physicsMaterial)
{
_PolygonCollider.sharedMaterial = _Tile.tileCollider.physicsMaterial;
}
if (_PolygonCollider.isTrigger != _Tile.tileCollider.isTrigger)
{
_PolygonCollider.isTrigger = _Tile.tileCollider.isTrigger;
}


私は仮対処として、以下の判定を加えて回避するようにしました。
if (_Tile != null)
{
if (_PolygonCollider.sharedMaterial != _Tile.tileCollider.physicsMaterial)
{
_PolygonCollider.sharedMaterial = _Tile.tileCollider.physicsMaterial;
}
if (_PolygonCollider.isTrigger != _Tile.tileCollider.isTrigger)
{
_PolygonCollider.isTrigger = _Tile.tileCollider.isTrigger;
}
}

以上、不具合報告でした。
よろしくお願い致します。

Re: なんらかの条件でマップが描画されない不具合

Posted: 2019/02/09 10:09
by caitsithware
ご報告ありがとうございます。
GODHER wrote: 2019/02/09 09:56 MapCollider.csの以下でNullPointerExceptionが発生することがあるようです。
参照がnullになることで例外が発生する不具合のようですね。
詳しく調査したうえで修正いたします。
GODHER wrote: 2019/02/09 09:56 私は仮対処として、以下の判定を加えて回避するようにしました。
仮対処方法もありがとうございます。

Re: なんらかの条件でマップが描画されない不具合

Posted: 2019/02/10 08:09
by caitsithware
調査したところ、MapCollider._Tileを直接nullにしてしまう箇所は見当たらず、原因特定できませんでした。
もし、直前に行っていたことなどで原因の心当たりがありましたら教えていただけると助かります。

また、Unity側の問題として、参照切れなどのデータ破損が発生している可能性もあります。
もしUnityのバージョンアップなどをしておられましたら、
一度ロールバックしたうえでバージョンアップを小分けに(例えば、5系から一度2017にしてから2018に)するなどをお勧めいたします。