int main(int argc, char* argv[]) { //初始化NGE分为VIDEO,AUDIO,这里是只初始化VIDEO,如果初始化所有用INIT_VIDEO|INIT_AUDIO,或者INIT_ALL NGE_Init(INIT_VIDEO); //初始化按键处理btn_down是按下响应,后面是弹起时的响应,0是让nge处理home消息(直接退出),填1就是让PSP系统处理 //home消息,通常填1正常退出(1.50版的自制程序需要填0) InitInput(btn_down,NULL,1); //最后一个参数是psp swizzle优化,通常填1 p_bg = image_load("images/demo0.jpg",DISPLAY_PIXEL_FORMAT_8888,1); if(p_bg == NULL) { printf("can not open file\n"); } p_logo = image_load("images/nge2logo.png",DISPLAY_PIXEL_FORMAT_4444,1); if(p_logo == NULL) { printf("can not open file\n"); } //创建一个半透明的图片遮罩color logomask1 = CreateColor(255,255,255,128,p_logo->dtype); //随便创建一个图片遮罩color logomask2 = CreateColor(100,100,100,255,p_logo->dtype); while ( !game_quit ) { ShowFps(); InputProc(); DrawScene(); } image_free(p_bg); image_free(p_logo); NGE_Quit(); return 0; }
int main(int argc, char* argv[]) { PFont pf[2] ; int i; NGE_Init(INIT_VIDEO); //NGE_SetFontEncoding(NGE_ENCODING_UTF_8); InitInput(btn_down,btn_up,1); int maxid = GetInfoCount(); //创建一个显示image,字就显示在这个上面注意DISPLAY_PIXEL_FORMAT必须与创建字体的DISPLAY_PIXEL_FORMAT一致 pimage_text = image_create(512,512,DISPLAY_PIXEL_FORMAT_4444); //创建字体 pf[0] = create_font_hzk("fonts/GBK14","fonts/ASC14",14,DISPLAY_PIXEL_FORMAT_4444); pf[1] = create_font_freetype("fonts/simfang.ttf",13,DISPLAY_PIXEL_FORMAT_4444); char str[3][128]={"【小萝莉】","众芳摇落独暄妍,占尽风情向小园。","疏影横斜水清浅,暗香浮动月黄昏。"}; //显示GBK Font font_setcolor(pf[0],MAKE_RGBA_4444(128,0,0,255)); font_drawtext(pf[0],str[0],strlen(str[0]),pimage_text,100,195,FONT_SHOW_NORMAL); NGE_SetFontEncoding(NGE_ENCODING_GBK); for(i = 0;i<maxid;i++){ font_drawtext(pf[0],CreateInfoByid(i),strlen(CreateInfoByid(i)),pimage_text,120,200+i*20,FONT_SHOW_SHADOW); font_setcolor(pf[0],MAKE_RGBA_4444(255,0,0,255)); } //显示freetype font_setcolor(pf[1],MAKE_RGBA_4444(128,0,0,255)); NGE_SetFontEncoding(NGE_ENCODING_UTF_8); font_drawtext(pf[1],str[0],strlen(str[0]),pimage_text,100,30,FONT_SHOW_NORMAL); //for(i =1;i<3;i++){ // font_drawtext(pf[1],str[i],strlen(str[i]),pimage_text,120,35+i*20,FONT_SHOW_NORMAL); // font_setcolor(pf[1],MAKE_RGBA_4444(255,0,0,255)); //} pimage_bg = image_load("images/demo1_bg.jpg",DISPLAY_PIXEL_FORMAT_8888,1); if(pimage_bg == NULL) { printf("can not open file\n"); } pimage_box = image_load("images/demo1_box.jpg",DISPLAY_PIXEL_FORMAT_8888,1); if(pimage_box == NULL) { printf("can not open file\n"); } pimage_icon[0] = image_load_colorkey("images/demo1_icon0.bmp",DISPLAY_PIXEL_FORMAT_8888,MAKE_RGB(0,0,0),1); pimage_icon[1] = image_load_colorkey("images/demo1_icon1.png",DISPLAY_PIXEL_FORMAT_8888,MAKE_RGB(0,0,0),1); while ( !game_quit ) { ShowFps(); InputProc(); DrawScene(); } font_destory(pf[0]); font_destory(pf[1]); image_free(pimage_bg); image_free(pimage_text); image_free(pimage_box); NGE_Quit(); return 0; }
int mainloop() { if (game_quit) return NGE_APP_QUIT; ShowFps(); #ifdef NGE_INPUT_HAS_PROC InputProc(); #endif DrawScene(); return NGE_APP_NORMAL; }
int main(int argc, char* argv[]) { //初始化NGE分为VIDEO,AUDIO,这里是只初始化VIDEO,如果初始化所有用INIT_VIDEO|INIT_AUDIO,或者INIT_ALL NGE_Init(INIT_VIDEO); //初始化按键处理btn_down是按下响应,后面是弹起时的响应,0是让nge处理home消息(直接退出),填1就是让PSP系统处理 //home消息,通常填1正常退出(1.50版的自制程序需要填0) InitInput(btn_down,NULL,1); //最后一个参数是psp swizzle优化,通常填1 p_logo = image_load("images/nge2logo.png",DISPLAY_PIXEL_FORMAT_8888,1); if(p_logo == NULL) printf("can not open file\n"); p_par = image_load("par/particles.png",DISPLAY_PIXEL_FORMAT_8888,1); if(p_par == NULL) printf("can not open file\n"); //设置sprite子图 mParticle = (sprite_p)malloc(sizeof(sprite_t)); memset(mParticle,0,sizeof(sprite_t)); mParticle->sprite_image = p_par; mParticle->sprite_clip.left= 0.0f; mParticle->sprite_clip.top= 0.0f; mParticle->sprite_clip.right= 32.0f; mParticle->sprite_clip.bottom = 32.0f; mParticle->sprite_center.x = 16.0f; mParticle->sprite_center.y = 16.0f; mParticleSys = new hgeParticleSystem("par/particle1.psi", mParticle); mParticleSys->MoveTo(480.0f/2, 272.0f/2,0); mParticleSys->Fire(); timer = timer_create(); timer->start(timer); while ( !game_quit ) { ShowFps(); InputProc(); Update(); DrawScene(); LimitFps(60); } image_free(p_logo); image_free(p_par); SAFE_FREE(mParticle); delete mParticleSys; NGE_Quit(); return 0; }
int main(int argc, char* argv[]) { NGE_Init(INIT_ALL); InitInput(btn_down,btn_up,1); PFont pf[2] ; int i; //创建一个显示image,字就显示在这个上面注意DISPLAY_PIXEL_FORMAT必须与创建字体的DISPLAY_PIXEL_FORMAT一致 pimage_text = image_create(512,512,DISPLAY_PIXEL_FORMAT_4444); //创建字体 pf[0] = create_font_hzk("fonts/GBK14","fonts/ASC14",14,DISPLAY_PIXEL_FORMAT_4444); pf[1] = create_font_freetype("fonts/simfang.ttf",13,DISPLAY_PIXEL_FORMAT_4444); char str1[3][128]={"【报幕员】","下面播放的是由雪莉演唱的射手座。","欢迎大家收听!"}; char str2[3][128]={"【雪莉粉丝】","哇哇哇。。。太棒了!","XXXX女王SAMA,我爱你。"}; //显示GBK Font font_setcolor(pf[0],MAKE_RGBA_4444(128,0,0,255)); font_drawtext(pf[0],str2[0],strlen(str2[0]),pimage_text,100,195,FONT_SHOW_NORMAL); for(i = 1;i<3;i++){ font_drawtext(pf[0],str2[i],strlen(str2[i]),pimage_text,120,200+i*20,FONT_SHOW_SHADOW); font_setcolor(pf[0],MAKE_RGBA_4444(255,0,0,255)); } //显示freetype font_setcolor(pf[1],MAKE_RGBA_4444(128,0,0,255)); font_drawtext(pf[1],str1[0],strlen(str1[0]),pimage_text,100,30,FONT_SHOW_NORMAL); for(i =1;i<3;i++){ font_drawtext(pf[1],str1[i],strlen(str1[i]),pimage_text,120,35+i*20,FONT_SHOW_NORMAL); font_setcolor(pf[1],MAKE_RGBA_4444(255,0,0,255)); } pimage_bg = image_load("images/demo2_bg.jpg",DISPLAY_PIXEL_FORMAT_8888,1); if(pimage_bg == NULL) printf("can not open file\n"); pimage_box = image_load("images/demo2_box.jpg",DISPLAY_PIXEL_FORMAT_8888,1); if(pimage_box == NULL) printf("can not open file\n"); pimage_icon[0] = image_load_colorkey("images/demo2_icon1.png",DISPLAY_PIXEL_FORMAT_8888,MAKE_RGB(0,0,0),1); pimage_icon[1] = image_load_colorkey("images/demo2_icon0.bmp",DISPLAY_PIXEL_FORMAT_8888,MAKE_RGB(0,0,0),1); //初始化Mp3播放结构 MP3PlayInit(&mp3_play); PCMPlayInit(&wav_play); //设置音量 mp3_play.volume(volume); //加载 music/demo2.mp3 int res = mp3_play.load("music/simple1.mp3"); //开始播放用play需要调用stop释放资源 mp3_play.play(); while ( !game_quit ) { ShowFps(); InputProc(); DrawScene(); } font_destory(pf[0]); font_destory(pf[1]); image_free(pimage_bg); image_free(pimage_text); image_free(pimage_box); //退出mp3系统 MP3PlayFini(); PCMPlayFini(); NGE_Quit(); return 0; }