锘??xml version="1.0" encoding="utf-8" standalone="yes"?>国产亚洲成av人在线观看导航,在线不卡a资源高清,在线精品福利 http://m.shnenglu.com/qxtianlong/archive/2015/09/03/211750.html鏂潌鐮存灙澶?/dc:creator>鏂潌鐮存灙澶?/author>Thu, 03 Sep 2015 13:04:00 GMT http://m.shnenglu.com/qxtianlong/archive/2015/09/03/211750.html http://m.shnenglu.com/qxtianlong/comments/211750.html http://m.shnenglu.com/qxtianlong/archive/2015/09/03/211750.html#Feedback 0 http://m.shnenglu.com/qxtianlong/comments/commentRss/211750.html http://m.shnenglu.com/qxtianlong/services/trackbacks/211750.html 闃呰鍏ㄦ枃 ]]> TextureManager綆$悊 http://m.shnenglu.com/qxtianlong/archive/2014/12/13/209178.html鏂潌鐮存灙澶?/dc:creator>鏂潌鐮存灙澶?/author>Sat, 13 Dec 2014 10:56:00 GMT http://m.shnenglu.com/qxtianlong/archive/2014/12/13/209178.html http://m.shnenglu.com/qxtianlong/comments/209178.html http://m.shnenglu.com/qxtianlong/archive/2014/12/13/209178.html#Feedback 0 http://m.shnenglu.com/qxtianlong/comments/commentRss/209178.html http://m.shnenglu.com/qxtianlong/services/trackbacks/209178.html
1 /*
2 * TextureManager.h
3 *
4 * Created on: 2014騫?2鏈?3鏃?br />
5 * Author: wgzll
6 */
7
8 #ifndef SRC_TEXTUREMANAGER_H_
9 #define SRC_TEXTUREMANAGER_H_
10
11 #include <iostream>
12 #include <string >
13 #include <map>
14 #include <sdl2/sdl.h>
15
16 using namespace std;
17
18 class TextureManager
19 {
20 public :
21 static TextureManager* Instance()
22 {
23 if (s_pInstance == 0)
24 {
25 s_pInstance = new TextureManager();
26 return s_pInstance;
27 }
28
29 return s_pInstance;
30 }
31
32 bool load(string fileName,string id,SDL_Renderer* pRenderer);
33 void draw(string id,int x,int y,int width,int height,SDL_Renderer* pRenderer,SDL_RendererFlip flip=SDL_FLIP_NONE);
34 void drawFrame(string id,int x,int y,int width,int height,int currentRow,int currentFrame,SDL_Renderer* pRenderer,double angle,int alpha,SDL_RendererFlip flip=SDL_FLIP_NONE);
35
36 map<string ,SDL_Texture*> getTextureMap(){return m_textureMap;}
37
38 public :
39 TextureManager(){}
40 ~TextureManager(){}
41 private :
42 map<string ,SDL_Texture*> m_textureMap;
43 static TextureManager* s_pInstance;
44
45 };
46
47 typedef TextureManager TheTextureManager;
48
49
50 #endif /* SRC_TEXTUREMANAGER_H_ */
51
1 /*
2 * TextureManager.cpp
3 *
4 * Created on: 2014騫?2鏈?3鏃?br />
5 * Author: wgzll
6 */
7
8 #include "TextureManager.h"
9 #include <sdl2/sdl.h>
10 #include <sdl2/sdl_image.h>
11
12 TextureManager* TextureManager::s_pInstance = 0;
13
14 bool TextureManager::load(string fileName,string id,SDL_Renderer* pRenderer)
15 {
16 SDL_Surface* pTempSurface = IMG_Load(fileName.c_str());
17
18
19 if (pTempSurface == 0)
20 {
21 cout<<IMG_GetError();
22 return false ;
23 }
24
25 SDL_Texture* pTexture = SDL_CreateTextureFromSurface(pRenderer,pTempSurface);
26
27 SDL_FreeSurface(pTempSurface);
28
29 if (pTexture != 0)
30 {
31 m_textureMap[id] = pTexture;
32 return true ;
33 }
34 return false ;
35 }
36
37 void TextureManager::draw(string id, int x, int y, int width, int height, SDL_Renderer* pRenderer, SDL_RendererFlip flip)
38 {
39 SDL_Rect srcRect;
40 SDL_Rect destRect;
41
42 srcRect.x = 0;
43 srcRect.y = 0;
44 srcRect.w = destRect.w = width;
45 srcRect.h = destRect.h = height;
46 destRect.x = x;
47 destRect.y = y;
48
49 SDL_RenderCopyEx(pRenderer, m_textureMap[id], &srcRect, &destRect, 0, 0, flip);
50 }
51
52 void TextureManager::drawFrame(string id, int x, int y, int width, int height, int currentRow, int currentFrame, SDL_Renderer *pRenderer, double angle, int alpha, SDL_RendererFlip flip)
53 {
54 SDL_Rect srcRect;
55 SDL_Rect destRect;
56 srcRect.x = width * currentFrame;
57 srcRect.y = height * currentRow;
58 srcRect.w = destRect.w = width;
59 srcRect.h = destRect.h = height;
60 destRect.x = x;
61 destRect.y = y;
62
63 SDL_SetTextureAlphaMod(m_textureMap[id], alpha);
64 SDL_RenderCopyEx(pRenderer, m_textureMap[id], &srcRect, &destRect, angle, 0, flip);
65 }
66
]]> SDL2綺劇伒鍔ㄧ敾 http://m.shnenglu.com/qxtianlong/archive/2014/12/13/209177.html鏂潌鐮存灙澶?/dc:creator>鏂潌鐮存灙澶?/author>Sat, 13 Dec 2014 08:11:00 GMT http://m.shnenglu.com/qxtianlong/archive/2014/12/13/209177.html http://m.shnenglu.com/qxtianlong/comments/209177.html http://m.shnenglu.com/qxtianlong/archive/2014/12/13/209177.html#Feedback 0 http://m.shnenglu.com/qxtianlong/comments/commentRss/209177.html http://m.shnenglu.com/qxtianlong/services/trackbacks/209177.html
SDL_Surface* pTempSurface = SDL_LoadBMP("image/animate.bmp");
// SDL_Surface* pTempSurface = IMG_Load("image/animate.png");
// SDL_Surface* pTempSurface = IMG_Load("image/animate-alpha.png");
SDL_SetRenderDrawColor(m_pRenderer,255,0,0,255);
m_pTexture = SDL_CreateTextureFromSurface(m_pRenderer,pTempSurface);
SDL_FreeSurface(pTempSurface);
SDL_QueryTexture(m_pTexture,NULL,NULL,&m_sourceRectangle.w,&m_sourceRectangle.h);
m_sourceRectangle.w=128;
m_sourceRectangle.h=82;
void Game::update()
{
m_sourceRectangle.x = 128 * int (((SDL_GetTicks()/100)%6));
}
鎴浘濡備笅: 濡備綍鍋氬埌鍥劇墖緲昏漿鐨勫憿1 void Game::render()2 {3 SDL_RenderClear(m_pRenderer);4 // SDL_RenderCopy(m_pRenderer,m_pTexture,&m_sourceRectangle,&m_destinationRectangle); 5 // SDL_RenderCopy(m_pRenderer,m_pTexture,NULL,NULL); 6 SDL_RenderCopyEx(m_pRenderer,m_pTexture,&m_sourceRectangle,&m_destinationRectangle,0,NULL,SDL_FLIP_HORIZONTAL);//姝ゅ彞璧風殑浣滅敤7 SDL_RenderPresent(m_pRenderer);8 }
]]> SDL2璐村浘鍒濇帰1 http://m.shnenglu.com/qxtianlong/archive/2014/12/13/209174.html鏂潌鐮存灙澶?/dc:creator>鏂潌鐮存灙澶?/author>Sat, 13 Dec 2014 04:35:00 GMT http://m.shnenglu.com/qxtianlong/archive/2014/12/13/209174.html http://m.shnenglu.com/qxtianlong/comments/209174.html http://m.shnenglu.com/qxtianlong/archive/2014/12/13/209174.html#Feedback 0 http://m.shnenglu.com/qxtianlong/comments/commentRss/209174.html http://m.shnenglu.com/qxtianlong/services/trackbacks/209174.html
鍦板潃:http://wiki.libsdl.org/SDL_CreateRenderer
#include "SDL.h"
int main(int argc, char *argv[]) {
SDL_Window *win = NULL;
SDL_Renderer *renderer = NULL;
SDL_Texture *bitmapTex = NULL;
SDL_Surface *bitmapSurface = NULL;
int posX = 100, posY = 100, width = 320, height = 240;
SDL_Init(SDL_INIT_VIDEO);
win = SDL_CreateWindow("Hello World", posX, posY, width, height, 0);
renderer = SDL_CreateRenderer(win, -1, SDL_RENDERER_ACCELERATED);
bitmapSurface = SDL_LoadBMP("img/hello.bmp");
bitmapTex = SDL_CreateTextureFromSurface(renderer, bitmapSurface);
SDL_FreeSurface(bitmapSurface);
while (1) {
SDL_Event e;
if (SDL_PollEvent(&e)) {
if (e.type == SDL_QUIT) {
break ;
}
}
SDL_RenderClear(renderer);
SDL_RenderCopy(renderer, bitmapTex, NULL, NULL);
SDL_RenderPresent(renderer);
}
SDL_DestroyTexture(bitmapTex);
SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(win);
SDL_Quit();
return 0;
}
涓嬮潰鐪嬬湅SDL Game Development緇欏嚭鐨勪唬鐮侊紝鎴戞憳褰曚簡涓灝忔
if (m_pRenderer != 0)
{
cout<<"renderer creation success\n";
SDL_SetRenderDrawColor(m_pRenderer,0,0,0,255);
m_pTexture = SDL_CreateTextureFromSurface(m_pRenderer,pTempSurface);
SDL_FreeSurface(pTempSurface);
SDL_QueryTexture(m_pTexture,NULL,NULL,&m_sourceRectangle.w,&m_sourceRectangle.h);
m_sourceRectangle.w=50;
m_sourceRectangle.h=50;
m_destinationRectangle.x=m_sourceRectangle.x=0;
m_destinationRectangle.y=m_sourceRectangle.y=0;
m_destinationRectangle.x=100;
m_destinationRectangle.y=100;
m_sourceRectangle.x=50;
m_sourceRectangle.y=50;
m_destinationRectangle.w=m_sourceRectangle.w;
m_destinationRectangle.h=m_sourceRectangle.h;
}
1 void Game::render()
2 {
3 SDL_RenderClear(m_pRenderer);
4 // SDL_RenderCopy(m_pRenderer,m_pTexture,&m_sourceRectangle,&m_destinationRectangle);
5 SDL_RenderCopy(m_pRenderer,m_pTexture,NULL,NULL);
6 SDL_RenderPresent(m_pRenderer);
7 }
鎴浘濡備笅: ]]> Eclipse+sdl2.0鐜閰嶇疆 http://m.shnenglu.com/qxtianlong/archive/2014/12/10/209149.html鏂潌鐮存灙澶?/dc:creator>鏂潌鐮存灙澶?/author>Wed, 10 Dec 2014 12:47:00 GMT http://m.shnenglu.com/qxtianlong/archive/2014/12/10/209149.html http://m.shnenglu.com/qxtianlong/comments/209149.html http://m.shnenglu.com/qxtianlong/archive/2014/12/10/209149.html#Feedback 0 http://m.shnenglu.com/qxtianlong/comments/commentRss/209149.html http://m.shnenglu.com/qxtianlong/services/trackbacks/209149.html 濂戒箙娌℃湁鍐欎唬鐮佷簡錛孷S澶ぇ涓嶆兂鍘昏垂鏃朵笅杞斤紝灝變笅杞戒簡eclipse-cpp-luna-SR1-win32-x86_64,緋葷粺win7 64bit鍏蜂綋涓嬭澆鍦板潃濡備笅: http://www.eclipse.org/downloads/ 涓嬭澆鎵闇瑕佺殑鐗堟湰 鎺ヤ笅鏉ュ氨鏄疢ingW 涓嬭澆鍦板潃 http://www.mingw.org/ 璇█鐜鎼緩濂戒簡銆?br />涓嬭澆sdl,鍦板潃http://www.libsdl.org 娉ㄦ剰鐗堟湰 OK鍟︼紒錛侊紒 1 /* 2 * main.cpp 3 * 4 * Created on: 2014騫?2鏈?0鏃?br /> 5 * Author: wgzll 6 */ 7 #include <iostream> 8 #include <sdl2/sdl.h> 9 using namespace std;10 11 SDL_Window* g_pWindow = 0;12 SDL_Renderer* g_pRenderer = 0;13 14 int main(int argc,char *args[])15 {16 if (SDL_Init(SDL_INIT_EVERYTHING)>=0)17 {18 g_pWindow = SDL_CreateWindow("Chapter 1: Setting up SDL",19 SDL_WINDOWPOS_CENTERED,SDL_WINDOWPOS_CENTERED,20 640,480,21 SDL_WINDOW_SHOWN);22 if (g_pWindow !=0)23 {24 cout<<"鍒濆鍖栨垚鍔?<<endl;25 g_pRenderer = SDL_CreateRenderer(g_pWindow,-1,0);26 }27 }28 else 29 {30 cout<<"鍒濆鍖栧け璐?<<endl;31 return 1;32 }33 34 SDL_SetRenderDrawColor(g_pRenderer,0,0,0,255);35 36 SDL_RenderClear(g_pRenderer);37 38 SDL_RenderPresent(g_pRenderer);39 40 SDL_Delay(500);41 42 SDL_Quit();43 44 return 0;45 }
#define SDL_INIT_EVERYTHING ( \ SDL_INIT_TIMER | SDL_INIT_AUDIO | SDL_INIT_VIDEO | SDL_INIT_EVENTS | \ SDL_INIT_JOYSTICK | SDL_INIT_HAPTIC | SDL_INIT_GAMECONTROLLER \ ) Uint32 subsystem_init; subsystem_init = SDL_WasInit(SDL_INIT_EVERYTHING); if (subsystem_init & SDL_INIT_VIDEO) { printf("Video is initialized.\n");} else { printf("Video is not initialized.\n"); }if (SDL_WasInit(SDL_INIT_VIDEO) != 0) { printf("Video is initialized.\n");} else { printf("Video is not initialized.\n");} Uint32 subsystem_mask = SDL_INIT_VIDEO | SDL_INIT_AUDIO; if (SDL_WasInit(subsystem_mask) == subsystem_mask) { printf("Video and Audio initialized.\n");} else { printf("Video and Audio not initialized.\n");} SDL_INIT_TIMER timer subsystem SDL_INIT_AUDIO audio subsystem SDL_INIT_VIDEO video subsystem SDL_INIT_JOYSTICK joystick subsystem SDL_INIT_HAPTIC haptic (force feedback) subsystem SDL_INIT_GAMECONTROLLER controller subsystem SDL_INIT_EVENTS events subsystem SDL_INIT_EVERYTHING all of the above subsystems SDL_INIT_NOPARACHUTE compatibility; this flag is ignored
]]> 青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
亚洲一区3d动漫同人无遮挡 |
欧美韩日一区二区 |
亚洲尤物影院 |
亚洲人屁股眼子交8 |
在线观看视频一区二区欧美日韩 |
国产精品www |
国产精品日本一区二区 |
国产精品综合 |
久久riav二区三区 |
尤妮丝一区二区裸体视频 |
国产日韩欧美一二三区 |
国产欧美日韩专区发布 |
国产一区二区三区视频在线观看 |
国产精品久久久久aaaa九色 |
国产精品国产三级国产普通话99 |
国产精品久久7 |
国产色综合天天综合网 |
国产亚洲在线 |
亚洲精品美女在线 |
亚洲欧美国产一区二区三区 |
久久久久久婷 |
亚洲精品小视频在线观看 |
亚洲天天影视 |
久久综合给合久久狠狠色 |
樱桃国产成人精品视频 |
久久精品国产免费看久久精品 |
午夜精品视频在线观看 |
麻豆九一精品爱看视频在线观看免费 |
美女黄色成人网 |
日韩视频在线一区二区 |
久久成人免费电影 |
欧美日韩三区 |
在线观看的日韩av |
亚洲欧美日韩一区二区三区在线观看 |
久久只有精品 |
日韩视频在线观看免费 |
久久国产婷婷国产香蕉 |
欧美视频日韩视频在线观看 |
国产午夜精品久久久 |
亚洲美女中出 |
国产精品久久久一区二区 |
亚洲一区二区精品在线观看 |
午夜精品在线视频 |
亚洲午夜久久久久久久久电影院
|
蜜桃伊人久久 |
欧美日韩麻豆 |
国产在线播放一区二区三区 |
日韩午夜电影av |
久久国内精品自在自线400部 |
欧美高清日韩 |
午夜精品久久久久久久 |
欧美成人蜜桃 |
欧美理论大片 |
亚洲午夜久久久久久久久电影院
|
亚洲欧美日韩精品久久奇米色影视 |
久久九九全国免费精品观看 |
亚洲精品日韩精品 |
久久免费午夜影院 |
国产精品女同互慰在线看 |
亚洲韩国青草视频 |
久久精品女人的天堂av |
夜夜嗨av一区二区三区网站四季av
|
免费看av成人 |
午夜精品一区二区三区电影天堂 |
欧美大胆a视频 |
1024成人网色www |
久久天堂av综合合色 |
亚洲自拍电影 |
国产精品v日韩精品 |
99视频精品全国免费 |
欧美日韩一卡二卡 |
尤物视频一区二区 |
欧美一区日韩一区 |
亚洲国产成人久久综合一区 |
欧美成人亚洲成人 |
亚洲黄色av一区 |
欧美大片在线影院 |
中文日韩在线视频 |
免费成人高清视频 |
精品91在线 |
久久久在线视频 |
欧美一区免费视频 |
韩日精品中文字幕 |
久久婷婷麻豆 |
久久日韩粉嫩一区二区三区 |
国内精品久久久久久久97牛牛 |
久久精品国产久精国产一老狼 |
午夜精品在线 |
国产综合视频 |
美乳少妇欧美精品 |
免费在线亚洲 |
久久久久九九九 |
欧美午夜宅男影院在线观看 |
亚洲一区二区三区精品在线 |
一区二区三区四区蜜桃 |
国产精品v亚洲精品v日韩精品
|
久久精品一区蜜桃臀影院 |
欧美在线资源 |
亚洲国产精品成人精品 |
亚洲国产精品免费 |
欧美麻豆久久久久久中文 |
亚洲伊人第一页 |
欧美综合77777色婷婷 |
国产精品国产亚洲精品看不卡15 |
亚洲免费激情 |
最新成人在线 |
欧美美女bbbb |
久久精品国产91精品亚洲 |
久久影视精品 |
亚洲视频福利 |
久久九九精品99国产精品 |
日韩亚洲欧美高清 |
欧美亚洲视频在线观看 |
最新高清无码专区 |
中文亚洲免费 |
亚洲国产精品热久久 |
一本一本a久久 |
亚洲国产二区 |
亚洲影院免费观看 |
日韩一级片网址 |
欧美一级在线亚洲天堂 |
一区二区三区 在线观看视频 |
亚洲综合成人在线 |
亚洲精品乱码久久久久久按摩观 |
亚洲一区免费在线观看 |
亚洲日韩欧美一区二区在线 |
一区二区三区|亚洲午夜 |
亚洲承认在线 |
欧美一区二区三区精品电影 |
一本色道久久综合亚洲二区三区 |
欧美在线观看网址综合 |
亚洲先锋成人 |
欧美亚洲一区二区在线 |
亚洲一二三区精品 |
蜜乳av另类精品一区二区 |
欧美影院成人 |
国产精品久久网站 |
亚洲精品日韩久久 |
国产视频综合在线 |
亚洲特色特黄 |
亚洲神马久久 |
欧美高清在线视频 |
免费在线观看一区二区 |
国产精品美女www爽爽爽 |
亚洲久久成人 |
亚洲美女免费精品视频在线观看 |
久久久久久免费 |
久久精品国产一区二区三区 |
国产精品草草 |
9色国产精品 |
国产精品99久久久久久久久 |
欧美成人午夜激情在线 |
亚洲黄色成人 |
91久久亚洲 |
女生裸体视频一区二区三区 |
老司机免费视频一区二区三区 |
欧美一乱一性一交一视频 |
亚洲伊人伊色伊影伊综合网
|
亚洲素人在线 |
亚洲午夜精品17c |
欧美日韩中字 |
亚洲午夜免费福利视频 |
国产午夜一区二区三区 |
亚洲在线视频一区 |
欧美一区二区三区精品 |
国产精品午夜电影 |
欧美一区二区福利在线 |
久久久亚洲国产美女国产盗摄 |
国户精品久久久久久久久久久不卡
|
亚洲午夜国产一区99re久久 |
亚洲综合色婷婷 |
国产精品欧美日韩久久 |
午夜在线一区二区 |
免费不卡亚洲欧美 |
韩国av一区 |
欧美77777 |
一区二区动漫 |
久久手机精品视频 |
亚洲精品一区二区三区99 |
欧美日韩国产免费观看 |
亚洲一区二区三区四区五区午夜 |
久久成人国产精品 |
尤物99国产成人精品视频 |
欧美精品一区二区三区在线播放 |
男人插女人欧美 |
在线午夜精品 |
国产一区二区三区四区hd |
午夜精品久久久久久久99热浪潮 |
欧美成人免费在线观看 |
亚洲自啪免费 |
91久久中文 |
国产精品日本欧美一区二区三区 |
久久久久久9999 |
亚洲人成人一区二区在线观看 |
亚洲欧美福利一区二区 |
伊人婷婷欧美激情 |
国产精品成人一区二区艾草 |
一区二区欧美在线观看 |
亚洲日韩欧美一区二区在线 |
久久久久九九视频 |