[Plugin] 'Camera2Vue.rb'
-
hi Alex,
I've tested it with Vue 7 Esprit on windows xp: sadly it can't read this kind of python script (see attached image).
Howerer, if i open the python script with a text editor, i can copy and paste the camera coordinates and orientation into the upper right panel of Vue.
Now my problem is how to convert SU fov to Vue fov, since I can't find the the box labelled 'Vertical FoV' in the advanced camera options of Vue 7 Esprit. I'll have to develop a small trigonometric function to convert it.
-
success!!
-
Hi ...
Thanks for making Camera2Vue available ...
However, although I'm sure I followed the instructions, the scene does not appear as expected - the camera is not positioned correctly relative to the 3B object.
I don't have Sketchup Pro so can't export as as OBJ with "swap yz" - would that make a difference?
I am using an OBJ exporter script instead.
Thanks
Richard -
I'm honestly not sure - I just tried to record my own process as closely as possible.
It's worth checking in 'vue' to see if the orientation of the object is nearly right - i.e. the vertical axis in SU is the same as the 'up' in Vue.
If it is, there are a couple of things to check:
-
The field of view matches (SU's 'field of view' is the VERTICAL field of view in 'VUE'
-
The units are the same. My script outputs the camera data in METRES. If your obj exporter uses mm, feet, or something else it's not going to match.
-
The object is not hidden by the ground plane in 'vue' (delete it to make sure). Also check that vue doesn't automatically centre or resize your obj geometry.
Hope you can sort it out!
Vue d'esprit can only read python scripts that e-on has created themselves. I don't have a copy, so I can't test out your problem. It should be possible to use the FoV and the aspect ratio to calculate the camera focal length - there's plenty of info around on how to do this, but it's a bit tricky. Let me know if you find a workaround, and I might try to add it to the script.
Yay! Great news - glad you got it playing ball. Did it work the way I described, or did you have to put in a bit of extra legwork?
Please put together a video tutoral if you've got the time - I'm not sure it's something I'm going to be able to do.Thanks for your time everyone - most appreciated.
AJ
-
-
Hi Alex ...
Thanks - I'll try out your suggestions.
Cheers
Richard -
Here's another one - used a Sketchy Edge style to cover the inaccuracies, but it looks quite nice!
-
I'm very close but not quite there - not sure what needs changing. I am working at maximum precision in Sketchup ... maybe rounding errors in Vue, which only accepts 3 dps.
it isn't just a scaling error, but there is a slight rotational one too - the left corner is matched, but the bottom one isn't.
I import the SKP file into Vue as an SKP - the free OBJ exporter creates a mirror image for some reason.
If I can get this working for the SKP file, it might be useful to other Free SU users.
Cheers
Richard
-
Doest it work with any of those free vue types?
-
Should work with the PLE version.
-
Here is a quick pdf tutorial with installation files:
-
@Solo: That's brilliant - thank you so much for taking the time to put that together. Mind if I host a mirror of it on my own server?
@craftycurate: Can you upload / email me the skippy file, and let me know which version of 'Vue' you are using? I'll look into it, see if I can some up with a solution for you. alex [at] aj-concepts.net
Cheers
AJ
-
Sure thing Alex.
-
Okay, I've got a workaround for folks who only have SUfree.
I have absolutely no idea WHY it works, but it seems to - so please test it and see if you can work it out yourself.
-
Export the geometry as a google earth .kmz file
-
Rename the file from name.kmz to name.zip (i.e. change the file type to .zip)
-
Unzip the .zip file
-
Open the 'models' folder, and find 'name.dae' - this is a collada file
-
Import the collada file to 'Vue'
-
Scale it by 3.937. No, I have no idea why, but it seems to work. Anyone know why it's this value?
(To do this, if you're not sure: Select your object, and click on the 'size' icon - the cube that's been stretched vertically. Calculate what the 'x' size of the object multiplied by 3.937 is. Then lock x, y and z sizes together - using the padlock icon - and enter this value in the 'x' size field. All the values should scale together.)
- Follow the rest of my method to match the camera.
AJ
-
-
Will it work with Vue 5 Infinite ?
-
Ok I will try and let you know. Thanks for your reply. I never really upgraded from Vue 5 as I hated camera...Donno if it is any better now.
-
@sepo - I don't know, and don't have any way of testing it.... Only one way to find out, I guess.
I'm using fairly basic python commands in Vue, but I think the command to select the camera changed between Vue 6 and Vue 7, which might mean the script doesn't work.
You could try deleting the first two lines of the python script, manually selecting the camera in Vue, and then running the script normally.
Otherwise, you might need to do a bit of digging into the python documentation for Vue 5 to get it working seamlessly, but it shouldn't be too tricky.
AJ
-
@alex jenyon said:
@sepo - I don't know, and don't have any way of testing it.... Only one way to find out, I guess.
I'm using fairly basic python commands in Vue, but I think the command to select the camera changed between Vue 6 and Vue 7, which might mean the script doesn't work.
You could try deleting the first two lines of the python script, manually selecting the camera in Vue, and then running the script normally.
Otherwise, you might need to do a bit of digging into the python documentation for Vue 5 to get it working seamlessly, but it shouldn't be too tricky.
AJ
Thanks Alex - it works beautifully. Looks pixel perfect. Here's an example render.
Thanks for all your help & for providing this great script - I'll be interested to try it with some architectural models.
Richard -
Are you saying it works with Vue 5?
-
By the way, a workflow tip that will help with the scaling issue (via Alex's Collada method).
If your SKP model has a nice bounding box, simply measure the length of one of those sides in SKP, and then paste that dimension into the corresponding dimension in Vue.
If that isn't possible, scaling by 3.937 will do the same job.
-
OK another render, to prove the method works with complex models which would show up flaws.
I've added a subtle outline, which is the SKP render, overlaid on a Vue 7 Global Radiosity render, though it looks great with a simple Ambient Occlusion one too.
View in full size to see the detail.
Thanks
Richard
Advertisement