i try to enable SDL_INIT_EVENTTHREAD in win32 but an error report this:
OS doesn’t support threaded events
what ??? it’s crazy ???
Don’t use an event thread; just use SDL_PollEvent() in a loop until all
events have been handled, once per frame.
It’s probably not so much that you can’t have an event thread on Windows
as no one implemented it in SDL, but really, you shouldn’t use it (and
truthfully, is there any reason not to deprecate SDL_INIT_EVENTTHREAD? It
just seems like something that would cause problems).
and one more, the flag SDL_RESIZABLE of the SDL_SetVideoMode() didn’t work
… the windows drawn isn’t resaizable :-/
i use the dev pakage for mingw of the www site (broken bulding?)
“Ryan C. Gordon” ha scritto nel messaggio
news:Pine.LNX.4.33.0309041744180.4445-100000 at wickedsick…
Don’t use an event thread; just use SDL_PollEvent() in a loop until all
events have been handled, once per frame.
It’s probably not so much that you can’t have an event thread on Windows
as no one implemented it in SDL, but really, you shouldn’t use it (and
truthfully, is there any reason not to deprecate SDL_INIT_EVENTTHREAD? It
just seems like something that would cause problems).
“Bob Pendleton” <@Bob_Pendleton> ha scritto nel messaggio
news:1062711546.26051.18.camel at voyager.swordx.com…
i try to enable SDL_INIT_EVENTTHREAD in win32 but an error report this:
OS doesn’t support threaded events
Not a bug, Windows doesn’t allow threaded event handling. Just don’t use
that flag on Windows.
but i not need SDL_INIT_EVENTTHREAD for use thread ? (or my misanderstood ?)
No, you do not need this to use threads. That flag is used to let the
event gathering code run in a separate thread. You can use your own
threads without it.
and one more, the flag SDL_RESIZABLE of the SDL_SetVideoMode() didn’t
work
… the windows drawn isn’t resaizable :-/
Now that is a problem. You need to provide more information about how
you are setting up the window for us to help.
A surface must be either a hardware surface or and opengl surface, not
both. They are very different things. With a hardware surface you get a
pointer to the frame buffer that you use to draw into. With an OpenGL
surface you get a surface managed entirely by OpenGL.
Bob PendletonOn Thu, 2003-09-04 at 19:17, Goul_duKat wrote:
On Thu, 2003-09-04 at 15:30, Goul_duKat wrote:
SDL_Surface *main_w;
test_lib_compatibility();
if(SDL_Init(init_flag)!=0) h_term_error("Unable to start SDL : ");
{
char name_buff[15];
if(NULL == SDL_VideoDriverName(name_buff,sizeof(name_buff)))
h_term_error("No video init drv : ");
simple_report((std::string("Initialized video driver : ") +
name_buff).c_str());
}
{
const SDL_VideoInfo *v_info = SDL_GetVideoInfo();
}
{
SDL_Rect **modes = SDL_ListModes(NULL,init_vflag);
if (modes == NULL) h_term_error("No video mode : ");
if (modes == reinterpret_cast<SDL_Rect **>(-1)) simple_report(“All
resolution available.”);
else
{
std::ostringstream sout;
sout.setf(std::ios::right,std::ios::adjustfield);
sout.width(5);
sout << “Available Modes :\n”;
for(int i=0;modes[i];i++) sout << ‘\t’ << i << ‘:’ << modes[i]->w << ‘x’
<< modes[i]->h << ‘\n’;
sout.flush();
simple_report(sout.str().c_str());
}
}
{
int bpp;
if((bpp = SDL_VideoModeOK(800,600,32,init_vflag)) == 0)
h_term_error(“Requested video mode not supported please use another mode :
”);
if((main_w = SDL_SetVideoMode(800,600,bpp,init_vflag)) == NULL)
h_term_error("Unable to open a surface : ");
}
tnx for help … this code is incomplete but i write it in the last hours
“Bob Pendleton” ha scritto nel messaggio
news:1062772725.26051.52.camel at voyager.swordx.com…
Uint32 init_flag = (SDL_INIT_TIMER|SDL_INIT_VIDEO|SDL_INIT_EVENTTHREAD);
Uint32 init_vflag = (SDL_HWSURFACE|SDL_OPENGL|SDL_RESIZABLE);
A surface must be either a hardware surface or and opengl surface, not
both. They are very different things. With a hardware surface you get a
pointer to the frame buffer that you use to draw into. With an OpenGL
surface you get a surface managed entirely by OpenGL.
ok, the good initialization is : SDL_OPENGL|SDL_RESIZABLE ??? for ogl in a
windows ??? (the example included in the source have betrayed me ?)(the
SDL_HWSURFACE is only for 2d blitting surface ?)
i try this but the windows isn’t resaziable :-/
no one have an example of OGL_SDL windows reasaizable to share with me ?
“Bob Pendleton” <@Bob_Pendleton> ha scritto nel messaggio
news:1062772725.26051.52.camel at voyager.swordx.com…
Uint32 init_flag = (SDL_INIT_TIMER|SDL_INIT_VIDEO|SDL_INIT_EVENTTHREAD);
Uint32 init_vflag = (SDL_HWSURFACE|SDL_OPENGL|SDL_RESIZABLE);
A surface must be either a hardware surface or and opengl surface, not
both. They are very different things. With a hardware surface you get a
pointer to the frame buffer that you use to draw into. With an OpenGL
surface you get a surface managed entirely by OpenGL.
ok, the good initialization is : SDL_OPENGL|SDL_RESIZABLE ??? for ogl in a
windows ??? (the example included in the source have betrayed me ?)(the
SDL_HWSURFACE is only for 2d blitting surface ?)
That is correct.
Bob PendletonOn Fri, 2003-09-05 at 22:19, Goul_duKat wrote:
i try this but the windows isn’t resaziable :-/
no one have an example of OGL_SDL windows reasaizable to share with me ?