r/Simulated Sep 22 '18

Meta What is a simulation? A detailed comparison between Animation, and Simulation.

980 Upvotes

Ever since this subreddit started getting more traction, more and more people began posting non-simulation videos. In each of these posts, users will comment something along the lines of "This is not a simulation," and an argument would ensue. So I am writing this post to, hopefully, end this never-ending cycle. I hope the mods do not remove this post, because I think it could end much of the hostility in the comments around here. Perhaps this could even be a stickied post, so all new users see it.

What is a simulation?

According to the dictionary, the word simulation is defined as, "imitation of a situation or process." However, this definition does not actually constitute what a simulation is in the world of CGI. In CGI, simulations are essentially visualizations of real-world processes that are generated using mathematical models. That is to say, the final product of a simulation is something that was created using fundamental rules of nature or some system, such as Newton's Laws of Motion, Fluid Dynamics, or various other mathematical models. In a simulation, it is often the case that each frame was created by manipulating information from the previous frame.

How are simulations different from animations?

It's quite common for animations and simulations to coexist in one medium. There are plenty of simulated components in animated movies, such as Disney's Frozen (Snow simulation), and Hotel Transylvania 2 (Cloth simulation). However, simulations and animations individually are very different by nature. As previously stated, simulations try to model real-world processes, and use mathematical models to generate necessary data. Animations, on the other hand, are usually created through a manual process. Animators manually keyframe the attributes (position, rotation, scale, etc.) of objects in a 3D scene. It's possible for manual animations to look convincing, but that does not make them simulations.

The "Ray tracing)" argument.

Many 3D rendering engines use a process called "ray tracing" to create images of a 3D scene. For anyone who is unfamiliar with ray tracing, here is the definition from Wikipedia:

In computer graphics, ray tracing is a rendering) technique for generating an image by tracing the path of light as pixels in an image plane and simulating the effects of its encounters with virtual objects.

Because of this definition, many people argue that any 3D render is a simulation, so long as it was rendered using ray tracing. By definition, it is true that the process of ray tracing is a simulation. However, this argument is very silly because the entire purpose of the term "simulation" in CGI is to make a distinction between what is manually created, and what is created using the previously talked about mathematical models. Therefore, when we discuss simulated graphics, ray tracing is not considered a simulated process.

Examples of animated (non-simulated) posts:

  1. "Satisfying simulations" - 3.4k upvotes
  2. "Bender's old job" - 2.2k upvotes
  3. "Up or Down?" - 1.4k upvotes
  4. "Adobe Dimention Rendering" - 1.4k upvotes
  5. "Depression - Robert Ek"

Many of these animated posts accumulate upvotes, and sometimes they stick around for a few days before getting removed. Because of this, new users who see these posts get a false idea of what a simulation actually is. Hopefully this post was informative to any newcomers. If you would like to suggest edits, please comment.


r/Simulated 1d ago

Proprietary Software [OC] Arrival Logograms, on a target-driven fluid sim. Real time on the GPU

Enable HLS to view with audio, or disable this notification

580 Upvotes

As a follow up from a comment on https://www.reddit.com/r/Simulated/comments/1w4d85s/comment/p78ugx4/?screen_view_count=2&ext-referrer=DIRECT, I had fun with this one.

The fog is a fluid sim, and the logogram is a phenomenon on top of. Ink is emitted along the glyph's stroke by a travelling pen that the fluid carries, and a target-driving force pulls the density toward the finished glyph without ever snapping it there (Fattal and Lischinski's 2004). It is reacting to whatever music is playing while you watch.

Built in Swift and Metal as part of TideGlass, a small Mac app I make where worlds like this run on a second monitor while you work. Happy to answer anything about the sim.


r/Simulated 1d ago

Interactive Changing of particle density in realtime simulation

Enable HLS to view with audio, or disable this notification

357 Upvotes

Finally found time to implement it. Footage from our multiplayer sandbox game called BFS. The simulation is deterministic for multiplayer to work


r/Simulated 17h ago

Research Simulation Here is a web-based life simulation (evolution) lab.

5 Upvotes

Morphogenesis, an webbased "tribute" to Biogenesis

is online play-able and the html code is opensource and free to download.

Online play:
https://html-preview.github.io/?url=https://github.com/rijt/Morphogenesis/blob/main/morphogenesis.html

Source:
https://github.com/rijt/Morphogenesis


r/Simulated 1d ago

Blender Sea Water Simulation in Blender

