Changes between Version 127 and Version 128 of AndroidPort
- Timestamp:
- Jan 18, 2012, 11:11:28 AM (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AndroidPort
v127 v128 98 98 99 99 I think the best approach is to extend graphics/!ShaderProgram.cpp to support GLSL shaders (it was designed with that in mind, but I don't know if it'll actually work without some interface changes); then move all the renderer's existing fixed-function texture-environment setup code into ShaderProgramFFP.cpp and implement GLSL-based equivalents, so that most of the rest of the renderer code doesn't have to care whether it's using FFP or GLSL (it just uses the CShaderProgram interface). Also, change all immediate-mode drawing (glVertex3f etc) to vertex arrays. I think that should deal with the most serious problems, and the code would all be shared between GLES and desktop GL modes (no need for forking or #ifdefs etc) and can be tested with desktop GL. Then there's probably just lots of little issues remaining, which can be addressed as they occur. 100 101 === Optimizations === 102 The target device supports the ARM NEON SIMD instruction set. In turn, it does not support the x86 SSE SIMD instruction set. Hence, it would be relevant to 1) identify portions of the code that use SSE and port them to NEON, and 2) identify portions of the code that lends itself well to SIMD processing but doesn't currently target either SIMD engine and port them to both to achieve a speedup on both ARM and x86 architectures. 100 103 101 104 === Other dependencies === … … 165 168 $ sudo apt-get install ant subversion 166 169 }}} 167 168 170 On 64-bit Ubuntu you may need to install some 32-bit libraries: 171 169 172 {{{ 170 173 $ sudo apt-get install ia32-libs 171 174 }}} 172 173 175 === Setting up an Android project === 174 176 All data that is to be compiled and packaged into the Android application must be assembled in an Android ''project''. … … 282 284 $ ~/android/android-ndk-r7-crystax-4/ndk-build 283 285 }}} 284 285 286 === Alternative approach === 286 287 Build using the standard Premake build system thusly: