How-To Example Code Starting Templates Drawing Sprites Sound Camera Use Platformers View Management Graphical User Interface Grid-Based Games Advanced Concept Games Odds and Ends Tutorials Stress Tests Starting Templates :ref:`starting_template` :ref:`template_platformer` Drawing Drawing Primitives :ref:`happy_face` :ref:`drawing_primitives` :ref:`drawing_with_functions` :ref:`drawing_text` :ref:`drawing_text_objects` Drawing with Loops :ref:`drawing_with_loops` :ref:`nested_loops_box` :ref:`nested_loops_bottom_left_triangle` Animating Drawing Primitives :ref:`bouncing_rectangle` :ref:`shapes-slow` :ref:`radar_sweep` :ref:`snow` Faster Drawing with ShapeElementLists :ref:`shape_list_demo` :ref:`lines_buffered` :ref:`shape_list_demo_skylines` :ref:`gradients` Sprites Sprite Player Movement :ref:`sprite_collect_coins` :ref:`sprite_move_keyboard` :ref:`sprite_move_keyboard_better` :ref:`sprite_move_keyboard_accel` :ref:`sprite_face_left_or_right` :ref:`sprite_move_joystick` :ref:`sprite_move_angle` :ref:`dual_stick_shooter` :ref:`turn_and_move` :ref:`easing_example_1` :ref:`easing_example_2` Sprite Non-Player Movement :ref:`sprite_collect_coins_move_down` :ref:`sprite_collect_coins_move_bouncing` :ref:`sprite_bouncing_coins` :ref:`sprite_collect_coins_move_circle` :ref:`sprite_collect_rotating` Sprite Pathing :ref:`follow_path` :ref:`sprite_follow_simple` :ref:`sprite_follow_simple_2` :ref:`line_of_sight` :ref:`astar_pathfinding` Sprite Properties :ref:`sprite_health` :ref:`sprite_properties` :ref:`sprite_change_coins` Games with Levels :ref:`example-sprite-collect-coins-diff-levels` :ref:`sprite_rooms` Shooting with Sprites :ref:`sprite_bullets` :ref:`sprite_bullets_aimed` :ref:`sprite_bullets_periodic` :ref:`sprite_bullets_random` :ref:`sprite_bullets_enemy_aims` :ref:`sprite_explosion_bitmapped` :ref:`sprite_explosion_particles` Sound :ref:`sound_demo` :ref:`music_control_demo` Camera Use :ref:`sprite_move_scrolling` :ref:`sprite_move_scrolling_box` :ref:`sprite_move_scrolling_shake` :ref:`camera_platform` Platformers Basic Platformers :ref:`sprite_move_walls` :ref:`sprite_no_coins_on_walls` :ref:`sprite_move_animation` :ref:`sprite_moving_platforms` :ref:`sprite_enemies_in_platformer` :ref:`platformer_tutorial` Using Tiled Map Editor to Create Maps :ref:`sprite_tiled_map` :ref:`sprite_tiled_map_with_levels` Procedural Generation :ref:`maze_recursive` :ref:`maze_depth_first` :ref:`procedural_caves_cellular` :ref:`procedural_caves_bsp` View Management Instruction Screens and Game Over Screens :ref:`view_screens_minimal` :ref:`view_instructions_and_game_over` :ref:`view_pause_screen` :ref:`transitions` Resizable Window and Fullscreen Games :ref:`resizable_window` :ref:`full_screen_example` Dividing a View Into Sections :ref:`sections_demo_1` :ref:`sections_demo_2` :ref:`sections_demo_3` Graphical User Interface :ref:`gui_flat_button` :ref:`gui_flat_button_styled` :ref:`gui_widgets` :ref:`gui_ok_messagebox` :ref:`gui_scrollable_text` :ref:`gui_slider` Grid-Based Games :ref:`array_backed_grid` :ref:`array_backed_grid_buffered` :ref:`array_backed_grid_sprites_1` :ref:`array_backed_grid_sprites_2` :ref:`tetris` :ref:`conway_alpha` Advanced Using PyMunk for Physics :ref:`pymunk_box_stacks` :ref:`pymunk_pegboard` :ref:`pymunk_demo_top_down` :ref:`pymunk_joint_builder` :ref:`pymunk_platformer_tutorial` Frame Buffers :ref:`minimap` :ref:`light_demo` :ref:`transform_feedback` :ref:`game_of_life_fbo` :ref:`perspective` Concept Games :ref:`asteroid_smasher` Asteroids with Shaders :ref:`slime_invaders` Community RPG 2048 Rogue-Like Odds and Ends :ref:`sprite_collect_coins_background` :ref:`parallax` :ref:`timer` :ref:`performance_statistics_example` :ref:`text_loc_example` Tutorials :ref:`platformer_tutorial` :ref:`solitaire_tutorial` :ref:`crt_filter` :ref:`raycasting_tutorial` :ref:`pymunk_platformer_tutorial` :ref:`shader_toy_tutorial` Particle System :ref:`particle_fireworks` :ref:`particle_systems` Stress Tests :ref:`stress_test_draw_moving` :ref:`stress_test_collision`