Esempio n. 1
0
    //--------------------------------------------------------------
    public MSAFluidSolver setup(MSAFluidSolver f)
    {
        deleteFluidSolver();
        _fluidSolver = f;
        allocatePixels();

        return(_fluidSolver);
    }
Esempio n. 2
0
    //--------------------------------------------------------------
    public MSAFluidSolver setup(int NX, int NY)
    {
        deleteFluidSolver();
        _fluidSolver = new MSAFluidSolver();
        _fluidSolver.setup(NX, NY);
        allocatePixels();

        return(_fluidSolver);
    }
Esempio n. 3
0
 //--------------------------------------------------------------
 void deleteFluidSolver()
 {
     //	Debug.Log("deleteFluidSolver()\n");
     if (_fluidSolver != null && _didICreateTheFluid)
     {
         _fluidSolver = null;
         _pixels      = null;
     }
 }
Esempio n. 4
0
    bool _didICreateTheFluid;                                   // TODO: replace with shared pointer

    //--------------------------------------------------------------
    public MSAFluidDrawer()
    {
        _pixels             = null;
        _fluidSolver        = null;
        _didICreateTheFluid = false;

        enabled         = true;
        brightness      = 1;
        doInvert        = false;
        velDrawMult     = 1;
        vectorSkipCount = 0;

        enableAlpha(false);

        setDrawMode(DrawMode.kDrawColor);
    }
Esempio n. 5
0
    void Start()
    {
        fluidSolver = new MSAFluidSolver();
        fluidDrawer = new MSAFluidDrawer();

        colorMult   = 2f;
        fluidCellsX = 80;

        fluidSolver.setup(fluidCellsX, fluidCellsX);
        fluidSolver.enableRGB(true).setFadeSpeed(0.003f).setDeltaT(0.5f).setVisc(0.0001f);
        fluidDrawer.setup(fluidSolver);

        texture = new Texture2D(fluidCellsX, fluidCellsX);
        GetComponent <Renderer>().material.mainTexture = texture;

        currColor     = ColorFromHSV(Rand.randFloat() * 360f, 0.75f, 0.75f);
        ps.startColor = currColor;
    }