Learning Siv3D¶
Tutorials¶
Beginner Tutorial 1
Chapter | Title | Content |
---|---|---|
1 | Your first Siv3D | Experience the atmosphere of Siv3D through modifying basic Siv3D samples. |
2 | Basics of Siv3D | Learn about the basic structure of a Siv3D program. |
3 | Composition of Main Function | Learn about the structure of the main loop and the processes executed before and after it. |
4 | Basic Application Operations | Learn about the basic operation methods of a Siv3D application. |
5 | Simple Data Display | Learn how to display text and numbers simply within the program. |
6 | Basic Data Types | Learn about the basic data types used in Siv3D programs. |
7 | Changing Background Color | Learn how to change the color of the screen background. |
8 | Drawing Circles and Rectangles | Learn how to draw circles and rectangles. |
9 | Drawing Patterns | Learn how to draw patterns by arranging circles and rectangles. |
10 | Drawing Emojis | Learn how to draw emojis. |
11 | Displaying Text | Learn how to display numbers and text with specified colors and positions. |
12 | Variables and Movements | Learn how to create movements by changing variables using the passage of time. |
13 | Handling Keyboard Input | Learn how to check keyboard input. |
14 | Handling Mouse Input | Learn how to get mouse clicks and cursor positions. |
15 | Creating a Button | Practice creating a button using what you've learned so far. |
16 | Creating a Cookie Clicker Style Game | Create a Cookie Clicker style game using what you've learned so far. |
Beginner Tutorial 2
Chapter | Title | Contents |
---|---|---|
17 | Drawing Shapes | Learn about the various 2D shape drawing functions provided by Siv3D. |
18 | Creating Movements | Learn about the Siv3D functions useful for expressing movements. |
19 | String Class | Learn the basics of using the string class String . |
20 | Dynamic Arrays | Explains the basics of using the dynamic array class Array . |
21 | Two-dimensional Arrays | Learn the basics of using the two-dimensional array class Grid . |
22 | Hash Table | Learn the basics of using the hash set HashSet and the hash table HashTable . |
23 | Type that can Express Invalid Values | Learn the basics of using the type Optional that can represent invalid values. |
24 | Collision Detection | Learn how to perform shape intersection detection. |
25 | Drawing Textures | Learn how to create and draw textures from emojis, icons, and image files. |
26 | Drawing Videos | Learn how to draw videos and GIF animations onto scenes. |
27 | Converting Numbers and Strings | Learn how to convert numerical data to strings and convert strings to numerical data. |
28 | GUI | Learn how to use GUI features such as buttons, sliders, and text boxes. |
29 | Random | Learn how to generate random numbers, colors, and coordinates, and how to randomly select elements from multiple options. |
30 | Date and Time, Timing | Learn about timing and functions related to date and time. |
31 | Displaying Text | Learn how to draw various styles of text using fonts. |
32 | Scene and Window | Learn how to customize Siv3D's scenes and windows. |
33 | Keyboard Input | Learn how to process keyboard input. |
34 | Mouse Input | Learn how to process mouse input. |
35 | Useful Functions | Learn about small useful functions and features that are helpful for Siv3D programming. |
36 | Implementation of Interactions | Implement various interactive elements using what you've learned so far. |
Beginner Tutorial 3
Chapter | Title | Content |
---|---|---|
37 | Audio Playback | Learn how to control the playback of sound effects and music. |
38 | Asset Management | Learn how to access asset data such as Texture , Font , Audio from anywhere in the program. |
39 | 2D Render States | Learn how to customize 2D drawing settings to achieve various effects. |
40 | Effects | Learn how to use the Effect class, which is useful for small animations and effect productions. |
41 | Render Texture | Learn how to render shapes, textures, and fonts not to the scene but to the texture. |
42 | File System | Learn about functions related to file and directory information retrieval and operations. |
43 | Text File | Learn how to read the content of a text file and write characters to a text file. |
44 | Configuration File | Learn how to read and write configuration files such as CSV, INI, JSON, TOML, XML. |
45 | Binary File | Learn how to save data to a file in binary format and read it. |
46 | File Dialog | Learn how to open a file dialog to read images and audio, determine the file to open, and determine the name of the file to save. |
47 | Drag & Drop | Learn how to get information about files that have been dragged and dropped. |
48 | Message Box | Learn how to display a message box. |
49 | Resource File | Learn how to embed files such as images and sounds into the executable file of the application and read them in the program. |
50 | HTTP Client | Learn how to make HTTP requests, such as downloading files. |
51 | Scene Management | Learn about the "Scene Management" feature that simplifies scene transitions in games and apps. |
52 | Gamepad | Learn how to handle gamepad input. |
53 | Image Editing | Learn about image editing and how to display the results in the scene. |
54 | Audio Waveform | Learn about audio waveform editing and how to play the results. |
55 | Microphone Input | Learn how to obtain audio waveforms from a built-in or connected microphone to a PC and how to utilize them in a program. |
56 | Webcam | Learn how to obtain video from a built-in or connected webcam to a PC and how to utilize it in a program. |
57 | Advanced Geometry Processing | Learn about advanced features of 2D geometry. |
58 | Profiling and Optimization | Learn about features for profiling and optimization. |
59 | OpenAI API | Learn about the generative AI feature that integrates with the OpenAI API. |
60 | Publishing Your App | Learn the steps to distribute the application you have created. |
Beginner Tutorial 4
Chapter | Title | Description |
---|---|---|
61 | 2D Custom Shader | Learn how to perform advanced rendering in 2D using custom shaders. |
62 | Drawing 3D Shapes | Learn basic 3D rendering program. |
63 | Drawing Advanced 3D Shapes | Learn advanced 3D rendering program. |
64 | 3D Intersection Detection | Learn about 3D intersection detection functionality. |
65 | TCP Communication | Learn how to communicate between applications using TCP. |
66 | Multiplayer | Learn about the Photon integration feature for creating multiplayer games. |
67 | Serial Communication | Learn how to communicate with devices via serial communication. |
68 | OSC Communication | Learn how to communicate between applications using OSC. |
69 | Pipe Communication | Learn how to communicate between applications using pipes. |
70 | Text-to-Speech | Learn how to use the OS text-to-speech feature. |
71 | QR Code | Learn how to generate and read QR codes. |
72 | File Compression | Learn how to compress and decompress data or files. |
73 | Video Editing | Learn how to read, edit, and save video files. |
74 | Pen Tablet | Learn how to use a pen tablet. |
75 | Leap Device | Learn how to use a Leap device. |
76 | Navmesh | Learn about pathfinding using Navmesh. |
77 | 2D Physics Simulation | Learn about the functionality of 2D physics simulation. |
78 | Math Parser | Learn how to evaluate formulas using a math parser. |
79 | Accessing User Environment | Learn how to access user environment information such as usernames. |
80 | Creating Addons | Learn how to create addons and add them to the Siv3D engine. |
Samples¶
- Game Samples
- Application Samples
- Web Service Integration Samples
- Shape Samples
- 2D Drawing Samples
- Image Samples
- Text Display Samples
- UI Samples
- Data Visualization Samples
- Motion Graphics Samples
- Sound Samples
- 2D Physics Simulation Samples
- 3D Drawing Samples
- Creating a Game Launcher
Samples on GitHub¶
Articles¶
- Message Box
- Asynchronous Processing
- Connecting Your Class to Siv3D
- 21 Ways to Say Hello World in Siv3D
- Classes That Shouldn't be Global Variables
- Implementing Classes Using Polymorphism