Enable HLS to view with audio, or disable this notification

166 Upvotes

r/Simulated 1d ago

Houdini Houdini perfume splash flip fluid simulation

Enable HLS to view with audio, or disable this notification

5 Upvotes

r/Simulated 1d ago

Research Simulation Here is a short timelapse of HêzFX!

Enable HLS to view with audio, or disable this notification

49 Upvotes

This is my muscle simulation plugin, developed to produce highly accurate character and creature deformations based on real physics and material properties. The solver is FEM-based to maximize simulation quality, although I might keep the XPBD solver for faster iteration during scene authoring.

In this demo, you can see how simple the workflow is: you paint attachments, material stiffness, muscle fibers, etc., feed that data into the solver, and then... you have a physics-based simulation of your creature. This is just the muscle simulation part of the tool. I’ll also share the process for fascia and fat simulations, showing how skin sliding and muscle bulging beneath the skin can bring your creatures to life!

The name HêzFX comes from Kurdish: Hêz means strength and force.


r/Simulated 1d ago

Blender Hollow-Face Illusion Visual Cognition Sandbox

Thumbnail
bionichaos.com
0 Upvotes

r/Simulated 2d ago

EmberGen flamethrower vs shack

Enable HLS to view with audio, or disable this notification

611 Upvotes

r/Simulated 1d ago

Proprietary Software Various experiments from the deformable physics sandbox I've been building in C++

5 Upvotes

Hi everyone! I've been working on ProtoBall, an experimental physics sandbox where you can build structures and machines, run simulations, crash things together, and watch them deform and fail.

The project is built from the ground up in C++, without a commercial game engine. It combines Bullet rigid-body physics with my own real-time explicit solver for deformable truss structures.

The current public demo includes plastic deformation, ropes, wheels, breakable joints, ragdolls, slow motion and simulation playback.

I've also already implemented fracture for the deformable structures, allowing individual trusses to break under sufficiently high loads. This will be included in the next public release and opens up a lot of possibilities for structural destruction and failure experiments.

There's also an active ragdoll balance controller, while color-coded feedback shows where structures deform and yield. A real-time Energy Balance tracks how energy moves between potential, kinetic and elastic forms, and how it is dissipated through friction, plastic deformation and structural failure.

So far I've been using ProtoBall to build experiments such as vehicle crashes, a trebuchet and ragdoll impacts. I'm currently working on more machines and structural destruction experiments.

I released the first public demo yesterday. The editor is still at a very early stage, but it's already available for building your own experiments. The current demo includes a vehicle crash experiment and a trebuchet that can launch a ragdoll, together with plastic deformation, ropes, wheels, breakable joints and ragdoll joint detachment. It also includes slow motion and simulation playback, so you can inspect the results of impacts and structural failures in more detail.

If you're interested in trying it or seeing more simulations:

Playable demo (Windows/Linux):
https://protoball.itch.io/protoball

More simulation videos:
https://www.youtube.com/@ProtoBallDev

Project website:
https://protoballdev.github.io/protoball-site/

I'm developing ProtoBall as a solo project and plan to keep releasing small updates with new machines, experiments and simulation capabilities.

I'd be very interested in feedback from people working with or interested in physics simulation.

https://reddit.com/link/1w5nbe8/video/g45l3x89b6nh1/player


r/Simulated 2d ago

Research Simulation I rebuilt my traffic simulation on a straight motorway because of the feedback on the loop version

Enable HLS to view with audio, or disable this notification

234 Upvotes

A while ago I posted a version of this on a circular track. Two things came up in the comments often enough that I decided to rebuild the whole thing.

The first was the loop itself. Several people said it was distracting, and that it was hard to tell whether a jam was really moving backwards or whether the track was just going round. The second was lane closures - a few of you asked what would happen if one lane were blocked. So this time the road is straight, it has four lanes and one of the cases is a closed lane with the merge that follows it.

In the phantom-jam case there is no accident and no obstacle at all. The density is simply high enough that one driver braking a little harder than necessary gets amplified by the cars behind, and the wave then travels backwards along the road while every individual car keeps moving forwards.

There is one comment from last time that I want to answer. Someone wrote that the narration read like AI slop. That is fair. English is not my first language, so I use AI assistance for the wording. The simulation, model and idea are my own work, the phrasing had help. I am trying to get better at that part.

