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
*/
&
Ïà¹ØÎĵµ£º
Ò»¡¢Îĵµ¶ÔÏóÄ£ÐÍ£¨DOM£©
¡¡¡¡DOMÊÇDocument Object Model£¨Îĵµ¶ÔÏóÄ£ÐÍ£©µÄ¼ò³Æ£¬ÊǶÔXMLÎĵµ½øÐÐÓ¦Óÿª·¢¡¢±à³ÌµÄÓ¦ÓóÌÐò½Ó¿Ú£¨API£©¡£×÷ΪW3C¹«²¼µÄÒ»ÖÖ¿çÆ½Ì¨¡¢ÓëÓïÑÔÎ޹صĽӿڹ淶£¬DOMÌṩÁËÔÚ²»Í¬»·¾³ºÍÓ¦ÓÃÖеıê×¼³ÌÐò½Ó¿Ú£¬¿ÉÒÔÓÃÈκÎÓïÑÔʵÏÖ¡£
¡¡¡¡DOM²ÉÓöÔÏóÄ£ÐͺÍһϵÁеĽӿÚÀ´ÃèÊöXMLÎĵµµÄÄÚÈݺͽ ......
C/C++λ²Ù×÷
Ò»¡¢´«Í³µÄC·½Ê½Î»²Ù×÷£º
1.»ù±¾²Ù×÷£º
ʹÓÃÒ»¸öunsigned int±äÁ¿À´×÷ΪλÈÝÆ÷¡£
2.²Ù×÷·û£º
| °´Î»»ò²Ù×÷·û£ºresult=exp1|exp2;µ±exp1ºÍexp2ÖжÔӦλÖÐÖÁÉÙÓÐÒ»¸öΪ1ʱ£¬resultÖжÔӦλΪ1£¬·ñÔòΪ0¡£
& °´Î»Óë²Ù×÷·û£º£ºresult=exp1&exp2;µ±exp1ºÍexp2ÖжÔӦλȫΪ1ʱ ......
ºÍÔÚIDEÖбàÒëÏà±È£¬ÃüÁîÐÐģʽ±àÒëËٶȸü¿ì£¬²¢¿ÉÒÔ±ÜÃâ±»IDE²úÉúµÄһЩ¸½¼ÓÐÅÏ¢Ëù¸ÉÈÅ¡£±¾ÎĽ«½éÉÜ΢ÈíC/C++±àÒëÆ÷ÃüÁîÐÐģʽÉ趨ºÍÓ÷¨¡£ 1¡¢ÉèÖû·¾³±äÁ¿£º PATH=C:\Program Files\Microsoft Visual Studio 8\VC\bin INCLUDE=C:\Program Files\Microsoft Visual Studio 8\VC\include LIB=C:\Program Files\Microsof ......