Commit Graph

58 Commits

Author SHA1 Message Date
Antonio Carzaniga
4c2273d271 first, basic transition to C++ 2022-05-30 15:59:45 +02:00
Antonio Carzaniga
f2203cfa00 (new_ball_face) fixed memory leak for cairo patterns. 2021-12-12 11:54:43 +01:00
Antonio Carzaniga
53e71fa27d (gravity) added radial, Newtonian (1/r^2) force field 2021-12-12 00:36:07 +01:00
Antonio Carzaniga
dc0e5be086 (spaceship_draw) better shape for thrust waves 2021-12-11 22:29:55 +01:00
Antonio Carzaniga
9028f1af74 modularization: main, game, balls, c_index, spaceship, gravity 2021-12-11 21:32:48 +01:00
Antonio Carzaniga
1fec301126 (window) removed global variable for game window. 2021-12-11 18:05:13 +01:00
Antonio Carzaniga
3eb4f1f243 removed inoperative clear-alpha feature. 2021-12-03 16:05:51 +01:00
Antonio Carzaniga
1c451f76ef (draw_frame) central frame-drawing function, using draw-event context. 2021-12-03 16:00:36 +01:00
Antonio Carzaniga
3d6751cd15 (spaceship_init_state) larger, more visible spaceship (default radius). 2021-12-03 15:59:29 +01:00
Antonio Carzaniga
b3bb1666fa (draw_gravity_vector) saving/restoring cairo context, for isolation. 2021-12-03 15:58:36 +01:00
Antonio Carzaniga
896470f7bf slight amplification of thrust control. 2021-12-03 00:32:16 +01:00
Antonio Carzaniga
b2e760a749 added spaceship, with basic direction and thrust control. 2021-12-03 00:29:18 +01:00
Antonio Carzaniga
dfd7ca908b gravity control through scroll movements 2021-12-01 20:28:41 +01:00
Antonio Carzaniga
87db81dcfe modularization of c_index, basic balls data. 2021-12-01 20:18:19 +01:00
Antonio Carzaniga
fb00e29a0d using draw signals. 2021-06-13 17:38:07 +02:00
Antonio Carzaniga
b7b39e4034 improved timing and load statistics 2021-06-08 21:24:55 +02:00
Antonio Carzaniga
6d3fea4443 slight improvement in shaded pattern 2021-06-08 21:00:31 +02:00
Antonio Carzaniga
5ba97e9edf shaded ball pattern. 2021-06-07 13:38:13 +02:00
Antonio Carzaniga
d033118653 working gtk-3.0 version
- removed expose event
 - added repositioning after reconfigure event
 - disabled all tangential-friction mechanics
2021-06-07 12:03:55 +02:00
Antonio Carzaniga
3309523725 face objects and cache; port to gtk-3.0. 2021-01-12 15:55:25 +01:00
Antonio Carzaniga
68a33722c8 removed random colors from rotation faces. 2021-01-09 20:33:40 +01:00
Antonio Carzaniga
6b59a065e4 added face rotation command-line switch. 2021-01-03 13:05:23 +01:00
Antonio Carzaniga
76bb057e6c basic, independent, constant-speed rotation. 2019-12-18 21:18:21 +01:00
Antonio Carzaniga
300e71cbde fixed typo in error message. 2019-12-05 16:39:55 +01:00
Antonio Carzaniga
a0fa9c4925 using canvas and local cairo context. 2019-12-05 16:34:31 +01:00
Antonio Carzaniga
1fb6d9d94d typo in usage message. 2019-12-01 22:06:31 +01:00
Antonio Carzaniga
30f48a0114 added stats sampling count option (stats=C). 2019-08-21 12:14:25 +02:00
Antonio Carzaniga
90f9766a87 other minor simplifications. 2019-08-21 10:26:58 +02:00
Antonio Carzaniga
576139b448 minor simplifications in c_index_insert. 2019-08-20 17:23:54 +02:00
Antonio Carzaniga
956e652827 added rectangle binary search tree as collision index. 2019-08-20 16:15:29 +02:00
Antonio Carzaniga
a8e616a608 separate state-update function for profiling. 2019-08-19 10:45:55 +02:00
Antonio Carzaniga
a71096699b minor fix in usage message. 2019-08-11 18:13:07 +02:00
Antonio Carzaniga
430410e415 added missing face opt in usage message. 2019-08-10 11:13:26 +02:00
Antonio Carzaniga
de93a620c1 added option to disable ball-ball collisions. 2019-08-10 11:11:14 +02:00
Antonio Carzaniga
ba725b3777 removed colors from ball struct. 2019-07-29 23:04:26 +02:00
Antonio Carzaniga
9f7ce3e774 rendering statistics are now optional (-v). 2019-07-29 22:57:21 +02:00
Antonio Carzaniga
b519b83bd3 fixed widget deallocation. 2019-07-29 22:49:39 +02:00
Antonio Carzaniga
2c9348be56 per-ball "sprite" cairo surface. 2019-07-29 22:45:32 +02:00
Antonio Carzaniga
d715b99e32 modularized init/destroy functions for graphics system. 2019-07-29 19:25:45 +02:00
Antonio Carzaniga
32cd25bd56 Merge branch 'cairo' into faces 2019-07-29 18:41:23 +02:00
Antonio Carzaniga
24bbae26bf default build target is compile (no run). 2019-07-29 18:36:32 +02:00
Antonio Carzaniga
d3411b9ab0 fixed minor editing bug. 2019-07-29 15:50:53 +02:00
Antonio Carzaniga
5c9d152eaf disappearing gravity vector 2019-07-29 15:49:42 +02:00
Antonio Carzaniga
370ac137ff added clear (alpha) parameter to draw animation trails. 2019-07-29 15:48:15 +02:00
Antonio Carzaniga
f7706865fe added optional face (image) for balls 2019-07-29 14:21:55 +02:00
Antonio Carzaniga
b2c96f75c1 keyboard-controlled gravity vector 2019-07-28 15:03:27 +02:00
Antonio Carzaniga
e306fffc2a drawing using cairo 2019-07-28 14:55:39 +02:00
Antonio Carzaniga
ea1db822ba improved gtk code.
- replaced deprecated gtk_signal_connect with g_signal_connect.

 - separated drawing code from pixmap trasnfer code, and improved
   expose event handler.
2019-07-05 16:47:29 +02:00
Antonio Carzaniga
c21f34bcf2 added gitignore 2019-07-05 16:04:57 +02:00
Antonio Carzaniga
89c6a75fe3 added init function for truly uniform random velocity. 2019-07-05 15:58:10 +02:00