OpenGL + C++ + Java
OpenGL + C++ + Java
这个组合有一点奇怪,因为要实现在
opengl
中播放视频,所以不得不有这样奇怪的组合。上层的
MediaPlayer
封装的基本上是针对
android UI
的框架,如果想在
opengl
中显示,估计难度很大。另外,很多开源的
opengl
的游戏基本上都是
C++
编写,所以这个体系的作用还是很大的,之所以需要
java
,因为上层的很多例如触摸、重力感应,这样的东西,
android
是以
java
实现的,底层的根本看不到,这样的组合起来,充分的利用每一个层次的优点,最大效率提高用户体验。
我们首先会简单的测试一下
opengl
立方体例子,然后我们实现在
native
层上面的绘制,如何使用
jni
来传递。最后我们简单的说一下使用自带的
android
封装的
opengl
接口
api
有什么样的限制。
Google
提供的
api
是
java
的
api
,对于
java
开发者来说,这是好消息,对于
C++
开发者来说,就会有很大的麻烦。现在主流的游戏引擎、游戏算法基本上都是
C/C++
实现。
我们纯粹利用
C/C++
来写
OpenGL
的应用程序的时候,基本流程如下,初始化
EGL
,选择配置,然后选择
Display
,然后创建
Surface
,之后就是
DrawFram
和
Swap
了。
Google
很聪明的给这个流程进行了一次封装,封装成这样的几个类,大致的代码如下:
首先是
EGL
的相关操作:
public
class
EglHelper {
public
EglHelper() {
}
/**
*
Initialize
EGL
for
a
given
configuration
spec.
*
@param
configSpec
*/
public
void
start(
int
[] configSpec){
/*
* Get an EGL instance
*/
&
相关文档:
1.本章思维导图:
Example1:
char
*strcpy(char *target, const char *source) {
char *t = target;
// Copy the contents of source into target.
while(*source) *target++ = *source++;
// Null-terminate the
target.
*ta ......
有些网友经常询问:在VC++中如何访问javascript中的对象、函数、变量等元素?
这里把以前发表的一系列文章集中在一起,方便查阅。
vc++访问javascript(1)--window在脚本引擎中的作用
http://blog.csdn.net/pimshell/archive/2008/08/02/2758863.aspx
vc++访问javascript(2)--IDispatchEx是动态脚本语言的基础&nb ......
用此法前确保你的C源代码是无错的~~
解决办法:
C:
在主函数后加getch()或ch=getch(); (让程序等待你按下任意键,再继续执行下面的语句)
C++:
1.包含头文件时: #include <stdlib.h>/*header file,因为在stdlib.h头文件中定义了system()函数*/
2.在最后一句加上:system("PAUSE ......
(转)C/C++中的日期和时间 time_t与struct tm转换
摘要:
本文从介绍基础概念入手,探讨了在C/C++中对日期和时间操作所用到的数据结构和函数,并对计时、时间的获取、时间的计算和显示格式等方面进行了阐述。本文还通过大量的实例向你展示了time.h头文件中声明的各种函数和数据结构的详细使用方法。
关键字:UTC(世界标 ......
1、快速初始化
char *str = new [size];
str[0]='\0';
2、memcpy的妙用
试题6:已知WAV文件格式如下表,打开一个WAV文件,以适当的数据结构组织WAV文件头并解析WAV格式的各项信息。
WAVE文件格式说明表
偏移地址 字节数 数据类型 内 容
文件头
00H 4 Char "RIFF"标志
......