How to create boiled effect on water?

Hi all,



How to create boiled effect on water? It look like you are boiling chocolate!



Anybody can help me!

The easiest way would probably to do it in blender and then import the animation. You could try to do it with particle systems in jme but it probably won't look as good as if you did it in blender.

Boiling water? Hmm… I think Molten Lava would look ok with particles though?

For those of us that don't care enough to actually plug the code in, we need a screenshot.  :stuck_out_tongue:

here, here

i improved quakedeus code a bit (removed some unnecessary code, and set the zBufferState to non-writable.



i guess with a bit imagination it looks like bubbles from boiling water :slight_smile:


import java.net.URISyntaxException;

import com.jme.app.SimpleGame;
import com.jme.image.Texture;
import com.jme.math.Ring;
import com.jme.math.Vector3f;
import com.jme.renderer.ColorRGBA;
import com.jme.scene.state.AlphaState;
import com.jme.scene.state.TextureState;
import com.jme.scene.state.ZBufferState;
import com.jme.util.TextureManager;
import com.jme.util.resource.ResourceLocatorTool;
import com.jme.util.resource.SimpleResourceLocator;
import com.jmex.effects.particles.ParticleFactory;
import com.jmex.effects.particles.ParticleMesh;


public class Boiling extends SimpleGame {
    private ParticleMesh particles;

    public static void main(String[] args) {
        Boiling app = new Boiling();
        app.setDialogBehaviour(ALWAYS_SHOW_PROPS_DIALOG);
        app.start();
    }

    protected void simpleInitGame() {
        display.setTitle("Flame Particle Test Alone");

        // AlphaState for the Particles
        AlphaState as = display.getRenderer().createAlphaState();
        as.setBlendEnabled(true);
        as.setSrcFunction(AlphaState.SB_SRC_ALPHA);
        as.setDstFunction(AlphaState.DB_ONE);
        as.setTestFunction(AlphaState.TF_GREATER);
        as.setEnabled(true);
        as.setTestEnabled(true);

        // non-writable ZBufferState for the Particles
        ZBufferState zs = display.getRenderer().createZBufferState();
        zs.setEnabled(true);
        zs.setWritable(false);
       
        // emitter geometry
        Ring disk = new Ring(new Vector3f(0,0,0), new Vector3f(0,1,0), 1, 5);
       
        // the particles
        particles = ParticleFactory.buildParticles("particles", 350, ParticleMesh.ET_POINT);
        particles.setControlFlow(true);
        particles.setGeometry(disk);
        particles.setInitialVelocity(.01f);
        particles.setEmissionDirection(new Vector3f(0, 3, -1));
        particles.setMinimumAngle(0.0f);
        particles.setMaximumAngle(0.210943952f);
        particles.setMinimumLifeTime(200);
        particles.setMaximumLifeTime(1000);
        particles.setStartColor(new ColorRGBA(1, 1, 1, 1));
        particles.setEndColor(new ColorRGBA(1, 1, 1, 0));
        particles.setStartSize(0.7f);
        particles.setEndSize(.01f);
        particles.setReleaseVariance(.4f);

        try {
            ResourceLocatorTool.addResourceLocator(ResourceLocatorTool.TYPE_TEXTURE,
                    new SimpleResourceLocator(getClass().getClassLoader().getResource("jmetest/data/texture/")));
        } catch (URISyntaxException e1) {
            e1.printStackTrace();
            System.exit(-1);
        }

        TextureState ts = display.getRenderer().createTextureState();
        ts.setTexture(TextureManager.loadTexture("bubble.jpg", Texture.EM_SPHERE, Texture.EM_SPHERE));
        ts.setEnabled(true);

        particles.setRenderState(ts);
        particles.setRenderState(as);
        particles.setRenderState(zs);
        particles.updateRenderState();
        rootNode.attachChild(particles);
        rootNode.updateRenderState();
    }
}





I plugged in your code Core-Dump and it looks pretty good.

basixs said:

here, here


The term is "hear, hear".

Thanks for the grammar lesson…









Edited: removed snide comments.

Ummm, it seems like he said that just for the sake of being a snot; not out of common courtesy to help. Thats why…





But I am probably just being overly sensitive…





Being an jerk just for the sake of being a jerk has always been one of my peeves, sure we all have bad days and aren't the happiest of critters at times.  But that doesn't mean we should be petty and poke at our fellow human beings just because it gives some a sense of happiness.  This is one of the biggest reasons I love this forum (regardless of jME itself)  the jerk quota is definitely on the low side :slight_smile:

I really don't see the need to be that upset about language/grammar correction?

basixs said:

Being an jerk...


It should be, "Being a jerk...".  :P

ugh, not you too froggy.  :wink:

well… it used to read being an A*^^hole :stuck_out_tongue:





… … … … … … … … … … … … … …|… … … … … … … … …,-~~~-,-,

… … … … … … … … … … … … … …|… … … ,—,… …,-~",-":__-,: : :"-,:::"'~,

.,-~~–, … … … … … … … … … … …|… … ,~": : --,:"~,-"::::/:,-". . ."'~-,: ,::::
,"~-,

/: : : : : : :"'~-,… … … … … … … … … |… … /: : : : :~"',: ::__/:-|o–,. . . . .,:

renanse said:

ugh, not you too froggy.  ;)


I just thought the quote I was correcting provided a bit of irony coming from me.  :D

Core-Dump, thanks to your code improvements I was able to make a little progress on my flaming brazier scene. Thank you. And as requested elsewhere, a screen capture:


cool, that looks pretty nice :slight_smile:

thanks for all,



Very impressive!