初投稿です、よろしくお願いいたしす。
ここでは、Unityで標準で付いているマテリアル(標準マテリアル)を適応するときに見落としがちな点を書いてみます。
よく、以下のコードを見かけるのですが、Unityエディタ上で実行すると、
private SpriteRenderer srenderer;
:
srenderer.material = Resources.GetBuiltinResource<Material>("Sprites-Default.mat");
何故かマテリアルが見つからないというエラーが出ます(下図参照)
実は、Unityエディタ上と、実行環境生成後では、標準マテリアルを参照する方法が違う。そのため、実際には#ifを使ってエディタ上で実行してるかどうかで切り分ける必要があります。
hoge.cs
private SpriteRenderer srenderer;
:
#if UNITY_EDITOR
srenderer.material = UnityEditor.AssetDatabase.GetBuiltinExtraResource<Material>("Sprites-Default.mat");
#else
srenderer.material = Resources.GetBuiltinResource<Material>("Sprites-Default.mat");
#endif
これで、エディタ上でも実機でも標準マテリアルを当てはめられます(Unity5.4.0p1上のエディタで動作確認)のでご活用ください。
なお、この対処はUnityのフォーラムを参考にいいたしました。
http://forum.unity3d.com/threads/released-super-tilemap-editor.387330/page-5