2: 2015-08-22 (土) 15:56:55 njf |
現: 2015-09-26 (土) 02:53:47 njf |
| **Quadは使わない [#d73be747] | | **Quadは使わない [#d73be747] |
| 簡単に四角形の画像を作れるので便利なQuadですが、使うとドローコールが増えます。Texture Atlasにカラーチップを用意してそれをImageで描画し、拡大縮小するほうが良いでしょう。 | | 簡単に四角形の画像を作れるので便利なQuadですが、使うとドローコールが増えます。Texture Atlasにカラーチップを用意してそれをImageで描画し、拡大縮小するほうが良いでしょう。 |
| + | |
| + | **フィルターを使わない [#b474f97d] |
| + | フィルターを使うとドローコールが増えます。またフィルター処理自体も重いので速度が必要な場面では使わずにフィルターをかけた後の画像を用意して差し替えた方が良いでしょう。複数の描画オブジェクトにフィルターをかける場合は、個別にかけるよりまとめてかけた方が動作は速くなります。 |
| | | |
| **colorで色を変更しない [#p409cea2] | | **colorで色を変更しない [#p409cea2] |
| 簡単にImageの色を変えられるcolorプロパティはゲームなどで敵にやられたときのエフェクトなどでつい使いたくなりますが、ドローコールが増えます。画像容量に余裕があるならTextuer Atlasに変更した色の画像を別に用意して重ねた方が良いでしょう。 | | 簡単にImageの色を変えられるcolorプロパティはゲームなどで敵にやられたときのエフェクトなどでつい使いたくなりますが、ドローコールが増えます。画像容量に余裕があるならTextuer Atlasに変更した色の画像を別に用意して重ねた方が良いでしょう。 |
| + | |
| + | **アルファを使わない [#w1cf68f3] |
| + | アルファブレンディングもドローコールが増えます。はじめから半透明の画像を用意したり、フェイドアウトは他のアニメーションで代用するなどの工夫をしましょう。 |
| | | |
| **表示されていない描画オブジェクトはvisibleをfalseに [#m17cb493] | | **表示されていない描画オブジェクトはvisibleをfalseに [#m17cb493] |
| | | |
| たとえばモバイルゲームなどに良くあるような、大量のアイコンをスクロールさせるようなUIの場合、表示されていない部分のアイコンの描画についてもドローコールが増えているときがあります。表示されていない描画オブジェクトのvisibleをfalseにすると一気にドローコールを減らせる場合があります。 | | たとえばモバイルゲームなどに良くあるような、大量のアイコンをスクロールさせるようなUIの場合、表示されていない部分のアイコンの描画についてもドローコールが増えているときがあります。表示されていない描画オブジェクトのvisibleをfalseにすると一気にドローコールを減らせる場合があります。 |
| + | |
| + | **子オブジェクトが更新されないSpriteはflattenする。 [#zccdc2c2] |
| + | Spriteのflattenメソッドを使うと、そのSpriteの描画が最適化されるので、その子オブジェクトがドローコールが増える原因であればドローコールも減ります。 |
| + | sprite.flatten(); |
| + | しかし、flattenを呼び出すと子オブジェクトが更新されても見た目が変わらないので、変えるときにはunflattenする必要があります。 |
| | | |
| *あまりこだわりすぎない [#l95ab8ef] | | *あまりこだわりすぎない [#l95ab8ef] |
- | ドローコールの削減は、うまくやるとどんどん減らせるのでつい長時間かけてしまいがちですが、実際には最近の端末の性能が上がってることもあって、少し減らした程度ではあまり速くならないことも多いです。また実際処理が重くなっているのは他の原因である事も少なくありません。 | + | ドローコールの削減は、うまくやるとどんどん減らせるのでつい長時間かけてしまいがちですが、実際には最近の端末の性能が上がってることもあって、少し減らした程度ではあまり速くならないことも多いです。一瞬1や2ドローコールが増えても体感では気づかないことも多いです。また実際処理が重くなっているのは他の原因である事も少なくありません。 |
| あまりこだわりすぎずに他のパフォーマンス評価もしながら適度に時間をかけていきましょう。 | | あまりこだわりすぎずに他のパフォーマンス評価もしながら適度に時間をかけていきましょう。 |