I should also be clear that there is no income expectation in this. The channel is not monetised and I am not expecting it to be. I am doing it as a hobby, to learn how simulation and visualisation actually work, so that I can use them properly in my own field. Youtube is simply where the files are stored.

The full version, with the other cases and a proper explanation, is here:

https://www.youtube.com/watch?v=msX3kewLRIQ

What you see here is the short version. The full one works through the cases I had to leave out. It covers where the tipping point actually sits, which is the density above which the road stops recovering from a disturbance, why the lane next to you nearly always looks faster than the one you are in, what a small proportion of slow trucks does to the flow behind them, what tailgating costs you compared with keeping your distance, which was not the result I expected, and what changes when roughly one car in five drives itself. It ends with the few things a driver can actually do to avoid making a jam worse.


r/Simulated 2d ago

EmberGen EmberGen 2 Physically Based Combustion R&D

Enable HLS to view with audio, or disable this notification

38 Upvotes

Here's a quick look at a sped up viewport capture of our upcoming release: EmberGen 2. In reality we were getting between 3-5 FPS for the large simulation on an RTX 6000. Sparse bounding box contained roughly 1.681 billion voxels with 364.5 million being active. We're still working on modelling physically based soot & oxygen for our new combustion simulations, so this is a work in progress. We're aiming to use real-world values to have fire, smoke, and explosions that simply look photorealistic!


r/Simulated 2d ago

Proprietary Software [OC] 137,500 starlings, each one steering only by its neighbours.

Enable HLS to view with audio, or disable this notification

363 Upvotes

This runs live on an Apple silicon GPU.

Every bird reacts only to the ones near it. Nothing choreographs the shape and nothing is keyframed, so what you are watching falls out of 137,500 of them following local rules at once.

It is a GPU flock on an atomic spatial hash, which keeps neighbour lookups linear instead of quadratic at that count. Each bird steers on a bounded turn rate and banks into its turns, and the banking is what makes the flock flicker as they roll.

Based this on starling literature rather than plain boids, mostly Cavagna's work on scale-free correlations in real flocks and Couzin on spatial sorting. Cool thins is that the same system with one flag flipped runs a bait ball instead: change the attractor from polarised streaming to milling and the sheet becomes a rotating sphere.

Built in Swift and Metal as part of TideGlass, a small Mac app I make where worlds like this run on a second monitor while you work. Happy to answer anything about the sim.


r/Simulated 1d ago

Interactive Dynamic particle density change in voxel sandbox

1 Upvotes

Finally found time to implement it. The simulation is deterministic for multiplayer to work


r/Simulated 2d ago

Research Simulation Dynamic Lorenz System

Enable HLS to view with audio, or disable this notification

55 Upvotes

r/Simulated 2d ago

Proprietary Software Cell vivarium simulator

Thumbnail
youtu.be
1 Upvotes
A vivarium of cellular creatures — a real-time 3D simulation where every animal
is built one cell at a time, behaves according to what its body can actually
sense and do, and sings with a voice synthesised from its own genome.

r/Simulated 3d ago

Research Simulation Collisions and self-collisions have been implemented

Enable HLS to view with audio, or disable this notification

436 Upvotes

Along with other essential features for a proper muscle simulation tool. The good thing is that I’m using it as a character artist while developing it, which allows me to find the most artist-friendly workflows and implement them directly into th


r/Simulated 1d ago

Proprietary Software Building my first game, for me. Science based evolution simulator.

0 Upvotes

Hey all, I've just started building a game for myself, I don't believe it would have much commercial interest but it something that i've always wanted and now with LLM's i can build it and run it, Its a Evolution time compressed simulator, no it is definatly not a spawn clone.

Vita is an evolution game where you start as a very simple animal living more than 500 million years ago, long before fish, dinosaurs or anything we would recognise today. You don't choose what your creature evolves into, and there isn't a skill tree where you unlock eyes, jaws or legs because you've reached the right level.

Instead, you decide how your species tries to live, maybe it stays where food is plentiful. Maybe it moves into a different habitat. Maybe it becomes more active, more cautious, or changes how it uses the resources around it.

Then the world carries on.

Food can become scarce. Oxygen levels can change. Populations can grow too quickly and exhaust their resources. New variations can appear by chance. Some help, some make very little difference, and some disappear before they ever become important. Over many generations, the creatures that actually survive and reproduce shape what the species gradually becomes. So rather than playing evolution as a technology tree, you're effectively running your own little experiment in an ancient world.

