博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
osg for android (一) 简单几何物体的加载与显示
阅读量:5019 次
发布时间:2019-06-12

本文共 2029 字,大约阅读时间需要 6 分钟。

  • 1. 首先需要一个OSG for android的环境.
  • (1).NDK 现在Eclipse 对NDK已经相当友好了,已经不需要另外cygwin的参与,具体可以参考
  •  
  • (2).osg for android的编译,参考 建议编译OpenGL ES2版本.
  • 2.然后加载OSG自带的Example:osgAndroidExampleGLES2
  •  
    (1)点击菜单键加载文件路径,输入/sdcard/osg/cow.osg(必须先往sdcard创建文件夹osg并把cow.osg放到该文件夹里边)
                                                                                              

(2)接着经典的牛出现了:)     

                                                                                                           

3.自带的example太多的代码,这样的代码无论对于NDK的初学者或OSG很不直观,所以本人重写了一个HelloWolrd for osg的例子。例子很简单,就是简单加载一个四边形并附上颜色。

(1)Java 代码:

 

package com.example.helloosg;import android.app.Activity;import android.opengl.GLSurfaceView;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.widget.TextView;public class MainActivity extends Activity {    private GLSurfaceView mGLSurfaceView;        @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        mGLSurfaceView = new GLSurfaceView(this);        mGLSurfaceView.setEGLContextClientVersion(2);        NDKRenderer renderer = new NDKRenderer();        this.mGLSurfaceView.setRenderer(renderer);        this.setContentView(mGLSurfaceView);    }    @Override    public boolean onCreateOptionsMenu(Menu menu) {        // Inflate the menu; this adds items to the action bar if it is present.        getMenuInflater().inflate(R.menu.main, menu);        return true;    }    @Override    protected void onResume() {        // TODO Auto-generated method stub        super.onResume();        mGLSurfaceView.onResume();    }    @Override    protected void onPause() {        // TODO Auto-generated method stub        super.onPause();        mGLSurfaceView.onPause();    }    @Override    public boolean onOptionsItemSelected(MenuItem item) {        // Handle action bar item clicks here. The action bar will        // automatically handle clicks on the Home/Up button, so long        // as you specify a parent activity in AndroidManifest.xml.        int id = item.getItemId();        if (id == R.id.action_settings) {            return true;        }        return super.onOptionsItemSelected(item);    }}

 

转载于:https://www.cnblogs.com/hacksong/p/4055617.html

你可能感兴趣的文章
hexo 搭建博客
查看>>
关于 UIWebView 几个高级用法
查看>>
maven创建的项目中无法创建src/main/java 解决方案
查看>>
华为软件开发云测评报告二:代码检查
查看>>
集合1
查看>>
js 原生 ajax
查看>>
关键词 virtual
查看>>
建造者模式(屌丝专用)
查看>>
UVALive 4730 Kingdom +段树和支票托收
查看>>
公布windows的"Universal Apps" Unity3D游戏
查看>>
Data Guard 三种模式解释
查看>>
哥德巴赫猜想
查看>>
Git教程学习 -- 第六篇 标签管理
查看>>
[LeetCode] 260. Single Number III(位操作)
查看>>
web工作流管理系统开发之一 工作流概念
查看>>
NHibernate之旅(21):探索对象状态
查看>>
学习ASP.NET Core, 怎能不了解请求处理管道[4]: 应用的入口——Startup
查看>>
Ubuntu下Thunderbird设置
查看>>
DDD实战进阶第一波(十二):开发一般业务的大健康行业直销系统(订单上下文POCO模型)...
查看>>
潜移默化学会WPF--值转换器 - AYUI框架 - 博客园
查看>>