AIMG-mostrar imagem fraquimentada em pontos aleatórios
Publicado por Samuel Leonardo 09/12/2008
[ Hits: 5.996 ]
Homepage: localhost
Download AIMG-imagem fraquimentada.tar.gz
Este script mostra como "despedaçar" uma imagem, no formato bmp, na tela usando a liSDL, mostrando antes por 3 segundos a imagem original.
Acompanha uma versão pré-compilada para download e o WallPapper linux.6.bmp.
ATENÇÃO: é preciso ter antes os arquivos de desenvolvimento da libSDL instalados.
Para compilar: gcc -o imagem imagem.c -lSDL
Para exzecutar: ./imagem
Visitem meus outros scripts:
http://www.vivaolinux.com.br/scripts/userview.php?login=Sam%20L.
BAIXE TAMBÉM UMA APOSTILA EXCELENTE SOBRE DESENVOVIMENTO DE JOGOS COM SDL:
http://silveira.wordpress.com/2006/09/21/apostila-de-desenvolvimento-de-jogos/
t+!!!
/* Este script mostra como "despedaçar" uma imagem, no formato bmp, na tela usando a liSDL, mostrando antes por 3 segundos a imagem original. Acompanha uma versão pre-compilada para download e o WallPapper linux.6.bmp. ATENÇÃO: você precisam ter antes os arquivos de desenvolvimento da libSDL instalados. para compilar: gcc -o imagem imagem.c -lSDL para exzecutar: ./imagem visitem meus outros scripts: http://www.vivaolinux.com.br/scripts/userview.php?login=Sam%20L. BAIXE TBM UM APOSTILA EXCELENTE SOBRE DESENVOVIMENTO DE JOGOS COM SDL: http://silveira.wordpress.com/2006/09/21/apostila-de-desenvolvimento-de-jogos/ t+!!! */ #include <stdio.h> #include <SDL/SDL.h> /*numero de imagens mostrada a cada 500 milisegundos */ #define NUMRECT 20 /*OBS: QUANTO MAIOR FOR NUMRECT, MENORES SÃO OS FRAQUIMENTOS*/ int main(int argc, char *argv[]) { SDL_Init(SDL_INIT_VIDEO); SDL_Surface *screen, *foto; foto = SDL_LoadBMP("linux.6.bmp"); if(!foto) printf("ERRO: %s\n",SDL_GetError()); screen = SDL_SetVideoMode(foto->w, foto->h, 0, SDL_ANYFORMAT | SDL_SWSURFACE | SDL_HWSURFACE); if(!screen) { printf("ERRO: %s",SDL_GetError()); SDL_Quit(); return -1; } SDL_Rect destino, fonte; fonte = (SDL_Rect){0,0,(int)(foto->w/NUMRECT),(int)(foto->h/NUMRECT)}; destino = (SDL_Rect){0,0,(int)(foto->w/NUMRECT),(int)(foto->h/NUMRECT)}; int fim=0, acres_y=4, acres_x=4; int i, j; SDL_Event evento; SDL_BlitSurface(foto, NULL, screen, NULL); SDL_Flip(screen); SDL_Delay(3000); while(!fim) { while(SDL_PollEvent(&evento)) if(evento.type == SDL_QUIT) fim=1; SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format,0,0,0)); for(i=0;i<foto->w/NUMRECT;i++) { fonte.x = i*fonte.w; for(j=0;j<foto->h/NUMRECT;j++) { fonte.y = j*fonte.h; /* POSIÇÕES ALEATORIAS DAS IMAGENS */ destino.x = random()%(foto->w - fonte.w) + acres_x; destino.y = random()%(foto->h - fonte.h) + acres_y; /* 'COLAGEM' DAS IMAGENS EM POSIÇÕES ALEATÓRIAS */ SDL_BlitSurface(foto, &fonte, screen, &destino); } } /* ATUALIZANDO A TELA INTEIRA */ SDL_Flip(screen); /* AGUARDANDO 500ms ATÉ O PRÓXIMO LOOP */ SDL_Delay(500); } SDL_Quit(); return 0; }
Classe para manipulação e conversão de datas para std::string em C++
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (16)
Arch Linux - Guia para Iniciantes (2)
Problemas ao instalar o PHP (11)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)