Any dead cell with exactly three live neighbours becomes a live cell. Any live cell with more than three live neighbours dies. Any live cell with fewer than two live neighbours dies. Time flows at discrete intervals, according to these simple rules: It is based on a grid, with each cell either “dead” or “alive”. The most famous cellular automaton is Game of Life, developed by John Conway in 1970. Something similar happens to cell and bacteria, which change their behaviours according to their surrounding, which they cannot usually alter. The concept behind them is that the state of each pixel (or cell) only depends on the state of the neighbour pixels. Luckily enough, there is a very interesting class of problems that fit this definition. The term cellular automaton refers to a specific class of simulations which are loosely inspired by biological processes. Cellular automata are grid-based techniques which can be described very well with textures. If we want to use shaders for simulation, it is imperative to find a problem that lend itself perfectly to these limitations. This forces to write all the equations of our simulation in an explicit form, which might not always be feasible or effective. Working with shaders is a little bit like having a for loop that allows you to only edit the current item. The first of most obvious is the fact that you cannot alter any other pixel but the one you’re currently iterating onto. If you have seen the tutorial on How to Simulate Smoke with Shaders, you are probably familiar with the limitations that using shaders introduce in the context of simulations.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |