Background Image Views Mismatch

Hello everyone,

I am new to the world of Blender and 3D models and I have started following the Blender Training Series.

In the beginning of modeling a character using box modeling, I have to set some background images on 3 different views (front, side, back) as reference. I have done that but I am facing a problem that prevents me from following the process properly.

What happens is, although the images have the same height (I mean the original files have the same height) when I put them into Blender the front and side view appear different. I scale both images to 1.000 and set the same Y offset so I can change between views and model, but the image on the side view appears “taller” than the other one. Naturally this means that the mesh I’m creating ends up on a different place so I can’t model correctly.

To make things more clear I am posting two images, one describing the problem from within Blender and another from Photoshop just to show that the images indeed have the same dimensions.



Thanks in advance and have a happy new year.

The image in front view is scaled to 0.86 and not 1

If you check the “Size” property, it’s set on 1.000 for both views. 0.86 is the Y offset.

Thanks for the reply.

I suspect the side image used in the tutorial is not the exact one supplied (in the tutorial the image file looks wider). All background images are loaded so they are 10 blender units wide (with a scale value of 5). If the image widths are different then the heights will be different when loaded into blender even if the image pixel heights are the same. Look at the image pixel widths and scale one accordingly in the background image settings to get the same height in blender

If the image widths are different then the heights will be different when loaded into blender even if the image pixel heights are the same.

Ah so that’s the reason i often observed this frankly bad Blender behaviour in 2.4x, 2.5x and now 2.6x
Just tested with 2 images that have the same height, but not the same width :

http://i.imgur.com/91h1Ls.jpg
Horrible, really horrible, if this is not a bug and is working as designed, and as the resizing through the Background Image menu is lacking of precision, because you’ll do it “by eye”, it’s frankly bad.

Will have to remember this for when i’ll use picture that are using the same height but different width, will have to rework them so every reference picture have exactly same height -and- width before having Blender screwing up with their display.

Just set the size of the image in proportion to the width you want: if one image is 1024 pixels wide and 512 high, and the other is 256 wide and 512 high, and you want them the same height, then set the size of the second one to one quarter the size of the first one.

Best wishes,
Matthew

The problem is not that, the 2 images in the screenshot have the -same- height (in the example 691 pixels width x 533 height while the other picture is 349 width x 533 height ), Blender should display those picture in that silly out of proportion way.

The only practical solutions i see to keep precision (as the Background Image “eye jdugement” resize is not really good when you need it) are :

-Do not use Background Image but use Import Image as Plane, as at least unlike what the Background Images does, the planes will be correctly scaled to each other in that case :
http://i.imgur.com/gmYpKs.jpg

-Use GIMP or similar to create a new picture that would have the same height as both, and for the width use the width of the larger picture, then inside paste the other picture (the one with the same height but thiner width) and then both picture having the same exact width and height, Background Image will work without screwing up the scaling.
http://i.imgur.com/Knwtg.jpg

But you shouldn’t need to work those extra steps, i don’t think Blender should screw up your Background Image scaling if the pictures used are of different width. Hopefully something that will be corrected one day.

So set the size of the second one to be 349/691 the size of the first one (e.g. set the first one to a size of 0.691 and the second to 0.349); the heights will then match. In effect, where it says ‘Size’ in the background image settings, it really means ‘Width’.

Best wishes,
Matthew

That’s what I did, opened a blank canvas with the dimensions of the wider image and pasted the other one in there. They look the same now in Blender too.

It was a bit unexpected behaviour. Anyway, thanks for the replies.

Thank you, it works , i’ll put a note to myself about this somewhere so i can remember.

But it’s really completely unexpected behaviour, difficult to understand why it’s designed like this as it’s rather counter-intuitive in regard to how the user expect it to work (unlike by example the import image as plane that work exactly as expected regarding the scaling) .

Think about the more general situation where you have a front view, a top view and a side view. You want the side view to be the same height as the front view, but you want the top view to be the same width as the front view. Blender can make at most one of these ‘just work’ without user assistance. It chooses to match the widths, leaving it up to the user to adjust things if he wants to match the height instead. Doing it the other way round would not be ‘better’ or ‘more intuitive’, just different.

Best wishes,
Matthew

Why does Blender needs to use a height or width as a reference for -every- viewport, leading it to screw up the scale of some of those background image ?

Can’t it just convert those height/width into blender units and then let the user decide of the scale of every individual image after that ? this way whatever the dimension all those pictures would match their actual dimension, in the viewports a 512256 2 time less the height of a 512512 other picture and the same width, etc…
In the current system, it only result in the picture not scaled the same way in a viewport in comparison to the other, as shown in this thread.
Blender units are standard, they’re the same in every viewport, while taking as reference only a width or an height can change from picture to picture.

The Import Image as Plane addon does that without a problem : it uses the Blender units as a basis leading it to be intuitive to use because you get the visual scale result between the viewport being the one you desire for your work and expect.

Sorry to dredge this up, but I’m not bright enough to understand Blender’s scheme of manipulating my background images.

Let’s say for simplicity, I want to model a rectangular box.
I go into Gimp and create a new 500x250 image and save it as RightSide.png
I go into Gimp and create a new 250x500 image and save it as Top.png

Now, I assign Top to the Top Ortho, and Right Side to my Right Ortho. Blender’s default routine makes it impossible to model the rectangle.

Is there some documentation somewhere on what Un-Screw-This-Up factors I have to add to my images for which views?

I have to agree with the others and say that I consider this behavior a bug.

Did I miss someone giving an actual image/use case where the current behavior gives desirable results?

Ok… I must have been too dim to understand the Sanctuary when he wrote it, but to put it what seems more clearly to me:

Blender will fsck things up if your images are not all identically sized squares.

So if your longest dimension is 2000 pixels, each of your views need to be inside a 2000 pixel x 2000 pixel image (unless you want to figure what whacky scaling factors you have to apply to each image).

Just use gimp to insert your 2000x300 image into a new/blank 2000x2000 image & save it off; then do the same for your 2000x500 image and your 300x500 image (for example)…

It would be nice if someone fixes this bug, the number one google result for me on “blender background image scaling” leads to a pdf (www.delta3d.org/filemgmt/visit.php?lid=65) that mentions nothing about this goofiness, and is likely to piss off/turn off anyone trying Blender via this Tutorial.