在上一篇教程中,我对OSG for Android的项目配置进行了讲解。在本篇教程中,我将通过一个最简单的示例,来讲解如何在Android项目中使用OSG。网上几乎所有的第一个示例,用的都是OSG库中自带的那个osgAndroidExampleGLES案例。可是那个案例对于新手来说还是有一些复杂,而且对于Android系统的兼容性并不那么好,反而更像是在PC环境下的程序。所以,我在本篇教程中,会使用一个全新的示例,从最简单的功能开始,讲解OSG for Android项目的建立方法。
本篇教程的讲解,是在项目已经配置好的前提下进行的。如果不知道OSG for Android项目应该怎么配置,请参考我的上一篇教程《OSG for Android新手教程系列(二)——项目配置》,传送门:http://blog.csdn.net/dongzhong1990/article/details/51736868
下面,我们开始Hello World。
本篇教程所用到的代码都已经上传到了CODE里,链接在这:https://code.csdn.net/dongzhong1990/osgandroidhelloworld/tree/master
-------------------------------------------------------
一、功能分析
首先,我们建立工程,我这里把示例项目命名为OsgHelloWorld。然后,按照上一篇教程中的配置方式配置好。
我们来简要分析一下,一个最基础的OSG for Android项目,需要哪些步骤:
第一,建立OSG窗口。在Android项目中建立OSG窗口的实质就是,通过Render调用OSG,在GLSurfaceView上进行渲染;
第二,打通Java和C/C++之间的屏障。如上篇教程中所讲,这里需要通过JNI来实现Java与C/C++之间的沟通;
第三,OSG场景建立及渲染。因为OSG for Android中的OSG功能,仍然是使用C/C++实现的,所以这个步骤与在PC端开发OSG项目基本相同。
下面,我对每一个步骤的具体实现方法进行详细的讲解。