Attempting to improve my Rubik's Cube solver with viewer suggestions such as: CFOP, domino reduction, and pruning tables. Links: Support my work (and get early access to new projects): https://www.patreon.com/SebastianLague Source code: https://github.com/SebLague/Rubiks-Cube...
My attempt at solving the 3x3 Rubik's cube (by programming the computer to do it for me). Note: in the evaluation function at 22:32 I mention that it falls back to the 'Greedy' evaluator shown previously. However, I forgot that I had made a small change to that function,...
My attempt at solving the 3x3 Rubik's cube (by programming the computer to do it for me).
Note: in the evaluation function at 22:32 I mention that it falls back to the 'Greedy' evaluator shown previously. However, I forgot that I had made a small change to that function, which is to give a bonus to correctly oriented corners. Sorry for the oversight!
Links:
Support my work (and get early access to new projects): https://www.patreon.com/SebastianLague
Source code: https://github.com/SebLague/Rubiks-Cube
Follow-up video: https://youtu.be/Eysf6-E3ino?is=Fu6gW1WFUXyDTQoa
Resources and credits:
https://en.wikipedia.org/wiki/Optimal_solutions_for_the_Rubik%27s_Cube
https://raw.githubusercontent.com/SebLague/Misc-Project-Info/refs/heads/main/Coding-Adventures/RubiksCube.txt
Chapters:
00:00 Creating the Cube
02:00 Rotation Time!
04:39 Binary State
08:15 Making Moves
12:47 Search and Optimization
15:34 The Greedy Solver
17:53 The Sandwich Solver
20:21 The Oriented Solver
23:39 Final Thoughts
Let's try add sine waves together and see what sort of sounds we can create! Support my work (and get early access to new videos and source code) on Patreon: https://www.patreon.com/SebastianLague Project files: https://github.com/SebLague/Audio-Experiments Resources and...
Let's try add sine waves together and see what sort of sounds we can create!
Support my work (and get early access to new videos and source code) on Patreon: https://www.patreon.com/SebastianLague
Project files:
https://github.com/SebLague/Audio-Experiments
Resources and credits:
https://www.soundonsound.com/series/synth-secrets-sound-sound
https://theremin.music.uiowa.edu/MISpiano.html (currently inaccessible?)
https://www.youtube.com/watch?v=atvtBE6t48M
https://raw.githubusercontent.com/SebLague/Misc-Project-Info/refs/heads/main/Coding-Adventures/musicSynth.txt
Chapters:
00:00 Intro
01:28 Synth Setup
02:32 Precision Issues
04:19 ADR Envelope
06:35 Curvy Envelopes
08:22 Multiple Notes!
09:32 Compressor
11:52 Twelve Equal Temperament
14:21 Scales and Piano Layout
15:46 MIDI
17:51 Harmonics
22:03 Some Tweaks
25:02 Atonal Test
26:07 Interpolation
27:16 Low Octaves
30:12 Simple Piano Synth
30:35 Sin Bug
31:35 Simple Marimba Synth
32:25 Sustain
33:42 Outro and Final Test
Let's have some fun messing about with sound and the Short-Time Fourier Transform! Support my work (and get early access to new videos and source code) on Patreon: https://www.patreon.com/SebastianLague Project files: https://github.com/SebLague/Audio-Experiments This is a...
Let's have some fun messing about with sound and the Short-Time Fourier Transform!
Support my work (and get early access to new videos and source code) on Patreon: https://www.patreon.com/SebastianLague
Project files:
https://github.com/SebLague/Audio-Experiments
This is a follow-up to my previous audio-based episode, which you can watch over here: https://www.youtube.com/watch?v=iA6wRgwl7k0
Music credits: https://raw.githubusercontent.com/SebLague/Misc-Project-Info/refs/heads/main/Coding-Adventures/stft.txt
Chapters:
00:00 Intro
02:17 The Short-Time Fourier Transform
04:47 Time and Frequency Resolution
08:14 Single Frequency Experiment
10:25 Creating a Spectrogram
11:48 Hann Window
14:43 Hop and Segment Size
15:57 Spectrogram to Sound
17:05 Painting Sound
20:04 Secret Messages
20:44 Outro
The white pixels in the original animation have been treated as solid cells (drawn in black), with a constant outwards force applied along the outline. Smoke is also gradually added in along the outline. Simulation explanation: https://www.youtube.com/watch?v=Q78wvrQ9xsU My...
The white pixels in the original animation have been treated as solid cells (drawn in black), with a constant outwards force applied along the outline. Smoke is also gradually added in along the outline.
Simulation explanation:
https://www.youtube.com/watch?v=Q78wvrQ9xsU
My other bad apple (using a particle-based fluid):
https://www.youtube.com/watch?v=2Ni13dnAbSA
Support my random experiments on Patreon:
https://www.patreon.com/SebastianLague
Credits:
Music: https://www.youtube.com/watch?v=i41KoE0iMYU
Animation by あにら (Anira). Specifically, I used this version: https://www.youtube.com/watch?v=FtutLA63Cp8
Subtitles: https://archive.org/details/bad-apple-resources
My attempt at coding a grid-based fluid simulation to try and achieve some smoky effects! Support my work (and get early access to new videos and source code) on Patreon: https://www.patreon.com/SebastianLague Source Code: https://github.com/SebLague/Smoke-Simulation...
My attempt at coding a grid-based fluid simulation to try and achieve some smoky effects!
Support my work (and get early access to new videos and source code) on Patreon: https://www.patreon.com/SebastianLague
Source Code:
https://github.com/SebLague/Smoke-Simulation
Resources and References:
Fluid notes: https://www.cs.ubc.ca/~rbridson/fluidsimulation/fluids_notes.pdf
Ten-minute physics: https://www.youtube.com/watch?v=iKAVRgIrUOU
My other fluid videos: https://youtube.com/playlist?list=PLFt_AvWsXl0dJrPelwdVSMVC_MDTYPJWn&si=Z5cOCDSI1aS4fe_C
Sound wave simulation: https://www.youtube.com/watch?v=iA6wRgwl7k0
Music: https://raw.githubusercontent.com/SebLague/Misc-Project-Info/refs/heads/main/Coding-Adventures/Smoke
Chapters
00:00 Intro
00:50 Navier-Stokes Equations
02:00 Divergence
05:09 Solving for Pressure
08:26 Gauss-Seidel Iteration
10:36 Solid Cells
12:26 Velocity Interpolation
15:15 Advection (with derivatives)
18:37 Semi-Lagrangian Advection
22:12 Testing
23:43 Successive Over-Relaxation
25:16 Visualizing Speed
26:32 Smoke Map
28:14 Parallel Pressure Solving
31:13 Vortex Shedding
35:48 A Few Little Experiments
37:55 Temperature
39:17 Final Smoke Experiments
40:38 Outro
It's been almost 7 years since I last took part in a game jam, so I felt it was high time to jam again! The goal was to make something in 4 days, inspired by the single word: LOOP. Support my work (and get early access to new videos and source code) on Patreon:...
It's been almost 7 years since I last took part in a game jam, so I felt it was high time to jam again! The goal was to make something in 4 days, inspired by the single word: LOOP.
Support my work (and get early access to new videos and source code) on Patreon: https://www.patreon.com/SebastianLague
Source code and game download:
* GitHub: https://github.com/SebLague/Family-Time
* Play: https://sebastian.itch.io/family-time
Credits and other links:
* Game assets: https://github.com/SebLague/Family-Time/blob/main/Assets/3rdParty.txt
* Video music: https://github.com/SebLague/Misc-Project-Info/blob/main/Other%20Videos/FamilyTime.txt
* All games: https://itch.io/jam/gmtk-2025/entries
* Games shown at end:
-- Planet Looper: https://itch.io/jam/gmtk-2025/rate/3763752
-- Cursed by Feedback: https://itch.io/jam/gmtk-2025/rate/3775683
-- CRANK IT: https://itch.io/jam/gmtk-2025/rate/3768606
-- Sir Loopsalot: https://itch.io/jam/gmtk-2025/rate/3771619
-- Time Prison: https://itch.io/jam/gmtk-2025/rate/3779083
-- GLORBIT Saves the Galaxy: https://itch.io/jam/gmtk-2025/rate/3778815
Chapters:
00:00 Day Zero
00:55 Day One
05:48 Day Two
09:52 Day Three
14:55 Day Four
20:38 Playthrough
Let's do some more ray-tracer coding and see if we can get it to render glass, and rainbows, and more! Support my work (and get early access to new videos and source code) on Patreon: https://www.patreon.com/SebastianLague Source code: https://github.com/SebLague/Ray-Tracing...
Let's do some more ray-tracer coding and see if we can get it to render glass, and rainbows, and more!
Support my work (and get early access to new videos and source code) on Patreon: https://www.patreon.com/SebastianLague
Source code: https://github.com/SebLague/Ray-Tracing
Credits:
* Music: https://github.com/SebLague/Misc-Project-Info/blob/main/Coding-Adventures/GlassAndCaustics.txt
* Frosted glass reference: https://youtu.be/fWAAOWTV1K0?si=KL-EnzSZ6mLVfuqn
Chapters:
00:00 Intro
02:02 Glass
04:58 Glass Bugs
09:04 NaNs
11:51 Absorption
13:49 Frosted Glass
15:44 Glass Ball Test
21:14 Stack versus Stoch
22:55 Visualizing Caustics
25:42 Cardioid Caustic
27:04 Water Caustic
32:24 Rainbow
36:01 Spectral Experiment
40:46 Outro
Let's try to turn some dot products into a 3D world! Support my work (and get early access to new videos and source code) on Patreon or Nebula * Patreon: https://www.patreon.com/SebastianLague * Nebula: https://go.nebula.tv/sebastianlague Source code: * GitHub:...
Let's try to turn some dot products into a 3D world!
Support my work (and get early access to new videos and source code) on Patreon or Nebula
* Patreon: https://www.patreon.com/SebastianLague
* Nebula: https://go.nebula.tv/sebastianlague
Source code:
* GitHub: https://github.com/SebLague/Software-Rasterizer
Credits:
* Music: https://raw.githubusercontent.com/SebLague/Misc-Project-Info/refs/heads/main/Coding-Adventures/Rasterizer.txt
* Raylib: https://github.com/raysan5/raylib
* C# bindings: https://github.com/raylib-cs/raylib-cs
* Visualizations made (mostly) with Shapes: https://acegikmo.com/shapes/
Chapters:
00:00 Intro
00:32 The First Image
02:39 Triangle Maths
05:36 Testing the Triangles
07:30 Reading a 3D Model
09:13 Orthographic Projection
10:20 Single-Axis Rotation
12:37 Back-Face Culling
13:42 Another Axis of Rotation
15:34 Perspective and Field of View
19:22 Monkey! (and the Depth Buffer)
25:30 Real-Time Rendering
26:31 Camera and View Space
31:22 Depth Bug
33:03 Textures
35:00 Directional Lighting
38:52 Boy and Fox
40:35 Near-Plane Clipping
43:49 Procedural Terrain
45:18 Some Quick Optimizations
46:32 Odds and Ends
48:40 Final Demo
Let’s try building a whopping 256 bytes of random access memory (inside a digital logic simulation). This is part 5 of my journey to explore the basics of how computer’s work. If you’d like to watch the other episodes, you can find the full playlist here:...
Let’s try building a whopping 256 bytes of random access memory (inside a digital logic simulation).
This is part 5 of my journey to explore the basics of how computer’s work. If you’d like to watch the other episodes, you can find the full playlist here:
https://youtube.com/playlist?list=PLFt_AvWsXl0dPhqVsKt1Ni_46ARyiCGSq&si=tYFx249Y6Nufctdb
The simulation program is in a slightly rough and unstable state as I’m developing it as I go, but if you’d like to try it out, the latest version (and source code) is available over here:
https://sebastian.itch.io/digital-logic-sim
https://github.com/SebLague/Digital-Logic-Sim
If you’d like to support me in creating more videos, consider becoming a patron of the channel:
https://www.patreon.com/c/SebastianLague
This series was largely inspired by the 8-bit breadboard computer series by @BenEater (so be sure to check that out if you haven’t already)!
Image and music credits:
https://raw.githubusercontent.com/SebLague/Misc-Project-Info/refs/heads/main/Digital-Logic-Sim/ram-credits.txt
Chapters:
00:00 Intro and a New Simulation
01:50 A Grid of Latches
03:12 Decoder
04:42 1-Bit Memory Cell
06:42 Rambling about Dynamic and Static Memory
08:46 16 Bits of Memory
11:41 Surprise Inspection
12:16 256 Bits of Memory
14:28 Asynchronous RAM
18:02 A Brief Note Concerning Caches
19:00 Synchronous RAM
22:28 Equality Chip
23:28 The Final Test
24:37 A Trip Down Memory Lane
Until today, the Fluid Simulation has been confined to a tiny box. Let's set it free on a planet, with a little orbiting moon, and see what happens! Support my work (and get early access to new videos and source code) on Patreon or Nebula * Patreon:...
Until today, the Fluid Simulation has been confined to a tiny box. Let's set it free on a planet, with a little orbiting moon, and see what happens!
Support my work (and get early access to new videos and source code) on Patreon or Nebula
* Patreon: https://www.patreon.com/SebastianLague
* Nebula: https://go.nebula.tv/sebastianlague
Source Code:
* GitHub https://github.com/SebLague/Fluid-Planet
Check out my other fluid simulation videos:
https://youtube.com/playlist?list=PLFt_AvWsXl0dJrPelwdVSMVC_MDTYPJWn&si=Z5cOCDSI1aS4fe_C
Credits:
* Music: https://raw.githubusercontent.com/SebLague/Misc-Project-Info/refs/heads/main/Coding-Adventures/FluidPlanet.txt
Chapters:
00:00 Intro
00:25 Playing with Gravity
03:11 Adding Simple Collisions
04:21 Implementing Orbits
05:36 Visualizing Tidal Forces
07:46 Fluid Shell
08:50 Tide Watching
11:54 Implementing the Earth
17:25 Oceans on Earth
20:26 A Terraforming Experiment
23:48 3-Body System
We've succeeded in the past to make a bunch of little balls behave like a fluid, but can we now make them look like a fluid too? In this video we'll explore a few different techniques, and also attempt a simple simulation of foam and spray to liven things up! Support my work...
We've succeeded in the past to make a bunch of little balls behave like a fluid, but can we now make them look like a fluid too? In this video we'll explore a few different techniques, and also attempt a simple simulation of foam and spray to liven things up!
Support my work (and get early access to new videos and source code) on Patreon or Nebula
* Patreon: https://www.patreon.com/SebastianLague
* Nebula: https://go.nebula.tv/sebastianlague
Source Code:
* GitHub: https://github.com/SebLague/Fluid-Sim
Check out my other fluid simulation videos:
https://youtube.com/playlist?list=PLFt_AvWsXl0dJrPelwdVSMVC_MDTYPJWn&si=Z5cOCDSI1aS4fe_C
Credits and References:
* Screen Space Fluid Rendering: https://developer.download.nvidia.com/presentations/2010/gdc/Direct3D_Effects.pdf
* Foam, Spray and Bubbles: https://cg.informatik.uni-freiburg.de/publications/2012_CGI_sprayFoamBubbles.pdf
* Reflections and Refractions: https://graphics.stanford.edu/courses/cs148-10-summer/docs/2006--degreve--reflection_refraction.pdf
* Music: https://raw.githubusercontent.com/SebLague/Misc-Project-Info/refs/heads/main/Coding-Adventures/FluidRendering
Chapters:
0:00 Intro
0:27 Marching Cubes
05:58 Raymarching
10:40 Refract, Reflect, Fresnel
13:35 More Raymarching
18:28 A Simple Environment
20:40 Testing the Raymarched Fluid
25:03 Screen Space Technique: Depth Map
28:35 Simple Smoothing
33:42 Surface Smoothing
36:44 Rendering the Fluid
42:02 Spray, Foam, and Bubbles
55:12 Testing the Screen Space Fluid
57:22 Outro
Some small experiments with sound, and learning how to break signals down into their component frequencies by implementing the Discrete Fourier Transform. Support my work (and get early access to new videos and source code) on Patreon: https://www.patreon.com/SebastianLague...
Some small experiments with sound, and learning how to break signals down into their component frequencies by implementing the Discrete Fourier Transform.
Support my work (and get early access to new videos and source code) on Patreon: https://www.patreon.com/SebastianLague
Source Code:
https://github.com/SebLague/Audio-Experiments/tree/Episode-01
Credits and References:
● @3blue1brown video: https://youtu.be/spUNpyF58BY?si=U5pu40UUNk-7mda0
● Music: https://github.com/SebLague/Misc-Project-Info/blob/main/Coding-Adventures/FourierTransform
Chapters:
00:00 Intro
00:48 Dot Wav
03:05 Waveform
04:24 Playing a Sound
05:03 Wave Simulation
10:31 Speed Change
12:38 Signal Generation
17:14 Fourier Vis (single frequency)
23:31 Fourier Vis (multiple frequencies)
28:01 First Attempt at DFT
31:39 The Nyquist Rate
35:14 Frequency Resolution
37:25 DFT Implementation
39:31 Testing the DFT Function
42:41 Outro
Attempting to render more intricate scenes using an acceleration structure called a Bounding Volume Hierarchy. Support my work (and get early access to new videos and source code) on Patreon or Nebula * Patreon: https://www.patreon.com/SebastianLague * Nebula:...
Attempting to render more intricate scenes using an acceleration structure called a Bounding Volume Hierarchy.
Support my work (and get early access to new videos and source code) on Patreon or Nebula
* Patreon: https://www.patreon.com/SebastianLague
* Nebula: https://go.nebula.tv/sebastianlague
Source Code:
* GitHub: https://github.com/SebLague/Ray-Tracing
Credits and References:
* BVH Article: https://jacco.ompf2.com/2022/04/18/how-to-build-a-bvh-part-2-faster-rays/
* 3D Test Models: https://casual-effects.com/data/
* Music: https://github.com/SebLague/Misc-Project-Info/blob/main/Coding-Adventures/BVH.txt
Chapters:
00:00 Intro
00:30 Triangle-Test Debug View
03:34 Bounding Boxes Inside of Bounding Boxes
04:41 Building a BVH
07:41 Traversing the BVH
09:13 GPU-Friendly Data
15:32 Converting Recursion to Iteration
18:06 Box-Test Debug View
21:42 Increasing the Depth of the BVH
25:11 Distance Test and Child Ordering
31:47 The Surface Area Heuristic
37:19 Speeding up the Construction
38:57 32-Byte Nodes
42:20 Transformations
45:10 Supporting Multiple Models
48:45 Some Tests and Final Thoughts
This... is text! Let's figure out how to draw it. Starring: Bézier curves and (oh so many) floating point problems. Support my work (and get early access to new videos and source code) on Patreon or Nebula * Patreon: https://www.patreon.com/SebastianLague * Nebula:...
This... is text! Let's figure out how to draw it.
Starring: Bézier curves and (oh so many) floating point problems.
Support my work (and get early access to new videos and source code) on Patreon or Nebula
* Patreon: https://www.patreon.com/SebastianLague
* Nebula: https://go.nebula.tv/sebastianlague
Source code:
* GitHub: https://github.com/SebLague/Text-Rendering
Credits and References:
* Fonts and music: https://github.com/SebLague/Misc-Project-Info/blob/main/Coding-Adventures/TextRendering
* https://developer.apple.com/fonts/TrueType-Reference-Manual/
* https://www.microsoft.com/en-us/research/wp-content/uploads/2005/01/p1000-loop.pdf
* https://wdobbie.com/post/gpu-text-rendering-with-vector-textures/
Chapters
0:00:00 Intro
0:01:58 The Font Directory
0:04:27 Loading Simple Glyphs
0:10:42 Bézier Basics
0:13:42 The Character Map
0:15:47 Implied Points
0:18:11 Compound Glyphs
0:20:25 Size and Spacing
0:21:27 Rendering Glyphs with Lots of Triangles
0:22:17 Optimized Curve Rendering (Loop-Blinn)
0:28:20 A Brief Look at SDF Rendering
0:30:33 The Counting Method
0:31:48 Ray-Bézier Intersections
0:34:09 Point in Glyph Test
0:36:35 Shader Time
0:38:37 Floating Point Problems
0:41:22 The Evil Artifact Detector
0:45:36 The Closest Curve Method
0:50:48 Curve Splitting
0:54:31 Defeating the Evil Artifacts
0:58:58 Anti-Aliasing
1:02:47 Performance and Legibility
1:05:11 The Counting Method Returns
1:09:45 Outro