什么技术是可用的模糊着色器资产



我在我的游戏和应用程序中有许多着色器,我目前使用一个简单的程序来获取着色器并生成一个java类,该类将文本放入StringBuilder中,一次一个字符,因此文本搜索不会发现任何东西,如果有人逆向工程。

这感觉不对,但它确实使他们离开了视线,但我不认为他们是非常安全的。

我看到一个关于预编译的问题,没有答案。还能做什么?

考虑到着色器通常是非常小的程序,我迄今为止看到的最佳解决方案是按照您刚才所说的方式将它们嵌入到您的代码中。

这很安全。

考虑一下,如果有人想要拿走你的着色器,将通过从GPU倾销它来做到这一点,显然这要复杂得多,但它可以做到(谈论逆向工程)。

加密是一个选项,但它只保护shaders的本地存储,我仍然可以在解密后转储程序的内存。

最后但并非最不重要的是,一般来说,预编译着色器是不方便的,考虑到你正在工作的平台,那里有一个广泛的gpu和驱动程序实现家族,这更是真实的。

回到你关于预编译着色器的其他问题,在OpenGL Gold Book (OpenGL ES 2.0编程指南)的第350页有一个很好的解释,其中解释了为什么你不应该这样做。

其中一个原因是设备供应商可以自由地以他们喜欢的方式存储二进制着色器。

希望对你有帮助。

引用

一种选择是加密文件。看看Cipher

相关内容

  • 没有找到相关文章

最新更新