You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Ray 3f1e59a7cf Update copyright to 2024 10 months ago
..
audio Update copyright to 2024 10 months ago
core Update copyright to 2024 10 months ago
models Update copyright to 2024 10 months ago
others Update copyright to 2024 10 months ago
shaders Update copyright to 2024 10 months ago
shapes Update copyright to 2024 10 months ago
text Update copyright to 2024 10 months ago
textures Update copyright to 2024 10 months ago
CMakeLists.txt Removed raylib_opengl_interop.c from PLATFORM=Web build (#2682) 2 years ago
Makefile Update copyright to 2024 10 months ago
Makefile.Android Update copyright to 2024 10 months ago
Makefile.Web Update copyright to 2024 10 months ago
README.md examples/shaders: Add an example for deferred shading (#3496) 1 year ago
build.zig fix zig syntax errors in examples, and make it install executables correctly (#3395) 1 year ago
examples_template.c Update examples creation requirements 1 year ago
raylib_compile_execute.bat Correct the set paths in bat files in examples/ (#2870) 1 year ago
raylib_makefile_example.bat Correct the set paths in bat files in examples/ (#2870) 1 year ago

README.md

Building the Examples

The examples assume you have already built the raylib library in ../src.

With GNU make

  • make builds all examples
  • make [module] builds all examples for a particular module (e.g make core)

With Zig

The Zig toolchain can compile C and C++ in addition to Zig. You may find it easier to use than other toolchains, especially when it comes to cross-compiling.

  • zig build to compile all examples
  • zig build [module] to compile all examples for a module (e.g. zig build core)
  • zig build [example] to compile and run a particular example (e.g. zig build core_basic_window)

EXAMPLES LIST

category: core

Examples using raylib core platform functionality like window creation, inputs, drawing modes and system functionality.

## example image difficulty
level
version
created
last version
updated
original
developer
01 core_basic_window core_basic_window ️☆☆☆ 1.0 1.0 Ray
02 core_input_keys core_input_keys ️☆☆☆ 1.0 1.0 Ray
03 core_input_mouse core_input_mouse ️☆☆☆ 1.0 4.0 Ray
04 core_input_mouse_wheel core_input_mouse_wheel ️☆☆☆ 1.1 1.3 Ray
05 core_input_gamepad core_input_gamepad ️☆☆☆ 1.1 4.2 Ray
06 core_input_multitouch core_input_multitouch ️☆☆☆ 2.1 2.5 Berni
07 core_input_gestures core_input_gestures ️☆☆ 1.4 4.2 Ray
08 core_2d_camera core_2d_camera ️☆☆ 1.5 3.0 Ray
09 core_2d_camera_mouse_zoom core_2d_camera_mouse_zoom ️☆☆ 4.2 4.2 Jeffery Myers
10 core_2d_camera_platformer core_2d_camera_platformer ️☆ 2.5 3.0 avyy
11 core_2d_camera_split_screen core_2d_camera_split_screen 4.5 4.5 Gabriel dos Santos Sanches
12 core_3d_camera_mode core_3d_camera_mode ️☆☆☆ 1.0 1.0 Ray
13 core_3d_camera_free core_3d_camera_free ️☆☆☆ 1.3 1.3 Ray
14 core_3d_camera_first_person core_3d_camera_first_person ️☆☆ 1.3 1.3 Ray
15 core_3d_camera:split_screen core_3d_camera_split_screen 3.7 4.0 Jeffery Myers
16 core_3d_picking core_3d_picking ️☆☆ 1.3 4.0 Ray
17 core_world_screen core_world_screen ️☆☆ 1.3 1.4 Ray
18 core_custom_logging core_custom_logging ️☆ 2.5 2.5 Pablo Marcos Oltra
19 core_window_flags core_window_flags ️☆ 3.5 3.5 Ray
20 core_window_letterbox core_window_letterbox ️☆☆ 2.5 4.0 Anata
21 core_window_should_close core_window_should_close ️☆☆☆ 4.2 4.2 Ray
22 core_drop_files core_drop_files ️☆☆ 1.3 4.2 Ray
23 core_random_values core_random_values ️☆☆☆ 1.1 1.1 Ray
24 core_storage_values core_storage_values ️☆☆ 1.4 4.2 Ray
25 core_vr_simulator core_vr_simulator ️☆ 2.5 4.0 Ray
26 core_loading_thread core_loading_thread ️☆ 2.5 3.0 Ray
27 core_scissor_test core_scissor_test ️☆☆☆ 2.5 3.0 Chris Dill
28 core_basic_screen_manager core_basic_screen_manager ️☆☆☆ 4.0 4.0 Ray
29 core_custom_frame_control core_custom_frame_control 4.0 4.0 Ray
30 core_smooth_pixelperfect core_smooth_pixelperfect ️☆ 3.7 4.0 Giancamillo Alessandroni
31 core_window_should_close core_window_should_close ️☆☆ 4.2 4.2 Ray

category: shapes

Examples using raylib shapes drawing functionality, provided by raylib shapes module.

## example image difficulty
level
version
created
last version
updated
original
developer
31 shapes_basic_shapes shapes_basic_shapes ️☆☆☆ 1.0 4.0 Ray
32 shapes_bouncing_ball shapes_bouncing_ball ️☆☆☆ 2.5 2.5 Ray
33 shapes_colors_palette shapes_colors_palette ️☆☆ 1.0 2.5 Ray
34 shapes_logo_raylib shapes_logo_raylib ️☆☆☆ 1.0 1.0 Ray
35 shapes_logo_raylib_anim shapes_logo_raylib_anim ️☆☆ 2.5 4.0 Ray
36 shapes_rectangle_scaling shapes_rectangle_scaling ️☆☆ 2.5 2.5 Vlad Adrian
37 shapes_lines_bezier shapes_lines_bezier ️☆☆☆ 1.7 1.7 Ray
38 shapes_collision_area shapes_collision_area ️☆☆ 2.5 2.5 Ray
39 shapes_following_eyes shapes_following_eyes ️☆☆ 2.5 2.5 Ray
40 shapes_easings_ball_anim shapes_easings_ball_anim ️☆☆ 2.5 2.5 Ray
41 shapes_easings_box_anim shapes_easings_box_anim ️☆☆ 2.5 2.5 Ray
42 shapes_easings_rectangle_array shapes_easings_rectangle_array ️☆ 2.5 2.5 Ray
43 shapes_draw_ring shapes_draw_ring ️☆ 2.5 2.5 Vlad Adrian
44 shapes_draw_circle_sector shapes_draw_circle_sector ️☆ 2.5 2.5 Vlad Adrian
45 shapes_draw_rectangle_rounded shapes_draw_rectangle_rounded ️☆ 2.5 2.5 Vlad Adrian
46 shapes_top_down_lights shapes_top_down_lights 4.2 4.2 Jeffery Myers

category: textures

Examples using raylib textures functionality, including image/textures loading/generation and drawing, provided by raylib textures module.

## example image difficulty
level
version
created
last version
updated
original
developer
47 textures_logo_raylib textures_logo_raylib ️☆☆☆ 1.0 1.0 Ray
48 textures_srcrec_dstrec textures_srcrec_dstrec ️☆ 1.3 1.3 Ray
49 textures_image_drawing textures_image_drawing ️☆☆ 1.4 1.4 Ray
50 textures_image_generation textures_image_generation ️☆☆ 1.8 1.8 Ray
51 textures_image_loading textures_image_loading ️☆☆☆ 1.3 1.3 Ray
52 textures_image_processing textures_image_processing ️☆ 1.4 3.5 Ray
53 textures_image_text textures_image_text ️☆☆ 1.8 4.0 Ray
54 textures_to_image textures_to_image ️☆☆☆ 1.3 4.0 Ray
55 textures_raw_data textures_raw_data ️☆ 1.3 3.5 Ray
56 textures_particles_blending textures_particles_blending ️☆☆☆ 1.7 3.5 Ray
57 textures_npatch_drawing textures_npatch_drawing ️☆ 2.0 2.5 Jorge A. Gomes
58 textures_background_scrolling textures_background_scrolling ️☆☆☆ 2.0 2.5 Ray
59 textures_sprite_anim textures_sprite_anim ️☆☆ 1.3 1.3 Ray
60 textures_sprite_button textures_sprite_button ️☆☆ 2.5 2.5 Ray
61 textures_sprite_explosion textures_sprite_explosion ️☆☆ 2.5 3.5 Ray
62 textures_bunnymark textures_bunnymark ️☆ 1.6 2.5 Ray
63 textures_mouse_painting textures_mouse_painting ️☆ 3.0 3.0 Chris Dill
64 textures_blend_modes textures_blend_modes ️☆☆☆ 3.5 3.5 Karlo Licudine
65 textures_draw_tiled textures_draw_tiled ️☆ 3.0 4.2 Vlad Adrian
66 textures_polygon textures_polygon ️☆☆☆ 3.7 3.7 Chris Camacho
67 textures_fog_of_war textures_fog_of_war ️☆ 4.2 4.2 Ray
68 textures_gif_player textures_gif_player ️☆ 4.2 4.2 Ray

category: text

Examples using raylib text functionality, including sprite fonts loading/generation and text drawing, provided by raylib text module.

## example image difficulty
level
version
created
last version
updated
original
developer
69 text_raylib_fonts text_raylib_fonts ️☆☆☆ 1.7 3.7 Ray
70 text_font_spritefont text_font_spritefont ️☆☆☆ 1.0 1.0 Ray
71 text_font_filters text_font_filters ️☆☆ 1.3 4.2 Ray
72 text_font_loading text_font_loading ️☆☆☆ 1.4 3.0 Ray
73 text_font_sdf text_font_sdf ️☆ 1.3 4.0 Ray
74 text_format_text text_format_text ️☆☆☆ 1.1 3.0 Ray
75 text_input_box text_input_box ️☆☆ 1.7 3.5 Ray
76 text_writing_anim text_writing_anim ️☆☆ 1.4 1.4 Ray
77 text_rectangle_bounds text_rectangle_bounds 2.5 4.0 Vlad Adrian
78 text_unicode text_unicode 2.5 4.0 Vlad Adrian
79 text_draw_3d text_draw_3d 3.5 4.0 Vlad Adrian
80 text_codepoints_loading text_codepoints_loading ️☆ 4.2 4.2 Ray

category: models

Examples using raylib models functionality, including models loading/generation and drawing, provided by raylib models module.

## example image difficulty
level
version
created
last version
updated
original
developer
81 models_animation models_animation ️☆☆ 2.5 3.5 culacant
82 models_billboard models_billboard ️☆ 1.3 3.5 Ray
83 models_box_collisions models_box_collisions ️☆☆☆ 1.3 3.5 Ray
84 models_cubicmap models_cubicmap ️☆☆ 1.8 3.5 Ray
85 models_first_person_maze models_first_person_maze ️☆☆ 2.5 3.5 Ray
86 models_geometric_shapes models_geometric_shapes ️☆☆☆ 1.0 3.5 Ray
87 models_mesh_generation models_mesh_generation ️☆☆ 1.8 4.0 Ray
88 models_mesh_picking models_mesh_picking ️☆ 1.7 4.0 Joel Davis
89 models_loading models_loading ️☆☆☆ 2.5 4.0 Ray
90 models_loading_gltf models_loading_gltf ️☆☆☆ 3.7 4.2 Ray
91 models_loading_vox models_loading_vox ️☆☆☆ 4.0 4.0 Johann Nadalutti
92 models_loading_m3d models_loading_m3d ️☆☆☆ 4.2 4.2 bzt
93 models_orthographic_projection models_orthographic_projection ️☆☆☆ 2.0 3.7 Max Danielsson
94 models_rlgl_solar_system models_rlgl_solar_system 2.5 4.0 Ray
95 models_yaw_pitch_roll models_yaw_pitch_roll ️☆☆ 1.8 4.0 Berni
96 models_waving_cubes models_waving_cubes ️☆ 2.5 3.7 codecat
97 models_heightmap models_heightmap ️☆☆☆ 1.8 3.5 Ray
98 models_skybox models_skybox ️☆☆ 1.8 4.0 Ray

category: shaders

Examples using raylib shaders functionality, including shaders loading, parameters configuration and drawing using them (model shaders and postprocessing shaders). This functionality is directly provided by raylib rlgl module.

## example image difficulty
level
version
created
last version
updated
original
developer
99 shaders_basic_lighting shaders_basic_lighting 3.0 4.2 Chris Camacho
100 shaders_model_shader shaders_model_shader ️☆☆ 1.3 3.7 Ray
101 shaders_shapes_textures shaders_shapes_textures ️☆☆ 1.7 3.7 Ray
102 shaders_custom_uniform shaders_custom_uniform ️☆☆ 1.3 4.0 Ray
103 shaders_postprocessing shaders_postprocessing ️☆ 1.3 4.0 Ray
104 shaders_palette_switch shaders_palette_switch ️☆ 2.5 3.7 Marco Lizza
105 shaders_raymarching shaders_raymarching 2.0 4.2 Ray
106 shaders_texture_drawing shaders_texture_drawing ️☆☆ 2.0 3.7 Michał Ciesielski
107 shaders_texture_outline shaders_texture_outline ️☆ 4.0 4.0 Samuel Skiff
108 shaders_texture_waves shaders_texture_waves ️☆☆ 2.5 3.7 Anata
109 shaders_julia_set shaders_julia_set ️☆ 2.5 4.0 eggmund
110 shaders_eratosthenes shaders_eratosthenes ️☆ 2.5 4.0 ProfJski
111 shaders_fog shaders_fog ️☆ 2.5 3.7 Chris Camacho
112 shaders_simple_mask shaders_simple_mask ️☆☆ 2.5 3.7 Chris Camacho
113 shaders_hot_reloading shaders_hot_reloading ️☆ 3.0 3.5 Ray
114 shaders_mesh_instancing shaders_mesh_instancing 3.7 4.2 seanpringle
115 shaders_multi_sample2d shaders_multi_sample2d ️☆☆ 3.5 3.5 Ray
116 shaders_spotlight shaders_spotlight ️☆☆ 2.5 3.7 Chris Camacho
117 shaders_deferred_render shaders_deferred_render 4.5 4.5 Justin Andreas Lacoste

category: audio

Examples using raylib audio functionality, including sound/music loading and playing. This functionality is provided by raylib raudio module. Note this module can be used standalone independently of raylib, check raudio_standalone example.

## example image difficulty
level
version
created
last version
updated
original
developer
118 audio_module_playing audio_module_playing ️☆☆☆ 1.5 3.5 Ray
119 audio_music_stream audio_music_stream ️☆☆☆ 1.3 4.2 Ray
120 audio_raw_stream audio_raw_stream ️☆ 1.6 4.2 Ray
121 audio_sound_loading audio_sound_loading ️☆☆☆ 1.1 3.5 Ray

category: others

Examples showing raylib misc functionality that does not fit in other categories, like standalone modules usage or examples integrating external libraries.

## example image difficulty
level
version
created
last version
updated
original
developer
122 rlgl_standalone rlgl_standalone 1.6 4.0 Ray
123 rlgl_compute_shader rlgl_compute_shader 4.0 4.0 Teddy Astie
124 easings_testbed easings_testbed ️☆ 3.0 3.0 Juan Miguel López
125 raylib_opengl_interop raylib_opengl_interop 4.0 4.0 Stephan Soller
126 embedded_files_loading embedded_files_loading ️☆☆ 3.5 3.5 Kristian Holmgren

As always contributions are welcome, feel free to send new examples! Here it is an examples template to start with!