⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sdl_setpalette.3

📁 Simple DirectMedia Layer - Simple DirectMedia Layer 是一个跨平台的多媒体库设计用来提供快速图形framebuffer和音频驱动。应用MPEG为软件
💻 3
字号:
.TH "SDL_SetPalette" "3" "Tue 11 Sep 2001, 23:01" "SDL" "SDL API Reference" .SH "NAME"SDL_SetPalette\- Sets the colors in the palette of an 8-bit surface\&..SH "SYNOPSIS".PP\fB#include "SDL\&.h".sp\fBint \fBSDL_SetPalette\fP\fR(\fBSDL_Surface *surface, int flags, SDL_Color *colors, int firstcolor, int ncolors\fR);.SH "DESCRIPTION".PPSets a portion of the palette for the given 8-bit surface\&..PPPalettized (8-bit) screen surfaces with the \fBSDL_HWPALETTE\fP flag have two palettes, a logical palette that is used for mapping blits to/from the surface and a physical palette (that determines how the hardware will map the colors to the display)\&. \fISDL_BlitSurface\fR always uses the logical palette when blitting surfaces (if it has to convert between surface pixel formats)\&. Because of this, it is often useful to modify only one or the other palette to achieve various special color effects (e\&.g\&., screen fading, color flashes, screen dimming)\&..PPThis function can modify either the logical or physical palette by specifing \fBSDL_LOGPAL\fP or \fBSDL_PHYSPAL\fPthe in the \fBflags\fR parameter\&..PPWhen \fBsurface\fR is the surface associated with the current display, the display colormap will be updated with the requested colors\&. If \fBSDL_HWPALETTE\fP was set in \fISDL_SetVideoMode\fR flags, \fBSDL_SetPalette\fP will always return \fB1\fR, and the palette is guaranteed to be set the way you desire, even if the window colormap has to be warped or run under emulation\&..PPThe color components of a \fI\fBSDL_Color\fR\fR structure are 8-bits in size, giving you a total of 256^3=16777216 colors\&..SH "RETURN VALUE".PPIf \fBsurface\fR is not a palettized surface, this function does nothing, returning \fB0\fR\&. If all of the colors were set as passed to \fBSDL_SetPalette\fP, it will return \fB1\fR\&. If not all the color entries were set exactly as given, it will return \fB0\fR, and you should look at the surface palette to determine the actual color palette\&..SH "EXAMPLE".PP.nf\f(CW        /* Create a display surface with a grayscale palette */        SDL_Surface *screen;        SDL_Color colors[256];        int i;        \&.        \&.        \&.        /* Fill colors with color information */        for(i=0;i<256;i++){          colors[i]\&.r=i;          colors[i]\&.g=i;          colors[i]\&.b=i;        }        /* Create display */        screen=SDL_SetVideoMode(640, 480, 8, SDL_HWPALETTE);        if(!screen){          printf("Couldn\&'t set video mode: %s", SDL_GetError());          exit(-1);        }        /* Set palette */        SDL_SetPalette(screen, SDL_LOGPAL|SDL_PHYSPAL, colors, 0, 256);        \&.        \&.        \&.        \&.\fR.fi.PP.SH "SEE ALSO".PP\fISDL_SetColors\fR, \fISDL_SetVideoMode\fR, \fISDL_Surface\fR, \fISDL_Color\fR...\" created by instant / docbook-to-man, Tue 11 Sep 2001, 23:01

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -