锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久av一区,伊人色综合久久天天,欧美激情一区二区在线 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
]]> 青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
欧美一区二区三区免费大片 |
黄色一区二区在线 |
亚洲天堂偷拍 |
欧美成人激情视频 |
欧美大成色www永久网站婷 |
伊人激情综合 |
欧美日韩国产一区精品一区 |
亚洲一区二区三区四区五区午夜 |
欧美尤物巨大精品爽 |
亚洲欧美日韩视频二区 |
黄色影院成人 |
亚洲精品国产精品久久清纯直播 |
国产精品va在线 |
久久精品人人做人人综合 |
亚洲国产精品久久久久婷婷老年
|
亚洲久久视频 |
国产午夜精品全部视频播放 |
免费久久99精品国产自 |
亚洲在线不卡 |
99热在这里有精品免费 |
国外成人在线视频 |
欧美三级韩国三级日本三斤 |
久久久精品国产免大香伊
|
久久成人国产 |
亚洲欧美电影院 |
日韩视频不卡中文 |
欧美国产日本高清在线 |
羞羞答答国产精品www一本 |
一区二区欧美在线 |
亚洲激情视频 |
在线观看欧美视频 |
亚洲欧美国产视频 |
欧美激情四色
|
国产日韩欧美精品在线 |
亚洲伦理自拍 |
久久综合99re88久久爱 |
久久精品视频在线看 |
亚洲自拍16p |
亚洲一区影音先锋 |
欧美成人四级电影 |
欧美一区二区视频在线 |
亚洲欧美电影院 |
欧美日产一区二区三区在线观看 |
国产精品亚洲第一区在线暖暖韩国 |
一本大道久久精品懂色aⅴ |
午夜国产一区 |
亚洲综合二区 |
欧美精品一区二区三区久久久竹菊
|
欧美视频一区二区在线观看
|
欧美日韩福利在线观看 |
亚洲欧洲一区二区三区 |
日韩亚洲欧美精品 |
亚洲综合精品四区 |
亚洲精品网站在线播放gif |
亚洲精品社区 |
欧美高清hd18日本 |
欧美婷婷久久 |
av成人毛片 |
久久超碰97人人做人人爱 |
久久精品日产第一区二区 |
亚洲午夜一区 |
久久久久久久激情视频 |
久久一区二区三区av |
欧美h视频在线 |
亚洲高清免费视频 |
亚洲在线第一页 |
av成人黄色 |
国产精品欧美一区二区三区奶水 |
亚洲一二三区视频在线观看 |
久久九九久久九九 |
亚洲黄网站在线观看 |
亚洲精品123区 |
欧美福利精品 |
亚洲午夜伦理 |
亚洲欧美日韩综合一区 |
国产亚洲综合性久久久影院 |
亚洲精品在线二区 |
亚洲九九精品 |
国产精品中文字幕欧美 |
伊人久久大香线 |
欧美国产日韩在线观看 |
欧美激情欧美激情在线五月 |
国产欧美一区视频 |
宅男噜噜噜66国产日韩在线观看 |
99精品国产99久久久久久福利 |
国产精品久久久久99 |
亚洲欧洲另类国产综合 |
日韩视频永久免费 |
国产午夜精品久久 |
亚洲高清在线观看 |
久久久夜精品 |
亚洲视频1区 |
久久国产精品72免费观看 |
亚洲精品在线看 |
小辣椒精品导航 |
国产精品视频网站 |
老色批av在线精品 |
久久国产成人 |
久久理论片午夜琪琪电影网 |
亚洲日本欧美日韩高观看 |
一本色道久久综合狠狠躁篇的优点
|
午夜国产精品影院在线观看 |
一区在线视频观看 |
亚洲精品九九 |
欧美国产欧美亚洲国产日韩mv天天看完整
|
国产综合久久久久影院 |
亚洲欧美日韩国产中文在线 |
久久国产精品一区二区三区四区 |
亚洲精品视频免费 |
久久精品国产99精品国产亚洲性色
|
国产精品外国 |
亚洲另类自拍 |
亚洲啪啪91 |
久久av资源网 |
国产日韩综合 |
在线亚洲一区 |
国产精品theporn |
欧美高清不卡 |
一区二区在线不卡 |
亚洲欧美日韩在线不卡 |
亚洲天堂成人在线观看 |
欧美高清在线精品一区 |
噜噜噜噜噜久久久久久91 |
久久久水蜜桃 |
久久不射中文字幕 |
国产精品一区亚洲 |
亚洲视频精选在线 |
中日韩在线视频 |
欧美日韩不卡 |
亚洲精品免费一二三区 |
亚洲人成人一区二区在线观看 |
久久久久久久久伊人 |
久久久欧美精品 |
欧美成人69 |
欧美激情精品久久久久久变态 |
精品av久久久久电影 |
久久成年人视频 |
免费不卡中文字幕视频 |
欧美精品xxxxbbbb |
亚洲片在线资源 |
一区二区三区 在线观看视 |
欧美国产视频一区二区 |
久久国产精品一区二区三区四区 |
亚洲电影毛片 |
91久久精品日日躁夜夜躁国产 |
在线观看欧美 |
久久午夜电影网 |
亚洲国产1区 |
亚洲一区二区三区四区五区午夜 |
欧美色网在线 |
先锋影音国产精品 |
免费视频亚洲 |
野花国产精品入口 |
国产精品一区一区三区 |
久久久久网站 |
亚洲伦伦在线 |
久久国产精品久久精品国产 |
一区二区三区亚洲 |
欧美人与性动交cc0o |
亚洲一区中文字幕在线观看 |
欧美亚洲视频在线看网址 |
国户精品久久久久久久久久久不卡
|
亚洲尤物在线视频观看 |
国产视频在线观看一区 |
免费亚洲电影在线 |
亚洲午夜一区 |
欧美国产日韩一二三区 |
亚洲一区亚洲 |
亚洲国产mv |
国产欧美精品久久 |
欧美高清视频免费观看 |
亚洲制服少妇 |
亚洲精品专区 |
欧美成人精品1314www |
亚洲精选视频免费看 |
欧美午夜精品久久久久免费视
|
欧美精品18+ |
午夜日韩激情 |
亚洲精品中文字幕在线 |
蜜桃av一区二区在线观看 |
一区二区精品在线 |
在线观看一区二区精品视频 |
欧美三级在线 |
欧美成人午夜77777 |
亚洲综合另类 |
99综合视频 |
亚洲高清激情 |
久久亚洲国产精品日日av夜夜 |
日韩午夜在线观看视频 |
国产在线精品自拍 |
国产精品欧美经典 |
亚洲欧美日韩人成在线播放 |
中文在线一区 |
蜜桃精品久久久久久久免费影院 |
亚洲在线免费观看 |
99在线精品视频 |
亚洲欧洲日韩综合二区 |
影音欧美亚洲 |
国外精品视频 |
国产日韩欧美亚洲 |