Closed Chiji1108 closed 4 years ago
@Chiji1108 ご報告ありがとうございます。 現象について調査しましたが、GameCanvasの不具合ではなくUnityの仕様のようです。
エディタ上で確認した限りでは、2048を超える CommandBuffer については描画命令が発行されないように見えました。 スマートデバイス実機での上限については未確認ですが、これほどまでに大量の描画コマンドは性能上処理できないと思われます。
今回の場合、描画命令(gc.DrawLine)の呼び出し回数を減らす工夫が不可欠です。
エンジンの機能追加については持ち帰って検討しますが、現状のGameCanvasのままで実現できないかどうか色々と工夫してみてください。 アイデアのヒント:リフレッシュレート、速度、円
@seibe 仕様確認本当にありがとうございます! やはりDrawLineはそんな連発していいものではないんですね 実機で軽い動作になるように作るとすると、やはり作り方が悩みます。 現状ではポインターが押されている所の座標を配列に入れて、そこから円を描画するというのもやりましたが、やはりリフレッシュレートが低い?ので早いポインターの動きをすると中間が描画されないんですよね 中間の座標に円を敷き詰めるのも良さそうですが、提示してくださった「アイデアのヒント」の「速度」が気になります… 自分でも考えてみますが、もう少しヒント頂けないでしょうか…?笑
@seibe 分かりました!gc.ClearScreenを毎フレーム呼び出さないって事ですね! これでだいぶ処理が軽くなると思います、ありがとうございました! そのほかの方法があったらぜひ教えてください…m( )m
概要
大量に線を描く処理をした際、線が描画されなくなる
再現手順
下記のコードを実行した際、途中から線が描画されなくなるor古い線が消えていく
実行環境