我已经开始玩 android NDK。我刚刚学到的一件事是关于创建一个 application.mk 文件来指定 armv7 abi。
我正在使用以下参数构建 san-angeles 示例。
APP_MODULES := sanangeles
APP_PROJECT_PATH := $(call my-dir)/../
APP_OPTIM := release
APP_ABI := armeabi-v7a
然而,这似乎以与以前完全相同的速度运行(即非常糟糕)。我只是 GL 限制而不是 CPU 限制还是这里有问题?
我注意到编译时会发出以下命令行选项:
-march=armv7-a -mfloat-abi=softfp -mfpu=vfp -mthumb
让我担心的是“softfp”。提到了 v7 abi,VFP fpu 的东西,我猜“thumb”指的是“thumb-2”指令(虽然我不知道这些到底是什么)。然而,“softfp”确实让我担心。不应该是“hardfp”吗?
有人对这些问题有任何想法吗?我想我可能已经准备好开始为我的 HTC Desire 实现一些 GL ES 2.0 代码,但我想确保我能从中获得最好的速度:)
提前干杯!