There isn't a correct route through history. Your lineage might become something surprisingly successful, stay almost unchanged for millions of years, split into different populations, lose features it once had, or simply go extinct.

The basic idea is:

You decide how your species tries to survive. The world decides what happens. Evolution decides what it eventually becomes.

Its not graphical, I did want a rendered technical illustrations of the organism at each evolutionary pause but that would cost too much on api calls i think, I am using a local LLM for narration and scientific explanation, not for the actual gameplay that is all coded, LLM has nothing to do with the game world, that was a hard set rule.

I'm almost at a working prototype of the first of 4 starting organisms, its a bit of a science nerd out but its what i wanted.


r/Simulated 2d ago

Research Simulation Golden Gate Bridge vs. 4 MEGA Earthquakes! (using real seismic data, simulated in Blender 3D + bullet constraints builder by Kai Kostack for simulating virtual construction materials) [OC]

Thumbnail
youtu.be
0 Upvotes

r/Simulated 2d ago

Interactive Introducing a "Predator Module" to my Particle Physics Sandbox

Enable HLS to view with audio, or disable this notification

1 Upvotes

r/Simulated 2d ago

Redshift [OC] Between Mirrors — Haion

Thumbnail
youtube.com
0 Upvotes

An origami crane is flying in a mirror cube. The camera is a rear shot following the origami crane as it flies inside the cube.


r/Simulated 3d ago

Proprietary Software I flooded the Caspian. Global sea level dropped 7 cm

Enable HLS to view with audio, or disable this notification

6 Upvotes

1.5 years ago some friends and I were talking about global warming and got onto a question: if you could move any amount of dirt, how much could you lower global sea level?

I built a planet simulator to find out.

7 cm.

The move is to open the Caspian. It sits 28 m below sea level with a huge flat depression north of it. Cut a channel, the Atlantic pours in, the hole fills. About 25,000 km³ parked where it can't be ocean anymore. Stabilises in under a year, though that's really a function of how wide I cut the channel.

Then it stops. Evaporation off the new sea just rains back into the ocean. The only lasting change is the water sitting in the hole.

the mechanics:

Real bathymetry, 2048×1024 grid, about 20 km a cell. Every cell holds a water depth and the global total is conserved to 2 parts in 10,000 . Cut a channel and the solver just pours: fills each connected body from its deepest cell until volume and terrain balance, merges two bodies when they touch. The sea level drop isn't scripted anywhere. It falls out of the pour.Fill time is a weir calculation on the throat you dug such as cross-section and head.

Climate is energy-balance per latitude band with heat transport, so temperature comes out of the physics instead of a lookup table. Precipitation gets shaped by terrain and sea surface temperature, and that feeds evaporation minus precipitation per cell, plus river inflow weighted by catchment rainfall.


r/Simulated 2d ago

Proprietary Software The Persian Gulf was a river valley 17,000 years ago. Pearl divers still bring up fresh water from the seabed.

Enable HLS to view with audio, or disable this notification

0 Upvotes

The Gulf is pretty shallow, about 35 meters on average, and only 11.9 meters deep at the northwest end. During the last ice age the sea level was 120 meters lower, so the whole basin was completely dry. The exploration ship Meteor confirmed it: an entirely dry basin around 15,000 BC.The Tigris, the Euphrates and the Karun all met up and flowed the entire length of it as one single river, heading out through the Strait of Hormuz. That old channel is still there. You can see it clearly in the bathymetry.
it wasn’t empty. There was a floodplain down there with vegetation, wildlife, and Neolithic communities living on it.Then the ice melted. Sea level rose 150 meters between 12,000 and 7,000 BC, and at the fastest stretch the shoreline was advancing ten meters a year. They didn’t get washed away. They just got pushed out, one salty well at a time, over generations.Bahrain’s name is the dual form of the Arabic word for sea, meaning two seas. One reading of it is the salt water above and the fresh water below. Pearl divers have said for centuries that in certain spots you can flip a bucket on the seabed and bring it up full of fresh water. That’s the old river system still draining.The clip is that basin emptying, run in a planetary model I’ve been building. I used a different method. I closed the strait and let it evaporate instead of dropping global sea level, but the same floor comes back out and the river shows up right where it’s supposed to be.


r/Simulated 2d ago

Blender Simulating Extreme Earthquakes Hitting the Eiffel Tower

Thumbnail
youtu.be
0 Upvotes

r/Simulated 4d ago

Blender Packed vector flow

Enable HLS to view with audio, or disable this notification

166 Upvotes