Differences From Artifact [d63e158bb1]:
- File
src/Cube.mm
— part of check-in
[f5b62f8203]
at
2025-03-04 23:03:58
on branch trunk
— Initial port to macOS
Doesn't work yet as SDL1 is broken on modern macOS. (user: js, size: 7454) [annotate] [blame] [check-ins using]
To Artifact [c32806b2e7]:
- File src/Cube.mm — part of check-in [42d4b57828] at 2025-03-04 23:51:09 on branch trunk — Port to SDL2 (user: js, size: 7604) [annotate] [blame] [check-ins using]
︙ | |||
50 51 52 53 54 55 56 57 58 59 60 61 62 63 | 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | + | { void *b = calloc(1, s); if (!b) fatal(@"out of memory!"); return b; } SDL_Window *window; int scr_w = 640; int scr_h = 480; void screenshot() { SDL_Surface *image; |
︙ | |||
86 87 88 89 90 91 92 | 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | - - + - - - - | SDL_FreeSurface(image); }; } COMMAND(screenshot, ARG_NONE) COMMAND(quit, ARG_NONE) |
︙ | |||
172 173 174 175 176 177 178 | 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 | + - - + + + + - - - + + + | log("video: sdl"); if (SDL_InitSubSystem(SDL_INIT_VIDEO) < 0) fatal(@"Unable to initialize SDL Video"); log("video: mode"); SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); if ((window = SDL_CreateWindow("cube engine", SDL_WINDOWPOS_UNDEFINED, |
︙ | |||
237 238 239 240 241 242 243 | 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 | - + | updateworld(millis); if (!demoplayback) serverslice((int)time(NULL), 0); static float fps = 30.0f; fps = (1000.0f / curtime + fps * 50) / 51; computeraytable(player1->o.x, player1->o.y); readdepth(scr_w, scr_h); |
︙ | |||
259 260 261 262 263 264 265 | 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 | + - - - + + + - + | switch (event.type) { case SDL_QUIT: quit(); break; case SDL_KEYDOWN: case SDL_KEYUP: if (keyrepeat || event.key.repeat == 0) |
︙ |