SDL(多媒體開發函式庫)
SDL(多媒體開發函式庫)
Code::block設定SDL環境
官方載點:https://www.libsdl.org/download-2.0.php
步驟:
(就算電腦是64bit但下載64bit的dll包可能無法執行)
詳細安裝參考此篇
http://lazyfoo.net/tutorials/SDL/01_hello_SDL/windows/codeblocks/#6
其中的compile之SDL路徑設定,可從setting->compiler去設定(全域),或是從Project->build option去設定(區域)都可以
最後將32bit的sdl.dll放到exe黨存在的目錄(如64bit的sdl.dll無法的話)
教學
http://kelvmiao.info/sdl-tutorial-cn/lessons/lesson01/index2.html
他是使用SDL1,所以一些程式碼需對應的改變
基本架構
#include "SDL.h"
#include <stdio.h>
int main( int argc, char* args[] )
{
//Screen dimension constants
const int SCREEN_WIDTH = 640;
const int SCREEN_HEIGHT = 480;
//The window we'll be rendering to
SDL_Window* window = NULL;
//The surface contained by the window
SDL_Surface* screenSurface = NULL;
//Initialize SDL
if( SDL_Init( SDL_INIT_VIDEO ) < 0 )
{
printf( "SDL could not initialize! SDL_Error: %s\n", SDL_GetError() );
}else{
//Create window
window = SDL_CreateWindow( "SDL Tutorial123", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, SCREEN_WIDTH, SCREEN_HEIGHT, SDL_WINDOW_SHOWN );
if( window == NULL ){
printf( "Window could not be created! SDL_Error: %s\n", SDL_GetError() );
}
//Get window surface
screenSurface = SDL_GetWindowSurface( window );
//Fill the surface white
SDL_FillRect( screenS urface, NULL, SDL_MapRGB( screenSurface->format, 0xFF, 0xFF, 0xFF ) );
//Update the surface
SDL_UpdateWindowSurface( window );
//Wait two seconds
SDL_Delay( 2000 );
}
}
如果點選build and run但仍然跑出前build的程式
把cpp檔案刪掉,新建一個
Last updated