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
*/
&
Ïà¹ØÎĵµ£º
ÒýÑÔ
×î½ü±ÊÕßÒ»Ö±ÔÚ×öJPEGµÄ½âÂ빤×÷£¬·¢ÏÖÓÃÍêȫʹÓùþ·òÂüÊ÷½øÐнâÂë±È½Ï·Ñʱ£¬¶øÊ¹Óñí½á¹¹´æ´¢±àÂëºÍÖµµÄ¶ÔÓ¦¹ØÏµ±È½Ï¿ì½Ý£¬µ«ÊÇÒ²´æÔڱȽÏÄÑ´¦ÀíµÄµØ·½£¬±ÈÈç½âÂ빤×÷ͨ³£ÊÇÒÔλΪµ¥Î»µÄ²Ù×÷£¬ÕâÀï±ØÈ»»áÉæ¼°µ½ÒÆÎ»²Ù×÷£¬¶ø±ÊÕß֮ǰ¶ÔλµÄ²Ù×÷ºÜÉÙ£¬¾ÑéºÜǷȱ£¬¾¹ýÕâ´ÎÀúÁ·ÖÕÓÚ·¢ÏÖÁËÒ»¸ö×Ô¼ºÔø¾ºöÊӵĶ«Î÷£¬ÄÇ¾Í ......
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 ......
Óô˷¨Ç°È·±£ÄãµÄCÔ´´úÂëÊÇÎÞ´íµÄ~~
½â¾ö°ì·¨£º
C:
ÔÚÖ÷º¯Êýºó¼Ógetch()»òch=getch(); (ÈóÌÐòµÈ´ýÄã°´ÏÂÈÎÒâ¼ü£¬ÔÙ¼ÌÐøÖ´ÐÐÏÂÃæµÄÓï¾ä)
C++:
1.°üº¬Í·Îļþʱ£º #include <stdlib.h>/*header file£¬ÒòΪÔÚstdlib.hÍ·ÎļþÖж¨ÒåÁËsystem()º¯Êý*/
2.ÔÚ×îºóÒ»¾ä¼ÓÉÏ£ºsystem("PAUSE ......
freadº¯ÊýºÍfwriteº¯Êý
1.º¯Êý¹¦ÄÜ
ÓÃÀ´¶Áдһ¸öÊý¾Ý¿é¡£
2.Ò»°ãµ÷ÓÃÐÎʽ
fread(buffer,size,count,fp);
fwrite(buffer,size,count,fp);
3.˵Ã÷
£¨1£©buffer£ºÊÇÒ»¸öÖ¸Õ룬¶ÔfreadÀ´Ëµ£¬ËüÊǶÁÈëÊý¾ÝµÄ´æ·ÅµØÖ·¡£¶ÔfwriteÀ´Ëµ£¬ÊÇÒªÊä³öÊý¾ÝµÄµØÖ·¡£
£¨2£©size£ºÒª¶ÁдµÄ×Ö½ÚÊý ......
c/c++Ö§³Ö¿É±ä²ÎÊýµÄº¯Êý£¬¼´º¯ÊýµÄ²ÎÊýÊDz»È·¶¨µÄ¡£
Ò»¡¢ÎªÊ²Ã´ÒªÊ¹Óÿɱä²ÎÊýµÄº¯Êý£¿
Ò»°ãÎÒÃDZà³ÌµÄʱºò£¬º¯ÊýÖÐÐÎʽ²ÎÊýµÄÊýĿͨ³£ÊÇÈ·¶¨µÄ£¬ÔÚµ÷ÓÃʱҪÒÀ´Î¸ø³öÓëÐÎʽ²ÎÊý¶ÔÓ¦µÄËùÓÐʵ¼Ê²ÎÊý¡£µ«ÔÚijЩÇé¿öÏÂÏ£Íûº¯ÊýµÄ²ÎÊý¸öÊý¿ÉÒÔ¸ù¾ÝÐèҪȷ¶¨£¬Òò´ËcÓïÑÔÒýÈë¿É±ä²ÎÊýº¯Êý¡£ÕâÒ²ÊÇc¹¦ÄÜÇ¿´óµÄÒ»¸ö·½Ã棬ÆäËüÄ³Ð©Ó ......