Berry
相変わらず全然進んで無いです、はい。
import std.stdio; import berry; extern (C) int captureKey(SDL_Event *e) { switch (e.key.keysym.sym) { case SDLK_ESCAPE: SDL_Event q; q.type = SDL_QUIT; /// q.quit.type = SDL_QUIT; ///どっちでもおkっぽい SDL_PushEvent(&q); break; default: break; } return 1; } int main(char[][] args) { try { scope b = new Berry(SDL_INIT_VIDEO); ///this(ulong) b.createSurface(); ///default parameter 640x480x0(32)+SWSURFACE bool done = false; SDL_Event e; SDL_SetEventFilter(&captureKey); while (!done) { while (SDL_PollEvent(&e)) { switch (e.type) { case SDL_QUIT: done = !done; break; default: break; } } SDL_Delay(1000/30); /// 33.333... } } catch (Error e) { writefln("(EE) failed: " ~ e.msg); } finally { SDL_Quit(); } return 0; }