Todo - noooway/love2d_arkanoid_tutorial GitHub Wiki
Current Goals
- Make a small but well-polished game;
1.1. Update graphics and sound: team up with/commission artist and sound designer. - Restructure the 3rd chapter of the tutorial into a series of "Additional topics".
- Move current contents of the Chapter3 into Appendix: Step-by-Step Making of Arkanoid.
- Update contents of the Ch1 and 2.
- Find a native speaker for proofreading.
Ideas
-
Appendices:
A-1: Modules Using Environment
B-1: Intro to Classes
B-2: Rewrite 2-08 using classes
C-1: Continuous collision detection (Requested in the issues!)
D-1: Collision detection library: BUMP
E-1: ECS? (Rewrite 2-08 in ECS style)?
F-1: [done]Levels as strings (https://love2d.org/forums/viewtopic.php?f=14&t=83240&start=50#p211310)
F-2: Tiled -
OOP implementation:
Add some corrections to class constructor idiom ( suggested in https://love2d.org/forums/viewtopic.php?f=14&t=83240 ) Alternatively:
Replace the current raw Lua approach with an external class library.
Take a look at different libraries, choose one. -
GUI containers https://love2d.org/forums/viewtopic.php?f=14&t=83240&p=212799#p212778
Propagating changes:
- Remove
ball
fromswitch_to_next_level
(probably, starting from 1-05; done for ch3) - 1-03+: ipairs in collisions.
local small_shift_to_prevent_overlap = 0.1
incheck_rectangles_overlap
(starting from ch1)- 1-03+: change the overlap detection and shift calculation algorithm: https://love2d.org/forums/viewtopic.php?f=14&t=83240&p=211307#p211254 ; (#2 is also related to collisions) ( mostly done; merge and update the wiki; Figs. in 1.3 and 1.4; grep 'collisions' in others )
- get rid of temporary tables during overlap detection ( https://love2d.org/forums/viewtopic.php?f=14&t=83240&p=211307#p211254 )
- Use
local
functions in modules (since 2-01 at least). - 3-05+: predefine quads for different sizes of the platform.
- Preload platform quads instead of using new.quad each time it's size is changed.
- 3-07+: ipairs in ball.update and ball.draw
- 3-10+: print -> printf in buttons.lua