Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1419961
  • 博文数量: 430
  • 博客积分: 9995
  • 博客等级: 中将
  • 技术积分: 4388
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-24 18:04
文章存档

2013年(1)

2008年(2)

2007年(14)

2006年(413)

分类: LINUX

2006-05-26 11:27:24

Setting up SDL Extensions for g++

Last Updated 3/25/06
In this tutorial you're going to learn to set up SDL_image. If you know how to set up this extension, you can set any of them up.

SDL_image is located on this page.

Scroll Down to the Development Libraries section and download the Linux development library:

Now run the RPM and let it do it's thing.

Then when you compile your program simply add

-lSDL_image
after
g++ -o myprogram mysource.cpp -lSDL

If you were linking SDL_ttf you'd add

-lSDL_ttf
If you were linking SDL_mixer you'd add
-lSDL_mixer
etc, etc.

To use SDL_image make sure to include the header file.

#include "SDL/SDL_image.h"
If you were setting up SDL_ttf you'd put
#include SDL/SDL_ttf.h
If you were setting up SDL_mixer you'd put
#include SDL/SDL_mixer.h
etc, etc.

Now the extension library is all set up.
Now you can use SDL_image functions.

The main one you want to know about is IMG_Load().
SDL_Surface *load_image( std::string filename ) { //The image that's loaded SDL_Surface* loadedImage = NULL; //The optimized image that will be used SDL_Surface* optimizedImage = NULL; //Load the image using SDL_image loadedImage = IMG_Load( filename.c_str() ); //If the image loaded if( loadedImage != NULL ) { //Create an optimized image optimizedImage = SDL_DisplayFormat( loadedImage ); //Free the old image SDL_FreeSurface( loadedImage ); } //Return the optimized image return optimizedImage; }
Here is a revised version of the image loading function from the previous tutorial.

As you can see IMG_Load() functions exactly the same as SDL_LoadBMP(), but there's one big exception: IMG_Load() can load BMP, PNM, XPM, LBM, PCX, GIF, JPEG, TGA and PNG files.

From this tutorial on, PNG image files will be the primary image format used. PNGs have great compression and are near lossless.
Download the media and source code for this tutorial .

I highly recommend that you download the documentation for SDL_image and keep it handy.
It can be found here.
阅读(510) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~