The nebula in the video looks really good. I don´t know how exactly they do it. Probably there also are shaders involved but I think with something like that and a good cloud sprite you can achieve quite good results too:

Code:
VECTOR temp;
var box_size = 2000;

void cloud()
{
	set(my, TRANSLUCENT);
	my.roll = 0.001;
	vec_scale(my.scale_x, random(3)+0.5);

	VECTOR velocity;
	vec_set(velocity, vector(random(2)-1, random(2)-1, random(2)-1));
	
	while(1)
	{
		vec_add(my.x, vector(velocity.x * time_step, velocity.y * time_step, velocity.z * time_step));
		
		// move with camera
		my.x = cycle(my.x, camera.x - box_size, camera.x + box_size);
		my.y = cycle(my.y, camera.y - box_size, camera.y + box_size);
		my.z = cycle(my.z, camera.z - box_size, camera.z + box_size);
		
		// smooth alpha fade
		vec_set(temp, my.x);
		vec_sub(temp, camera.x);
		vec_rotateback(temp, camera.pan);
		
		my.alpha = 100;
		if(temp.x < 100 + camera.clip_near)
		{
			my.alpha = maxv(0, temp.x - camera.clip_near);
		}
		else if(temp.x > box_size - 1000)
		{
			my.alpha = 100 - (temp.x - 1000) / 10;
		}
		
		wait(1);
	}	
}

void main()
{
	video_mode = 9;
	level_load("");

	var i;
	for(i=0; i<1000; i++)
		ent_create("cloud.tga",
			vector(random(box_size*2)-box_size, random(box_size*2)-box_size, random(box_size*2)-box_size), cloud);	
}