テクスチャの暗号化について、面白いアプローチがあったので紹介。
これは、適当なテクスチャに難読化処理をかけたもの。左がエンコードした画像、右がデコードした画像になる。
単純にカードを隠したい場合にはそれ程有効ではないが、カードの絵柄を隠したい・見られたくない等の場合は面白い手法だと思う。
本当はこの手法をuniteの暗号化で紹介したかったんだけど、自分でやると目処が立たなかったので断念したのは秘密。
unity-shadercipher
https://github.com/keijiro/unity-shadercipher
特性は、ロード時の時間は殆ど非暗号ファイルと変わらないが、デコードに毎回GPU処理を使うといったもの。曰くノイズ生成が重いらしいので、手を打つ必要があるが、非常に面白い手法。
カードゲームを作る場合、AssetBundleを暗号化すると解読・AssetBundle展開・データ取得でメモリを非常に喰うので、こういった手法を検討しても良いんじゃないかなと思う。