Jump to content
Sign in to follow this  
MilitiaSniper

Low Ground Fog or Mist

Recommended Posts

Is there a way to make fog or mist low to the ground.

Like in horror movies, in a mission?

Sincerely, MilitiaSniper

Share this post


Link to post
Share on other sites

You can create "low" smoke (not exactly like fog) using almost transparent drops. Check drop command and examples.

Share this post


Link to post
Share on other sites
Check drop command and examples.

Huh..?

Sincerely, MilitiaSniper

Yes, you may use a script using OFP "drop" command to create low gravity particles (similar in shape to smoke ones), you may create them at any height, any size, any color and transparency. Look for "drop" command tutorials and examples, starting here:

OFPEC tutorials

Basically, each drop command creates a particle, and the particle will be "alive" for the indicated amount of time. You may even give it an initial speed (moving fog), direction and friction factor with the surrounding air.

You may check for already done "dust" or "sand storms" scripts and modify them to get your low level fog/mist effect.

Share this post


Link to post
Share on other sites

Here's a simple example that fills a rectangular area with fog, save as mist.sqs in mission directory:

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">; parameters:

; [object, northend, eastend, interval, size, height, lifetime]

;

; for example place a game logic on the SW corner of a map and on it's init line have:

; [this, 12800, 12800, 100, 240, -60, 3600] exec "mist.sqs"

;

; that would create 12.8km x 12.8km of mist with the gl in the relative SW corner

; of the area with the mist particles size 240 placed on 100 meter intervals

; and it would live an hour (3600s). mist will fade away linearly during the

; last half of it's lifetime

;

; for best results place gl on water level and DON'T use John's smoke and fire

; textures or if you do change the particle type to cl_water

;

; WARNING: extreme values will cause BSODs, CTDs and horrendous "lagging"

_obj = _this select 0

_north = abs (_this select 1)

_east = abs (_this select 2)

_interval = abs (_this select 3)

_size = _this select 4

_height = _this select 5

_lifetime = _this select 6

_ix = 0

_iy = 0

_iz = _height

_rnd = _interval

?_interval == 0 : hint "error, interval can't be 0"; exit;

while "_iy < _north" do{_ix = 0;while "_ix < _east" do {drop ["cl_basic", "", "Billboard", 5, _lifetime, [(_ix+(random _rnd)), (_iy+(random _rnd)), _iz], [0, 0, 0], 0, 1.275, 1, 0, [_size],[[1,1,1,0.3],[1,1,1,0.3],[1,1,1,0]],[0],0,0,"","",_obj]; _ix = _ix + _interval;};_iy = _iy + _interval;};

exit

that while-loop-thingy must not have line changes so fix it if it breaks with copy-paste.

And yes of course it would be better to create the fog dynamically only around the player to save resources.

Here's how it looks with the proposed settings:

http://youtube.com/watch?v=8JG7LN0M2YQ

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×