Updated water shaders with reflection/refraction, fresnel and absorption.
136
3,143
14,307
Rewriting the liquid layers demo to better utilize WebAssembly SIMD (~3x perf improvement). Will share new demo soon after adding back interactions (there will be new interactions too).
Need to figure out how to update the favicon each time the mouse is pressed. Also, want to get multi-touch working on the phone.
46
289
3,885
359,949
Need to figure out how to update the favicon each time the mouse is pressed. Also, want to get multi-touch working on the phone.
47
118
2,711
1,174,839
Jello blocks and water real-time simulation.
29
280
1,822
WebAssembly & WebGL running in Xbox Edge browser. If my multicore tests go well I think I might just go all in on WebAssembly. It has just worked on every device I’ve tested it on.
31
116
1,552
212,410
Added the ships demo to my itchio. Didn't really polish it up or add all the features I wanted, but I've been rebuilding the engine for the web and am almost there. Ship model by Niklas Mäckle.
28
109
1,455
88,310
Added some sea foam. Water particles turn to foam in areas of impact and then turn back to water particles after some time.
23
209
1,305
You can now get my old DX11 tech demo for free at: kotsoft.itch.io/liquid-cryst… Should run on fairly old computers.
14
153
1,024
Added emitters and drains. You can emit any color in the tldraw palette. If drain is set to a color it will only delete particles of that color. Also attract/repel with heart/star shapes. General collision support for all shapes.
23
43
792
68,768
I added color (and mass) sliders this morning so you can kind of get something like beer
Replying to @kotsoft
Can you remake the iphone beer app?
17
34
777
36,727
Added sea foam. It is actually simulated as a less dense material so will naturally float up. #screenshotsaturday
15
70
688
Added support for freeform drawings. Path points are simplified using simplify-js.
14
44
655
61,941
Combining Liquid Layers with @tldraw editor cc @OrionReedOne
19
52
655
110,482
Liquid Layers now released at grantkot.com/ll/ with new features! Adjust brush size by scrolling, attract/repel with A/R keys, tweak simulation parameters. Also accelerometer and gyro support on mobile (yup this demo works in your cell phone browser!).
19
77
661
30,552
Multihand support. Using the webcam & mediapipe to control @tldraw
13
60
662
75,766
Added ability to tweak material properties in real-time. It's really fun to switch the densities of the two materials. #gamedev
6
70
620
Experimenting with chunked voxel rendering to make things lighter on the GPU and PCIe data transfer. Vertex shader to set up bounding boxes, tracing the voxel volume in pixel shader.
11
41
638
84,061
Working on some performance improvements for the phone. Running the simulation on a web worker so main thread & gpu can do the tracking.
15
43
625
48,497
Added multitouch! Now we can smash mini planets! #raylib
21
26
621
54,198
Default materials from Liquid Crystal's 2023 demo. Optical and physics settings can be adjusted. #screenshotsaturday
8
60
582
59,643
I know the chip shortage has been tough so here's 1 million particles running on integrated graphics. Even the video record/encoding is done on the CPU (i7-8700K). No discrete GPU involved, everything simulated & rendered real-time.
19
41
567
Working on the new structures system. The object is divided into small shape matching clusters, and then a global shape match (global weight set very low so you can see the clusters better).
13
36
525
57,986
I'm now using the Amanatides and Woo algorithm (popularized by Teardown) for the static blocks. Stays above 60FPS for a good while and above 30FPS for the entire clip. Planning to increase static vox resolution 4x each axis and improve reflection/refraction. #screenshotsaturday
9
47
509
56,530
Quick video of the new mesh shader stuff in action. 500k particles, 128 triangles each. Still need to implement LOD.
8
74
496
My real-time renderer now supports caustics! Check out all that shimmer and dynamic lighting.
15
54
471
I re-uploaded a 4K60 version of my Voxel Engine Recap to YT that I am super proud of: piped.video/watch?v=3259aycY…
Here is a summary video of my past 6 months of voxel physics engine optimization.
8
47
456
59,298
Starting to multithread with WebAssembly.
6
23
438
21,496
Laptop 4080 rendering insane number of triangles at 4K native. Each mesh has up to ~256 triangles at the finest detail level.
25
19
385
79,989
Buoyancy. Realtime interactive simulation on a laptop (13900HX & 4080). There are no artificial rotation forces on the boats to keep them upright. I want to add per-particle mass soon so they use ballast at the bottom and make the sails lighter.
8
26
390
31,600
Recently learned about Google MediaPipe On-Device ML through @johnathanchewy 's floating hands demo. Kinda crazy this tracking works just through RGB video, no depth needed like the Kinect.
Did some stuff w/ @TodePond @steveruizok to integrate hand drawing with @tldraw Try it out live here: floating-hands-whiteboard.ve…
9
41
363
49,863
Starting to rework my volumetric lighting stuff, this time making it much cheaper to render.
5
21
352
24,007
Revisiting adaptive resolution simulation. More particles per cell near the surface. Can now simulate some pretty deep bodies of water.
4
23
297
For GPUs without mesh shader support, I'm using a technique called merge instancing to support different meshes per particle. kotsoft.itch.io/liquid-cryst… Bill Bilodeau's GDC 2014 presentation which covers this: gdcvault.com/play/1020624/Ad…
9
42
308
Wow, thanks for all the ♥️! For all the new people wondering what this is, this is a real-time physics sandbox/game I'm working on. I will be targeting the new Xbox, Project xCloud, and high-end PCs. It is currently running at 30fps on my 8700K RTX 2080 but can be optimized more.
11
29
278
Physics based map generation?
5
16
283
25,890
Some materials from my real-time physics sandbox, Liquid Crystal. Every material is configured from the same set of unified physics/optics parameters. Very early prototype on itchio: kotsoft.itch.io/liquid-cryst…
1
32
282
26,252
Thanks for helping me get on the front page of Hacker News yesterday. I have now added "Hacker Mode" :). You can now specify a userUpdate function in the window console. Try entering userUpdate = demoFunc0, or inspect the html to find the def.
11
12
285
13,397
Started implementing ray stepping from "Eikonal Rendering" paper. Allows for total internal reflections for refractive materials. Everything still real-time. resources.mpi-inf.mpg.de/Eik…
7
43
260
I made an open-source impl of the paper Particle-based Viscoelastic Fluid Simulation (Clavet et al) in JS. Includes the viscoelastic parts. Now I have to figure out how to transfer the particles between windows.
4
22
239
20,663
Worked on adding some basic distance based absorption so objects fade with distance in the water.
5
17
235
20,525
Got a basic simulation working in WebAssembly (re-implementing PVFS in C this weekend). Thanks to @raylibtech and @Mashpoe c-vector library for making things easier.
5
8
227
32,161
Added adaptive particle resolution. The particles split near the player to give more detail. Still a work in progress. Need to manage particle counts better to give a smoother framerate.
8
16
213
14,046
Real-time Fluid Simulation, 2007 vs 2024. On the top is my very first simulation of a floating boat. #tbt
5
17
213
14,419
Added an nbody gravity mode that can be enabled under simulation settings. Not super optimized yet but runs on my phone
Replying to @kotsoft
would love to try n body gravity in this
9
9
208
16,714
Here is a summary video of my past 6 months of voxel physics engine optimization.
9
13
206
70,457
Raytraced reflection/refraction in WebGL.
3
10
208
8,690
Started working on a 3D version. Will add interactions soon.
7
8
196
15,690
Experimenting with using normals generated from the voxel data to smooth out liquid surfaces. #gamedev
5
22
190
Working on transparent water. Runs in the browser including on my phone.
4
14
197
13,084
Structures were a big part of my earlier simulations. For a while, I had to choose between high particle counts and multipart structures, but that is no longer an issue. The way the ships are currently simulated is only the beginning.
6
8
190
26,339
By setting attraction for different colored particles higher than for same, you can get something a bit like molecular bonds. To get zero-g, you can click enable accelerometer on a device that doesn't have that sensor.
6
14
180
8,759
Added sea foam. On my desktop it runs 4K >120hz.
2
8
176
14,329
Working on adding Minecraft-style block building.
3
5
171
I finally have a sponsor! Here is my first collaboration with Squatty Potty and my first day making money as an indie game developer!
12
7
163
18,690
Water and glowing green stuff. #screenshotsaturday
3
19
157
Re-enabling deep water for my ships scene.
7
14
149
13,833
Liquid Layers x @tldraw running on an iPhone. grantkot.com/draw
9
14
153
6,488
Got inspired by all those Minecraft RT videos showing stained glass. No new tech here but working on some new stuff for May!
8
13
152
You're right, thanks for pushing me to dookie better.
Replying to @kotsoft
Congrats! ..but, where are the rainbows? 🦄 😄
10
13
155
19,804
Just realized you can select and clone multiple objects with tldraw.
5
4
146
11,371
Testing out the new blocks system with a highly inaccurate model of NYC I made in MagicaVoxel this morning.
2
12
144
18,268
Added a "sculpt mode" which can be toggled with S key. Added new collision functions for circle, rect and line, which can be accessed from JavaScript. Can test those out with C, V, B keys. Also G key does a grid of circle colliders (using it to check speed of collision code)
4
12
138
6,866
Mesh shaders & physics demo, now with fewer colors, hopefully easier for the compression algorithm. 4K60: piped.video/Rm_P4bdQaL8
5
27
129
Continuing to port to the web. Elastics now working. #screenshotsaturday #IndieGameDev
3
4
140
8,996
I think accelerometer issues should be fixed for iPad and Windows tablets. I might need someone with an Android tablet to test. grantkot.com/ll/
5
6
133
11,604
Chrome and Firefox on Steam Deck don’t seem to support multitouch or accelerometer. 💔
6
2
118
18,562
Some testing from this morning.
3
5
125
6,283
Bamboo and water. Now with improved foam generation.
2
10
117
Initial prototype for an infinite landscape multiplayer voxel editor to run on @Cloudflare durable objects powered by @partykit_io . Each chunk will be a durable object and handle players in the neighborhood.
6
11
123
12,098
Mixing in some obsidian. Thanks for the suggestion @CzTommi
4
13
116
Leaky Layers! Sculpt mode with the surface tension creates some nice grooves for the liquid to leak through. You can now lock particles in place with the tilde key `. Currently just a quick hack and the editing doesn't feel great yet (no visual feedback for locking, etc.).
3
6
116
4,888
Working on adding multigrid pressure to help make the water less compressible so that it can go deeper.
4
8
112
10,384
So cool to see people building together
4
4
111
11,750
I'm getting pretty excited at the state of WebAssembly now. This is not a native app, but running on iOS Safari (screencap on the same phone, no special feature flags). My first multithread too! Separate rendering and audio workers, oscilloscope data via SharedArrayBuffer.
4
5
109
12,379
Just added support for rotated rectangles. Need to figure out how to add slider to give them a constant rotation speed. @tldraw
Replying to @tldraw
or some reason it showing "invisible box" when you rotate a rect, maybe you are taking wrong calculations. @kotsoft Here is the video. Also, lmk if I can contact you. I love fluid simulations.
2
3
109
8,747
A recap video of my journey from C++ gamedev to C++ webdev.
4
6
111
6,094
Moved loop control back to JavaScript which let's me integrate with other libraries like threejs or here, A-Frame, which has built-in gyro camera control and makes VR/XR a little more reachable.
2
7
105
10,460
Finally got the liquid collisions working!
3
5
104
5,559
Working on some voxel compression tech, real-time simulation, compression & decompression in WebAssembly.
3
6
104
5,047
Today I did an online multiplayer test using Parsec streaming! So awesome seeing total strangers play in my shared physics sandbox!
3
9
108
Here is a test with 2M particles.
3
5
118
5,546
Replying to @XBot448 @theskaks64
As a single developer who has not put out any previous console games, I am choosing to focus on the DirectX ecosystem, which supports XBox, PC and cloud. XBox being more powerful in compute is also a factor. Maybe in the future if I have time I can port to other platforms.
3
16
86
Bay
3
5
95
5,381
Dune 2 at home
8
5
98
11,874
Started working on GPU version of simulator. 50.3M particles at 4FPS on RTX 3080. Can probably improve with async compute and particle sorting.
5
2
99
Started working on the voxel marcher
3
7
100
6,196
Now you're thinking with portldraw. Right now the behavior is faked a bit but I had an idea this morning that if drain is connected to cloud it will transfer the material over and if the arrow has a color it will change the material to that.
1
1
95
4,760
Testing out water simulation on the Steam deck.
1
3
97
9,618
Simulation running on my phone (150K particles). At the moment only needs WebGL2. Will add a joystick to move around. Also working to set up something multiplayer with PartyKit. Demo: grantkot.com/lc
6
4
89
5,629
The voxels are now synchronized.
6
4
84
6,140
A test for X compression. I will try to put my mesh shader demo from a few years ago on itchio soon.
2
4
86
13,556
Real-time sparse adaptive liquid simulation. Fixed some bugs/glitches, enabled Resizable BAR, and now it works so well! No visual popping at all.
5
11
84
5,640
Another adaptive resolution simulation test. This time using y-coordinate to determine LOD. Particles at bottom of container are much larger and sparser. Can simulate much deeper water than if I used the same resolution throughout.
4
5
77
Millions of particles, realtime fluid simulation on a handheld.
1
5
83
6,198
I finally have something showing my material groups! Clear & opaque liquid, and then elastic and granular. And also the structured particle system which allows for constraints between particles. I will also support different material properties in each material group.
3
9
79
7,157
Another demo of my sandbox running on Steam Deck. This time added some transparency to the water.
3
6
77
7,976
This demo can now be found at grantkot.com/ll
8
7
76
5,351
Yesterday I made my first multiplayer experience with the help of PartyKit. Here are some of my favorite moments.
8
4
72
12,223
Wave barrier testing
6
3
66
4,711