質問編集履歴

2

追記の追記

2019/04/15 00:52

投稿

torano
torano

スコア92

test CHANGED
File without changes
test CHANGED
@@ -355,3 +355,7 @@
355
355
  ![イメージ説明](d7ebc3136a43ee979049de3900e0e824.png)
356
356
 
357
357
  Unityちゃんの服やリボンなどに変な模様が...
358
+
359
+ ![イメージ説明](46b3a1c1c07e0ef2e69a4cbda8702272.png)
360
+
361
+ テクスチャには変な模様はないのですが、モデルをみるとついています。

1

改善と新たな問題の追記

2019/04/15 00:52

投稿

torano
torano

スコア92

test CHANGED
File without changes
test CHANGED
@@ -307,3 +307,51 @@
307
307
 
308
308
 
309
309
  以上です。よろしくお願いします。
310
+
311
+
312
+
313
+ ### 追記
314
+
315
+ Bongoさんが実装されていたようにUV2用のテクスチャを動的に作成し、uvをuv2に置き換えてみたところ正常にテクスチャがマッピングされ、かつペイントができるようになりましたが、ここで新たな問題として、テクスチャが劣化し以下のように黒い線が目立つようになりました。
316
+
317
+
318
+
319
+ ![イメージ説明](1d932fa64e3fd5797eb331a2c8f52682.png)
320
+
321
+
322
+
323
+ これをどうにかできないか考えていたのですが、少し改善できたので報告します。
324
+
325
+ edo_m18さんの記事でも紹介されている、[Unity Graphics Programming vol.2](https://indievisuallab.stores.jp/items/5ae077b850bbc30f3a000a6d)(有料)
326
+
327
+ こちらにもペイントのプロジェクトがあり、参考になるものがないかと探していたのですが、「ペイントした際できてしまうメッシュの隙間を埋めるシェーダー」を使用していて、ソースコードはGithubで公開されていました。
328
+
329
+ [ソース](https://github.com/IndieVisualLab/UnityGraphicsProgramming2/blob/master/Assets/ProjectionSpray/01_SimpleDraw/Shaders/FillCrack.shader)
330
+
331
+ こちらでは、ピクセルの色のアルファが一定より低ければ近傍の色を使う、といった実装になっています。試しにこれを使ってみましたら、多少改善したのですが、メインカメラがMSAAありだとまだ黒い線が目立っています。
332
+
333
+
334
+
335
+ ![イメージ説明](0b27c81c0c13aee124e4d7ee44d90d7e.png)
336
+
337
+
338
+
339
+ そこで、少し遠くの近傍テクセルをとってくるようにしたら以下のように。
340
+
341
+ ```
342
+
343
+ float2 d = _MainTex_TexelSize.xy * 5;
344
+
345
+ ```
346
+
347
+ ![イメージ説明](66389df6a696823f30fce350b410f444.png)
348
+
349
+ 手にはまだ少し黒い線が残ってますが、顔のはほとんど見えません。
350
+
351
+
352
+
353
+ なんとか黒い線をなんとか少なくすることはできたのですが、UV2テクスチャにした時点で以下のような劣化も発生しており、これを直す方法はまだわかりません。
354
+
355
+ ![イメージ説明](d7ebc3136a43ee979049de3900e0e824.png)
356
+
357
+ Unityちゃんの服やリボンなどに変な模様が...