Unityエディタを操作中、次のようなエラーが出ました。
Instantiating material due to calling renderer.material during edit mode. This will leak materials into the scene. You most likely want to use renderer.sharedMaterial instead.
翻訳すると
編集モード中にrenderer.materialを呼び出したことが原因で、マテリアルをインスタンス化します。これはシーンにマテリアルをリークすることになります。代わりにrenderer.sharedMaterialを使用することをお勧めします。
materialを使わず、sharedMaterialを使えということなのですが、sharedMaterialを使うと元のアセットのプロパティを書き換えてしまうという問題があります。
そこでsharedMaterialを使うけど、元のアセットも書き換えない方法です。
var tempMaterial = new Material(renderer.sharedMaterial);
tempMaterial.mainTexture = texture;
renderer.sharedMaterial = tempMaterial;
###追記
この方法を使ってもエラーが出ないだけでリークしていて、Hierarchyに勝手にインスタンスを作ってしまうことがあるようです。
なのでmaterialを取得したら自分で破棄した方がいいのかも知れません。
###追記その2
エディタのプレイモード終了時、Hierarchyに勝手にインスタンスを作るのは別の問題が原因っぽいです。
sharedMaterialを使って自分で破棄処理したのと、しないのをプロファイラーで比較しましたが、大きな差は確認できませんでした。