Tak uz som to nasiel - DrawScene() nebolo vovnutri cyklu. Blba chyba co :smile18:
Příspěvky odeslané z IP adresy 85.135.150.–
Ale ked odstranim DrawScene() z cyklu tak sa to vykresli aj tak - asi bude nejaky problem v cykle
ospravedlnujem sa za doublepost
Uz to ide - aj ked nerozumiem preco. Tu cast s cyklom som zmenil na
LoadImages();
DrawScene();
bool done=false;
while(done == false){
SDL_Event event;
while( SDL_PollEvent(&event) ){
if( event.type == SDL_QUIT ) done=true;
}
}
DrawScene();
}
teda som pridal este jedno DrawScene() pred cyklus. :smile19:
ano, aj to som skusil - nepomohlo
Som na windowse. Data je adresar ktory je v rovnakom adresary ako .exe takze mi pride logicke dat pred neho /. Ale skusil som to dat bez toho / pred data a tiez to nejde.
skusil som, stale mam len cierne(prazdne) SDL okno
S tym LoadImages() mas pravdu, nepouzival som to. Takze som dopisal LoadImages(); pred hlavny cyklus ale stale nic.
P.S.: premenna images sa pouziva v LoadImages(), a DrawScene().
Tak som skusil obsah func.cpp dat namiesto #include "data/func.cpp" a stale je to to iste
moj prispevok, poslednych 10 riadkov :smile1:
Zdar,
myslim ze som spravil viac-menej vsetko ako v seriali SDL ale nech sa snazim vykreslit cokolvek(pixel, bmp), nic sa nevykresli. Ostane len cierne SDL okno. Tu je kod pre vykreslenie bitmapy(ktory nefunguje):
#include "SDL/SDL.h"
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <windows.h>
using namespace std;
SDL_Surface *screen;
SDL_Surface *image;
#include "data/func.cpp"
void DrawScene(){
DrawIMG(image, 0, 0);
SDL_Flip(screen);
}
int main(int argc, char *argv[]){
if(SDL_Init(SDL_INIT_VIDEO) < 0){
cout << "Could not initialize SDL: " << SDL_GetError();
getch();
exit(1);
}
atexit(SDL_Quit);
screen = SDL_SetVideoMode(800, 600, 32, SDL_HWSURFACE|SDL_DOUBLEBUF);
if (screen == NULL){
cout << "Could not initialize screen: " << SDL_GetError();
getch();
exit(1);
}
cout << "text"; //tento text sa ani nezobrazi v cmd okne
bool done=false;
while(done == false){
SDL_Event event;
while( SDL_PollEvent(&event) ){
if( event.type == SDL_QUIT ) done=true;
}
}
DrawScene();
}
func.cpp
void LoadImages(){
image = SDL_LoadBMP("/data/images/noimg.bmp");
}
void DrawIMG(SDL_Surface *img, int x, int y){
SDL_Rect rect;
rect.x = x;
rect.y = y;
SDL_BlitSurface(img, NULL, screen, &rect);
}