Jump to content

  • Log In with Google      Sign In   
  • Create Account

nullie

Member Since 21 Aug 2012
Offline Last Active Sep 13 2016 06:05 PM

Posts I've Made

In Topic: What are some ways to efficiently and quickly code a spreading object?

13 September 2016 - 06:10 PM

@lawnjelly the graphics calculations aren't a concern at all. The intensive bit is the mixing and equalizing of data between cells. It's called about twice per second. (it is a 'passive' fluid simulation for a game, though typically gasses as opposed to liquids.)


@norman barrows:

Yes, i know what it is. I'm just not sure how to quickly and efficiently do it on a potentially large scale.

I've explained that it's for fluid simulation, typically of gasses. Here is an example of what you might see:
 

21 moles of oxygen, 80 moles of nitrogen, at 20 degrees celsius in 'group A'

100 moles of carbon dioxide, at 1000 degrees celsius, in 'group B'

Not only are we spreading the molar count evenly between the tiles, but also the temperature (which affects the pressure of the fluid, and thus the rate at which it disperses)


In Topic: What are some ways to efficiently and quickly code a spreading object?

12 September 2016 - 10:42 AM

AH! Maybe a better idea:

aWqWNFz.gif

 

Keep the spreading logic, but not only superconduct a small amount with your own inactive cells, but with the other inactive cells as well.

vMNWeSi.gif


In Topic: What are some ways to efficiently and quickly code a spreading object?

12 September 2016 - 09:37 AM

there are about a million cells, though only a relatively tiny amount of those are typically 'active' at any given time (1000-10000) Each cell is able to store a LOT of data (specifically, there are at least 150 different variables which need to be 'equalized' between cells)

By more accurate, i mean stuff like:

A X X X X X X X X B 

Where X is the active group, it instantly teleports the contents of A to B, and vice versa, without any care as to the distance that they actually are. A and B could be extremely different cells, and could be extremely far away from eachother as well. So the 'superconductive' inactive cells are fine for small groups, but in larger or more extreme groups it can be a lot more jarring.

The 'most' accurate method would be to calculate everything on a cell-by-cell basis, but that seems both slow for the purpose of equalizing things, as well as intensive.

Another concern is that i don't necessarily want things to equalize instantly. IE If the values are:

9, 9, 9, 9, 9, 5

I want it to become: 9, 9, 9, 9, 6| 9, 9, 9, 9, 7| 9, 9, 9, 9, 8| 8, 8, 8, 8, 8| Or something similar. (rounded estimated numbers for laziness)

so again, the ideal for accuracy would be:

5, 7, 7, 7, 9 | 6, 6, 7, 8, 8 | 6, 6.5, 7, 7.5, 8 | 6.5, 7, 7, 7, 7.5 | 7, 7, 7, 7, 7

Where it does not equalize instantly through itself. But this is intensive and slow, and can potentially be redundantly recursive if they are only operating on a cell by cell basis.



How i'm currently handling it, is to only superconduct a small fraction of the delta through the inactive group at a time. 

r9tzkxP.gif


In Topic: 2.5D Dynamic LOD Voxel Renderer

29 January 2015 - 02:12 PM

I've seen the euclidean thing, And as far as i can tell, It doesnt really support dynamic lighting.

I dont neccessarily need the engine to run in real-time, but closer to something like a beefed up blender "cycles"

As well, a huge part of this is expected to be working on the hardware side, as well as the soft side.


In Topic: 2.5D Dynamic LOD Voxel Renderer

29 January 2015 - 01:54 PM


My problem with LOD is that always BDRF comes to my mind. And then I want global illumination ... 
See how much RAM you have, assume an octree and then assuming your low res on screen the player has to move very close to anything to see your voxels..

 

I don't understand this. What is BDRF? 

I expect that to fully realise this idea, it'll be required to have a "super-computer" built designed to specialize in running the engine (renderer, and other)

 


Modelling worlds and rendering them nicely is all about trickery and "faking it"

 

A lot of the world-modelling is hoped to be highly dependent on proc. gen., dealing with each independent brick, tree, leaf, etc.

 


PARTNERS