Tuesday 14 June 2016

What exactly is "Slow Motion"?


Slow motion. Something which amazes people.

Like this:





Except that it's not slow. This is made at 24fps and has 96 frames (4 seconds)

If we want to make it 8 seconds, we do some maths:

FPS    TIME

 24        4s
 12        8s (x2)


That means that we lose frames as we now have a 12fps video that is 8 seconds long. What do we do?

We double the fps back to 24fps. But how? In the real world, we would use a slow motion camera capable of recording over 24fps. So that when we stretch it out, instead of having 12fps, the frames we don't normally see fill in the gaps, bringing it back to 24fps.

So, if we shot at 2400fps and playback at 24fps, we get a 4 second video.

But, if we expand it out to get all 2400fps, we would get a (2400fps / 24fps = 100) times longer video, resulting in a 400 second (6.666 minute) video.

This is similar for even higher values, like 96fps or something insane like 24 * 1010


We just stretch out the video, and it goes back down to 24fps while increasing in length.

(Simple rate calculations, innit?)

So here's the previous video shot at 120 fps (Dammit blender you don't let me go at 2400fps)



Oh yeah thanks to SheepIt Render Farm for helping me push this video in just 5 minutes, instead of a whole night...

Friday 27 May 2016

Tutorial: How to create gradients with voronoi textures.

Recently, I created this image:


This is an image that uses a voronoi texture, and has a blue gradient overlaied over it.

Normally, mixing a voronoi texture with a gradient would not produce this. Here, I will show you how to make this.
 
First, add a plane to your scene. Scale it to fit the camera size. Then, UV unwrap it. (Apply the scale)

Now, add a material, and go to the node editor. Set it up like this:



Set the colours on the 2 colour ramps to be identical. Now, select the plane and enter edit mode. Subdivide the surface a few times, I would choose 100, but it depends on your plane's size.

Next, add a displace modifier. For the texture, set it to a new texture, and configure it as so:


Because the plane still looks so plain, lets change it up. Enter the Image Editor, and unlink any image loaded. Also, make sure you are in edit mode in the plane.

Now, select everything and rotate, scale and move it any way you want. You can view live updates in the viewport by going to the object tab and entering Shift + Z (Rendered viewport mode)

When you're done, add lamps, or set the world background colour to pure white.

You should be finished!

Here is what I have done in this tutorial, but with a bit of tweaking:


Thursday 26 May 2016

How to rotate HRDIs using a sky texture

Ever used HDRIs and then realised that to rotate it to fit your camera, you needed to a whole complex mapping node?


Well, this can easily be solved by using a sky texture. This works based on the fact that in Blender, Colours can be converted into Vectors simply by plugging one into another. This means that if you take the UV (Example) from the texture coordinate and put it into the colour input of a shader, you get colours:





This was simple enough to do:


So, by using a Sky Texture, and setting the type to "Preetham":


So, here is your completed node setup:


Notice that it is in the world tab, not the materials tab.

Sunday 22 May 2016

How to create invisible lamps in blender cycles

When you use Blender Internal, you usually use lamps to light up your scene. However, in Cycles, this is not the case. You have to use a plane, and add an emission shader on it. However, this can look ugly in reflections, such as mirrors.

Take a look at these two images:

 You can see that there is an ugly lamp behind, from the mirror's reflection.

Here, you can see that there is no lamp, the sky is black, but there is still lighting.

Here's the node setup for the invisible lamp.




There you have it!

Monday 9 May 2016

How to make 360° videos using Blender


Take a look at this video:

















This is a 360 video, using youtube's latest thing called snoopavision.

360 videos are not new, but youtube supporting is is new.

Here's how to create one yourself in blender.

In blender, you should setup your scene first.

Here's mine:



Do note that 4k resolution is the best for 360 videos, as the final video will zoom in on each frame, and a 1080s video might be blurry. 4k resolution is 3840px *  2160px.

Then, if you render it, you get a normal image:
















However, this will not give us a 360 video. What we are looking for is an equirectangular image.

To do this, select the active camera, and change the lens type to 'Panoramic'. You also want to change the type box to equirectangular




















That's it. You're done. Except that youtube does not detect 360 videos automatically. In order to do so, follow this steps:

Before you render, you should change your output settings to this:




















This is because the spatialmedia program seems to only accept mp4 and mov videos, so we have to set it to mp4 output as blender doesn't support mov videos.

Visit the youtube 360 upload guide, and go to step 2. Download the 360 degree program. Here, I will use the python script. If you use the GUI for windows or mac, you can follow the steps there.

After I added an alias for the command, I can now run the command. 





















The most basic will be to use the -i flag. This will inject the 360 video metadata, so that youtube can detect that it's a 360 video.


So the command would be something like 

  spatialmedia -i input.mp4 output.mp4

And you're done.

Upload the output file to youtube, and enjoy the wonders of technology.