Using plane textures for trees, people, etc.. in still rendering

From Blender for Architecture
Revision as of 19:46, 5 November 2006 by Eon (Talk | contribs) (Deal with many 2D planes : a forest)

Jump to: navigation, search

Most of the time, pixel images are more suitable to represent people, cars, trees, etc... than 3D model. If these are not the main subject of your render, it often doesn't worth to model a precise 3D object. Moreover, it's very hard to make human or tree models realistics. In addition, they require a huge modelling which increase a lot rendering times and memory consumption.

So, there is a trick to use plane pixel images to fake 3D model in your render. In fact, we will use a cut out image and use it as texture on a plane facing the camera. The result will be the same as a postproduction in Gimp. The advantage to use this trick in Blender rather postprodction is less time consumption because wherever you move you camera, images will always face you, cast shadow on your 3D model and be cutted by a 3D foreground. However, if you use a tree picture shooted from an human height(~1.7m), you cannot use it to render a "from the sky view" of your model.

Prepare your texture

This is quite a hardwork here. You could find on the web libraries of these cut out pictures of trees and people to skip this part.

Otherwise, take a digicam and shot around you. Prefer to zoom max to avoid perspective effect. Especially for people, make sure feet are horizontal on pictures. Cut out the subject in your favorite image software (Gimp, Photoshop). The best technique is to use masks to have blurred transition between plains and holes. Once it's done save your picture in PNG for example to keep and alpha layer.


Tree cut out picture in PNG

Create your tree in Blender

To make it easier, this a Blender start scene where your tree could grow in serenity. (A green grass plane with a sunlight and a blue sky :)

Tree scene-01.jpg

Blend file of the start scene

First, create a vertical plane object in the center of your grass plot.

Create a new material for this plane object in the shading panel (F5). Create a new texture for this material, choose "bitmap" as type and load your tree picture. Tick "UseAlpha" and the "Alpha" button near the preview to see transparency.

Tree scene-02.png

Go back to the material panel. Tick Ztransp, Shadeless, put Alpha slider to 0. Tick Alpha in the "Map To" tab. That's it for the material.

Tree scene-02b.png

Plane dimensions should be the same ratio as the texture size. For example if your texture is 500x1000px, your plane could be 2.5x5 blender unit. In our example, the texture size is 477x664px so : select the plane object, press "N" and set the dimensions as follow.

Tree scene-02c.png

This also means that our tree is 6.64 units tall. That's a bit small for that kind of tree. We can resize it by the pressing the "S" button and moving until we get 8 units tall. Ratio will be preserved ;-).

Move the plane until the base just reach the ground.

Start a render.

Tree scene-02d.jpg

Blend file of the scene

Tips: If you don't see the tree transparent shadow on the ground, tick the TraShadow button of the ground material (not the tree material).

Deal with many 2D planes : a forest

This a good start, not to say the basis. But one tree is something, a forest is another one. We must be careful using 2D objects. First, 2D have to be always facing the camera. Second, their shadows must fit with you main shadow lamp. Third, you must be able to duplicate your 2D objects (in our case, trees) to spread them among you scene.

I have UVmapped the plane to see our tree in the 3D view so you can understand what happen easily. (Uvmapping is another topic not explained here)

Downlad the .blend source file

Face the camera

Select you tree object, press N and fill RotZ: to 0. Press CTRL-A to apply size and rotation. This was to fix correct rotation and size before constraint. Go to Object panel (F4) and add a "Copy rotation" constraint. Fill the target object name with the camera name. Switch off X and Y, keep Z. Ok, so the tree will follow the camera rotation to always face it.

Tree scene-03.png

Shadow face the main lamp

Another issue is that if you tree face your camera but not the lamp, you will get a tiny shadow or weak shadow. If it were a real 3D tree, would have been always the same and in the same direction.

Therefore, we need to separate the tre image from the shadow. (WIP)

You can now duplicate (ALt-D to duplicate link) your tree around the camera to create a forest :D.

Tree scene-03b.png

Tree scene-03c.jpg

Downlad the .blend source file