Unity3D,同时使用第三方静态库指定armv6编译crash的问题

本文探讨了使用Unity3D开发的游戏在不同ARM架构(如armv6和armv7)上的表现差异及崩溃问题。指出armv6只支持OpenGLES1.1而armv7支持更高级的OpenGL版本,并提供了通过修改宏定义来解决兼容性问题的方法。

        网上有些使用Unity3D的游戏,在同时使用admob或flurry( 移动应用分析)的静态库时,如果只指定armv6编译,会crash掉。网上有说是Unity3D的一个BUG:http://forum.unity3d.com/threads/68443-Trying-to-build-only-for-armv6-causes-a-EXC_BAD_ACCESS。 

        另外,指定armv6或armv7编译时,从表现上看,指定armv6时程序运行的快,就感觉跟armv6、armv7有关,其实是跟OpenGL有关。原因:armv6只支持OpenGL ES1.1, armv7支持OpenGL 1.1和2.0。 很多着色使用OpenGL ES1.1比使用OpenGL ES 2.0快。在armv7下,为了使用OpenGL 1.1,把宏值:#define USE_OPENGLES20_IF_AVAILABLE 1改为

#define USE_OPENGLES20_IF_AVAILABLE 0。参见:http://forum.unity3d.com/threads/113862-build-crashes-on-armv6-not-armv-7?highlight=armv6+crash


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值