Wednesday, 15 December 2010

ARD Client not working

I've had a problem with about 20 apple macs refusing to work with Apple Remote Desktop. They would screen share but I could not get ARD admin to connect to ARD client on these machines. I tried many things including:
  • Reinstalling ARD Client 3.3.2
  • PR reset
  • Disk Permissions
  • OS X 10.5.8 update

Only on re-imaging the machine would the computer comumicate with ARD admin.

I had the chance yesturday to sit down at one of these computers and work out what was wrong. Restarting the services was the first port of call. I then moved on to the "Console". This showed an ARD error message about "/Library/Application\ Support/Apple/Remote\ Desktop/Client/Tasks/..../OS X 10.5.8/.....plist not a directory. I thought this would be related to the Task Server as I did send this update to all computers. I stopped the task server but the error kept coming up. When I stopped ArD client the error stopped. I decided to rename the directory (which was owned by root) using the below command:


su root
password ..................
mv /Library/Application\ Support/Apple/Remote\ Desktop/Client/Tasks /Library/Application\ Support/Apple/Remote\ Desktop/Client/old_Tasks

Yay! It worked. Probably a permissions problem with that folder which was created during the update. I noticed that the ARD icon at the top turned from gray to black. On ARD admin I had to re-type the password for the particular mac (but I could have restarted ARD which would have refreshed it). This fixed all other computers. Only bad thing was that I had to go around these computers personally because ARD wasn't working on them. Oh well, it did give me a chance to check all the computer suites.

Monday, 22 November 2010

Using PVC in the Laser Cutter

So, Sue called and wanted some circles cutting for use with Jo. Set it all up and asked if it was PVC, she said no, probably not. I went on and started cutting and she asked "what is PVC", and I said it was like PVC windows and doors. She then said she got it from home after they'd done the conservatory! She had to go anyway, so I stopped the job.

So talking to Tom he said there was a test for PVC, so I looked it up. Found the "Beilstein Test" where you get some copper, put it in the flame so that there is no other material on it and touch the hot copper onto the suspected PVC (it should melt onto it). Then put it back in the flame. If the flame goes green then it contains PVC (poisonous and erodes metal). Found an example here:
http://jchemed.chem.wisc.edu/JCESoft/CCA/CCA5/MAIN/1ORGANIC/ORG16/TRAM16/E/0570301/THUMBS.HTM

Turns out Sue did the rest of it after she phoned the people to see whether it was PVC. It did stink out most of North Block 3.

Tuesday, 16 November 2010

Website creation for Nviro-Clean Solutions NCS

Tom asked me if I'd be interested and I jumped at the chance. His brother is just starting out and wants a nice clean coorporate website for the cleaning company. Mostly to advertise and make first contact with customers. Firstly a front page, then some more pages with info.

The company is very flexible set up into two main parts; Domestic and Commercial. It is setup to do business in the midlands, centred on Matlock. Tom has designed the logo which the website will work around.

I've jumped the gun and had some ideas. Based around the blog templates of having a blurred background, each page could have it's own background. So for the domestic some non-de-script clean home, and for commercial some offices. Perhaps for others we could have a commercial kitchen.

Perhaps to contrast the blur, we could some cleaning utilities in focus. Of-course this means some bespoke photography and the question of what products to show. Perhaps a silhouette of a vaccum cleaner and brush. Perhaps not the brush, a little old fashioned.

For the navigation nothing has really come to mind. Keep it simple and in line with the logo.

Package Maker for OS X

Well, after finding out to some degree that Firefox 3.6.12 works perfectly on Active Directory I thought I'd try and role it out through the Task Server. First and final step was to make a package file which puts Firefox in the Applications folder with the right permissions.

It took some time but I found just dragging Firefox over the "drag contents here" dialogue on the left of the window added Firefox and also added Applications/ folder for the destination!. Tried it, it said it worked, even took a little time installing the files, and it just wouldn't appear in the Applications folder.

After trying "trial and error" I finally looked at the logs to find it saying it was "Diverting" or some similar wording, the files to some other place. I searched on the internet to find that you need to 'untick' the "Relocate" box. I think it's been finding "firefox" or reminants of Firefox  in the folder and so didn't want to overwrite it. Unticking the box finally worked which then showed some wierd results.

The wierd results were that once this was run, Guest and other logins couldn't run firefox. I thought of permissions issues might be the cause because I was logged in and made it from Firefox which I copied. I tried it from Cove login from the Firefox in the Applications folder with no luck. Finally I tried it from Cove and Firefox from the original DMG file downloaded from the interweb. The pkg file recommended a restart through ARD and this tended to work. Just a few more tests and I shall run it through the Task Server.

Should now be able to make more PKG files for distribution. Yay

Wednesday, 3 November 2010

Confucius

Well, having seen the film, I thought I'd quite like to know of his 'teachings'. Can't find the book at the library though. Here's a good start:

http://www.bbc.co.uk/iplayer/console/p00547k8/In_Our_Time_Confucius

I'm 11 minutes in and it's quite interesting. I shall add to this post later.

Wednesday, 15 September 2010

Apple Remote Desktop Task Server setup

Well, it's been 6 years since I've started using ARD and to think how much easier it would of been if I'd have only looked into using a Task Server. Doh!

Basically, if the client is offline then just send the job to the task server and when it's back online again it'll do the job.

So here's the basic principals of setting it up


  1. You install the ARD on both server and admin machines, but you'll need two separate unlimited licenses!
  2. on the server you go to the preferences, and under task server you say "Use Task Server on this computer" and "allow incoming connections"
  3. On the admin machine you say "Use task server ...." and you put the address of the task server in there.
  4. On the admin machine you add the machines to whatever lists you want, you don't need to add them at all to the task server.
  5. When you want to install a pkg file, you set it all up; add the package, sort out which computers to do it on, and then just click install. It'll zip the pkg file up and send it to the task server (might take some time) and the task server will sort the rest out.
Sorted. I shall update this post with more info if it doesn't work so well!!!!

Friday, 23 July 2010

one gear engines

Quite a while ago (over 10 years) I heard of a formula 1 car with only 1 gear, which changed its ratio without needing another gear. I've heard nothing since yet I think it revolutionary. I would like to develop the idea.

Doh! Just read up on it. It's called Continuously Variable Transmission - CVT. Conceptualised in the 1440's by Leonardo da Vinci!!! Used in the 1930's. Drawbacks are that they transmit power through friction and so cannot handle infinite torque.

On the wiki page there is also a link to a page which has newer information about a D-Drive which doesn't use friction but uses gears utilising planetary epicycle. Here's a youtube video about it, and the webpage I found about it - http://fuel-efficient-vehicles.org/energy-news/?p=960

It seems to work very well.  A small drawback is the fact you need to have another engine rotating two shafts to control which ratio you want. Very, very interesting concept, although I think I would like a system where you pull a lever and it changes the ratio (using my own power).

There is room here for a new invention!! Although it'd have to be clever!!

Yay! Just found out about it here. Apparently in 1993 Williams F1 team developed it and made the test car seconds faster in a lap. But it was banned by the FIA. Have to use between 4 and 7 gears!

Another interesting youtube video is a guy who's made a planetary gear system (or cyclic) from technics lego stuff - http://www.youtube.com/watch?v=VuGGbAbd_Ts&feature=PlayList&p=789804284EA4BB9C&index=32&playnext=2

Tuesday, 6 July 2010

Putting photos in access records

So, I'm doing the staff photo boards for the whole college, and being as it is so large I'm going to be efficient and use a database. The first step of creating a database and putting all people in it, with the time and date of every photo taken down, so we know which photo is for which person.

Embedding the photos is not practical because apparently it converts them to bmp files which takes up a lot of disk space. So linking is the way to go. It means I'll have to have a folder for each photo shoot, which is always next to the database.

I found a nice little article which looks very simples. http://bytes.com/topic/access/answers/189710-linked-pictures. Basically, drag the photo into the field, then if you want to display it in a form you put:

on your form, create an Image object, and in Form_Current() place something like: Me![ImageFrame].Picture = Me![fImagePath]

2 hours later....

Tried this on a test database and it was a success. Wasn't quite sure what he meant by "image object" or "Form_Current" and the rest of it, so with a little bit of trial and error I succeeded! So here's what to do:

  1. Make a text field in the table where you put the location of the picture - i.e. c:\pictures\my picture.jpg
  2. Next make a report based on the table. I used the wizard, added the fields I wanted and went into design view.
  3. In the Detail section (middle bit) is where the data gets displayed. Along with the description, I put an "Image Box" found in the Controls section in the toolbars.
  4. It will want you to specify an image, just click "cancel"
  5. Click on the image container and on the right, you want to edit the "Control Source"
  6. I think I just selected the field with the photo location data in. Although I do remember putting:
    1. Me![ImageFrame].Picture = Me![Photo Location] - but I'm not entirely sure? Photo Location was the field I created in the table

Just got to work out how to tile it horizontally and vertically on a page.

Also, by default it "zooms" the image, so that it fits inside the box (no stretching). If you click on the image and set the format "Size Mode" to clip, it crops the image!! Yes!       - No!, on second thoughts it puts the image up at the size the image specifies if you go on zoom and crops almost all the large images. So I put it on zoom and put no border and seethrough background. Just have to make sure all the images are the same size.

Monday, 5 July 2010

personal website design

A thought occurred to me about my own personal website design. I thought I could have everything I've made tiled in the background of the website. When you click on any of it, it would enlarge and play (if it was a video) with information about that piece. A lot like Johns website, but with the stuff in the background and with videos playing in the background.

I could even convert the videos to flash, but only small versions, and have them playing in a loop in the background, bringing the page to life. This could also be styled with CSS I think.

Thursday, 24 June 2010

Firefox OS X bookmarks and History

So, a big problem, but not really that big. But when you load firefox in OS X 10.5 on an active directory account firefox cannot save any preferences including bookmarks and history. But I think these are very necessary for everyday browsing.

I looked up the problem and found lots of complaints but no answers! The earliest complaint was in 2008, and 2 years on no fix.


http://support.mozilla.com/en-US/forum/1/71305

I personnally tried re-directing lots of folders from the library to the local hard drive, because at the end of the day it's a permissions issues os x has with active directory servers. Folders I've tried to re-direct are:

~/Library/Application Support/Firefox
~/Library/Mozilla
~/Library/Preferences/org.mozilla.firefox
~/Library/Caches

Some success, but only per session. If you re-direct Firefox and Mozilla folders it lets you bookmark and saves history. But on closing and re-opening firefox all is lost. It must save temporarily in the caches folder and not be able to move it to another? Doesn't quite make sense.

Oh well, I shall spend some more time on it.

Tuesday, 22 June 2010

Safari 5 crashing on network accounts in 10.5.8

Well, thought I'd upgrade to Safari 5 because I love Safari. First off I had to update to 10.5.8. Then I discovered Safari wouldn't even load! I had to revert to Firefox which has problems with active directory and doesn't save history or bookmarks!

Finally got fed up with Firefox and found the solution in an Apple forum:
http://discussions.apple.com/thread.jspa?threadID=2461496&tstart=75

Specifically - defaults write com.apple.Safari WebIconDatabaseEnabled -bool NO

Problem solved!!

Thursday, 3 June 2010

Gradient Masks in Flash

So I wanted to create some focal blur in flash using the same technique that I would use in Photoshop. i.e. duplicate the image, blur the top layer and mask it off with a radial gradient.

Flash utilises layers and blur so I thought this would be easy. Unfortunately after trying it didn't work! It just masked off the box with the gradient mask in it. Doh!

After some reading it turns out you need to put one line of action script in for this to work. So, say I have two objects, a gradient and a box (named as their instance names and as the layer names as well. I'm not sure which name it uses?). I first applied the mask, then made a new layer and put a line of actionscript which said:

box.mask = gradient;

Maybe you need to make the layer the mask in the UI, i'm not sure. But fiddle a bit and it should work.

Found most of the solution on this page - http://active.tutsplus.com/tutorials/effects/make-your-flash-logo-bling-with-alpha-gradient-masking/

Go to the section with the gradient thing quite a ways' down.

Friday, 28 May 2010

Installing ARD through commandline (trackpad not working)

So, an interesting problem with Jessas' laptop. The trackpad button thought it was always being pressed! A simple problem, but it would not allow you to do anything on the mac using the mouse. I tried lots of things including trying to tick the box which said "disable trackpad when mouse present, but it wouldn't let me. On top of that was the problem that it was OS X 10.4 and the command for ticking the box didn't work either:


defaults write .GlobalPreferences com.apple.mouse.ignoreTrackpadIfMousePresent 0

So my next plan was to enable ARD on her laptop and remote in, it hopefully registering the ARD clicks (i could always block off the user with it too. Soooo, I eventually found this command:

sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw mypasswd -restart -agent -privs -all


The "kickstart" command does have a -help option. I found I had to edit some of these options because I couldn't get it to start straight away. Got there in the end.

Thursday, 27 May 2010

Flash animation workshop

So I have volunteered to do an animation workshop in Flash on the 14th of June, so students can animate some still work to add to their portfolio of work and help them pass the grade.

To freshen up my knowledge, I shall undertake a personal project which will incorporate most animation techniques they will use in Flash. The best way is to undertake a project which will interest me, add to my portfolio.

Ideas:


  • Animated storyboard for an animation i.e:
    • Trees everywhere
    • Chesterfield college burning down/exploding
    • Towerblocks covered in plants
  • Totally new animation?
  • Johns website
  • My portfolio website
The trouble with the first three ideas is that they require time to storyboard. I could schedule this into the project though.

The trouble with Johns website is that he has not decided to go with the flash one and also it does not have adequate animation in it.

The trouble with "My portfolio website" is that it requires interactivity which I will not be focussing on in the lessons and which require a large amount of time to learn.

I am tempted to go with one of my original animations and schedule in the story-boarding to the project. These animations need it anyway. The students might also need to make storyboards, definitely a synopsis. perfect.

The schedule:

  • Finish synopsis to perfection - 1 day
  • storyboard including rough timing and explanations - 1 days
  • breakdown of what needs to be made and how - 1 day
  • making the separate models - 3 days
  • Put together and animate - 3 days
  • add music and titles - 1 day
  • finish - 1 day
All this in 11 days. I plan to finish early to allow for unforeseen things or bad planning!! That should leave 6 days of relaxation :-) But I could always refine it.

Wednesday, 12 May 2010

Epson Stylus Pro 4000 changing ink to dye

Well, I think the document which told you how to change the inks to dyes must have been lost by now, over 5 years old. So I reconed the basics were to drain the system of inks and then load in the dyes. Found a "Field Repair Guide" for the Epson Stylus Pro 4000. On page 208 it tells how to drain ink (no draining cartridge required - unlike the stylus pro 7600). It also tells of how to get to the service mode (hold down < > and down and switch machine on.

Works like a dream!

Tuesday, 11 May 2010

HP Designjet 130 losing colour halfway

Well, strange problem with the designjet 130, when doing large colour prints, the blue seems to run out halfway, leaving the rest of the image without blue. It's taken a long time, replaced cartridges and it's been so long I don't even know if we've replaced print heads. So, the first thing you think of is to clean the print heads, but no facility comes with the drivers. Finally downloaded the facility (web-based) and was going to try it but thought I'd look into the problem before wasting so much ink.

I don't know why I didn't look before, but I finally did a search and found this article. Found this and the 'experts' recon it might be air in the tubes. So take the back off and find the tubes and have a good look (you'll need a torx screw driver!).

I will update this and tell you what happens!

For test prints it's best to use the gradient facility in Photoshop. I made two prints, one of the spectrum of light (all colours) which came out fine. The other was a gradient from 100% Cyan faded to 0% Cyan (remember to make it CMYK mode!) The first time I printed the Cyan one, it seemed fine up until the very end when it only printed the left side (100% Cyan) and did not print the Light Cyan (presumed to be 50% Cyan). So, ran the "Clean printheads" and ran off a test print. This time the whole sheet printed just the right hand side, leaving little or no light cyan!

It looks like a problem with transporting the ink to the printhead (I think I remember now that we did change the printhead). Found a couple more pages. One saying what to do if there is possibly a bubble:

http://forums11.itrc.hp.com/service/forums/questionanswer.do?admit=109447626+1273579439158+28353475&threadId=1173674

They suggest examining the printhead, changing it if possible. If not, then a RIDS assembly kit should be replaced. - £45.

An interesting page I found was in analysing the test page - http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?lang=en&cc=us&objectID=c00044783

Turns out to be the printhead. Instead of printing a photoshop document just do the test page. To do this I used the HP designjet system maintanance program and clicked on "Image Quality".

Looked like lines across the cyan blocks only, and everything else was OK. Upon changing the printhead the lines had disappeared. It's interesting that this has happened twice in 2 years. Not had a problem with any other printhead. I think the printer does need cleaning out though.

infocus lp650 projector flashing

Phil phoned up and said the projector in N150 (fashion) wasn't switching on, with a flashing red light. He'd replaced the batteries in the remote to no avail. It took us a while but we finally found the key to get the projector out (it was in the draw in the fashion staff room). Couldn't find any filters (it's old so I guess they didn't have filters back then.

Eventually found a couple of manuals, put them on the 3D server. Figured it was the lamp, but you can reset the lamp life on it by holding down the two volume controls simultaneously for 10 secs. Hey! It worked. Job done

Monday, 22 March 2010

OS X DVD region code

On new apple macs the dvd region needs to be initialised. This is generally difficult and it would be easier if the user could initialise it without the admin password. This can be done. The information is stored in "/etc/authorization"

Specifically the section corrisponding to:
system.device.dvd.setregion.initial

class
user
comment
Used by the DVD player to set the region code the first time. Note that changing the region code after it has been set requires a different right (system.device.dvd.setregion.change).



Changing the "user' string to "allow" lets the user initialise the dvd region (but not change it thereafter). A little hard to get a script to change this value as it is not a plist file, but you can copy a changed file to other computers through ARD (apple remote desktop).


Found on a forum:
http://forums.macosxhints.com/showthread.php?t=96192

Friday, 19 March 2010

MacBook Pro Sysprep

Well, it's been a while since I last ran sysprep so this is a quick refresher.

First, you can find the files on the XP install cd under "Support\Tools\Deploy.cab". Extract the cab file to the C:\ in a folder you want the files to be.

Run "Setupmgr", this will make an answer file "sysprep.inf" which sysprep uses.

Go through the wizard clicking on "sysprep" option, and "not fully automated", then go through it and put in all the details that will apply to the computers you will be putting it on.

Once the file is generated, run "sysprep" from the same directory as the inf file and tick "use minisetup" and "Detect non-plug and play hardware" so that there is potential for different hardware.

Finally click on "reseal" and the computer will shutdown. Now you can image it!!

Yay, I hope this helps

worth mentioning is the not so comprehensive information on it (typical of microsoft)
http://support.microsoft.com/kb/308662/
http://support.microsoft.com/default.aspx?scid=kb;en-us;302577#7
http://support.microsoft.com/default.aspx?scid=kb;en-us;302577

Thursday, 18 February 2010

HP Colour Laserjet 5550 service error 49.4C06

Got a service error 49.4C06 error yesterday in N212. Wasn't able to clear it by switching it off and back on. I deleted the top job in the queue just incase this was blocking it (it was an ai file). Went to the printer and the error was still there (deleted the job from my room). I opened the printer and cleaned out the thing at the top (with the little cleaner thingy) and closed it up. Still error. Switched it off and back on. Error cleared.

I had a look on the internet and found this to occurance:
http://www.fixya.com/support/t1606568-error_message_49_4c06

and this error code explanation page:
http://www.printertechs.com/tech/error-codes/error-codes-20-49.php

It appears that the error is linked to the computer program sending the print job. Possibly illustrator in this case. It might be worth noting that on these computers it is set up with the HP Colour Laserjet 5500 driver and sends the job to the server with HP Colour Laserjet 5500 driver installed. Also, I've only noticed the error since we have installed PaperCut NG on the system. So there are a few variables which need testing.

Maybe the first thing to do would be to update the firmware on the printer though.

3D Character Modelling for Games

Well, after some google searches I found some interesting ones, each using different techniques:

Tutorial using cylinders and a little extrusion:
http://www.creativecrash.com/tutorials/real-time-character-modeling-tutorial#tabs

Modelling a winged devil thing
http://www.3dtotal.com/tutorials/mudbox_character/

A comprehensive tutorial modelling by extrusion of a line
http://www.3dtotal.com/ffa/tutorials/max/joanofarc/head1.php


I think I prefer the ones which start from scratch but I shall have to give them a go.

Monday, 15 February 2010

OS X auto-mounting shares

Well, as part of my xgrid project, I wanted the machines to mount a networked share before login so that the xgrid app could save the files somewhere. Well, there was no need for this in the end, but it is worth mentioning what I found.


First was to come up with the command line:


mount -t afp  "afp:/at/;AUTH=No%20User%20Authent@xserve.chesterfield.ac.uk/Shared/" /mnt/test


so this command mounts an afp volume with a guest login (make sure guest access in enabled under the afp service). It share is on the xserve under "Shared" and it mounts it in the folder "/mnt/test" (but this folder must exist)


So, to mount it before login I found AFP automounter StartupItem which I downloaded it from:
http://users.phg-online.de/tk/automount%20afp-servers.html
AFP automounter StartupItem


So, you need to place this folder in the /Library/StartupItems/, and it needs a file in /etc/ called AFPVolumes. In this text file you need to put the afp mount with username with a tab after it and the place you want to mount it i.e. "afp:/at/;AUTH=No%20User%20Authent@xserve.chesterfield.ac.uk/Shared/" (with a tab) /mnt/Shared


Now this particular one connects with guest but it has spaces hence the speech marks. This only works if you enable "cleartext" in the com.apple.AppleShareClient.plist file both in /Library/Preferences and ~/Library/Preferences.


You can use the command:

sudo defaults write /Library/Preferences/com.apple.AppleShareClient.plist afp_cleartext_allow 1

to get this to work, but it might work by default but I'm not sure.

Xgrid and Blender part 3

Well, hopefully the final installment of the Xgrid and Blender saga. So, now I started using gridstuffer, a very useful app. By setting up a text file, and giving it some lines of code you want to submit to the xgrid, it'll render the files to where you specify in the blender file. Unfortunately Blender can only really render to the tmp folder because for some reason it has trouble with permissions in ALL other folders (doh!).

So I finally tried a couple of other commands in blenders command line (which I put in the text file) to see if I could get that to tell blender where to render to. Success! It actually renders to the "Output" folder which you specify in gridstuffer (or generally in Xgrid!).

So the final command looks like this:



/Applications/Blender/blender.app/Contents/MacOS/blender -b KitchenTopFreeTree2.blend -o //kitchen -F TGA -x 1 -f 1
/Applications/Blender/blender.app/Contents/MacOS/blender -b KitchenTopFreeTree2.blend -o //kitchen -F TGA -x 1 -f 2
/Applications/Blender/blender.app/Contents/MacOS/blender -b KitchenTopFreeTree2.blend -o //kitchen -F TGA -x 1 -f 3

the -o specifies the folder and file to save. The -F is the file type, -x specifies whether to add numbers to the end. The -f specifies the frame number!

So the blender file is in the input directory, and the // defines it is in the root of the output directory.

Looking at how the whole thing works, I think the machine you submit it all from is the machine which distributes and collects all the files needed. The server just works out which machines to send it to. I don't think that the files have to be on a share? I shall test this theory out.

So the only pre-requsits are that the machines are on the xgrid network, and they have blender installed in the right directory with the right name (case-sensitive)

References:

http://wiki.blender.org/index.php/Doc:Manual/Render/Command_Line_Options

Wednesday, 10 February 2010

X-Grid and Blender part 2

So, after looking at the said articles I found that they are actually slightly out of date (2004!) and OS X 10.5 no longer supports the GUI for submitting jobs in that particular way. And plus, to my dismay, I cannot find it to download ANYWHERE! I tried many many things alas and I've ended up spending about 3 days slowly getting there, and I have got somewhere. I think I'll go through all the troubleshooting I went through, so I can say what I have and have not tried.

So to start with I had my xgrid all setup (previous post), running xgrid admin from my machine. For a test setup I thought I'd try and just get one machine to render an animation, and then get two and so on. So I started with my machine (although I should have started with a third machine). So I made a blender file "box.blend" and tried some command line rendering. Finally I got this command to render the animation:

/Applications/Blender/blender.app/Contents/MacOS/blender -b /Volumes/Shared/xgridprojects/in/box.blend -a

note: I saved it on a network share on the xserve mounted in /Volumes/Shared so that other machines in the future could access this file.

note 2: this is case sensitive so watch out for Blender or blender in the applications folder. I think I renamed it 'Blender' and it prefers to be 'blender' (this held me up for 15 mins!)

the -b renders in the background (put before the file) and the -a renders the animation you have setup in the blend file (default to /tmp/). The /tmp/ directory turned out maybe to be the best directory to render to as blender, when run by this xgrid user (no-one) can't seem to write to any other folders.

The -a attribute renders as many frames as are in the animation. At first this seemed the best but when using with xgrid, the alternative option is -f [frame number] which renders a specific frame. Also, -a can be used with -s [start frame] and -e [end frame] but I think these need to be plaeed carefully either before or after the '-a' attribute.

So, now I knew the commands which xgrid needed to send to each machine I could begin. A big 'downer' was the fact I didn't have the GUI in the tutorial so it was command line stuff. The first thing was to know how to send a job:

xgrid -job submit [-gid grid-identifier] [-si stdin] [-in indir]
           [-dids jobid [, jobid]*] [-email email-address]
           [-art art-path -artid art-identifier] [-artequal art-value]
           [-artmin art-value] [-artmax art-value] cmd [arg1 [...]]

so;

xgrid -job submit -gid xserve.chesterfield.ac.uk /Applications/Blender/blender.app/Contents/MacOS/blender -b /Volumes/Shared/xgridprojects/in/box.blend -a

I think this might have worked, but I saw that actually you can have input directories and output directories! So this is where the network mount might have come in:

xgrid -job submit -gid xserve.chesterfield.ac.uk -in /Volumes/Shared/xgridprojects/in/ -out /Volumes/Shared/xgridprojects/out/ /Applications/Blender/blender.app/Contents/MacOS/blender -b box.blend -a

notice how I didn't have to specify where my box.blend file was, as it automatically looked in the "in" folder. Now this folder was mounted on the computer I was rendering on through xgrid, but I now think that xgrid manages these files all by itself, so I don't think that it has to be mounted (I shall try tomorrow). I think the main point is that it is on the machine which submitted the job!

Now that this worked I tried it on two machines! Alas, it only used one machine to render the entire animation! This was because I didn't specify the variable or 'range' (which was in the tutorial) which changes. The only solution I found was to specify lots of jobs, each rendering a specific part of the animaton. Luckily I found an application for submitting 'Batch' jobs  which is called 'GridStuffer'. You can give it a text file with the cmd for the specific jobs, a different line for each job you want, and it will send it to the xgrid as lots of different jobs. Not only that but if a job fails, it'll keep sending it until it is complete (fully optional though).

So with this handy tool I made a text file like this:

/Applications/Blender/blender.app/Contents/MacOS/blender -b /Volumes/Shared/xgridprojects/in/box.blend -f 1
/Applications/Blender/blender.app/Contents/MacOS/blender -b /Volumes/Shared/xgridprojects/in/box.blend -f 2
/Applications/Blender/blender.app/Contents/MacOS/blender -b /Volumes/Shared/xgridprojects/in/box.blend -f 3
/Applications/Blender/blender.app/Contents/MacOS/blender -b /Volumes/Shared/xgridprojects/in/box.blend -f 4
etc....

and it will send them all to the xgrid under different jobs, and keep sending them until they are done. That way the xgrid application will send each job to a different machine and utilise all the processers it needs, YAY!

I think you don't even need the blend file on the server, I think it sends it from that machine (but this theory needs testing). I think what you do need is the blender application on each machine although I seem to remember it saying you didn't!! But anyway, not the hardest thing to do.

One of the main stumbling points at the moment is trying to get all the rendered files from all of the machines '/tmp/' folders. A script could be written and sent out over ARD, but I would prefer it if I could get xgrid to move them, or blender to save to a networked space, which would mean mounting on each machine before jobs are sent out. Preferably all the machines would automount a volume on bootup which could be useful for a lot of other things. Apparenly this might be done by NFS shares but needs looking into.

Well, till another day. Hope this helps sometime again and it wasn't all in vain.

Monday, 8 February 2010

X-Grid setup

So, I've managed to get all the Apple Macs in Art and Design Directorate at Chesterfield College! I should hopefully reach 400GHz when all the machines are finally switched on. Here's the general gist of how I did it:


  1. Set up Xserve with XGrid. I did have a problem switching on XGrid but that was fixed on my previous post. Go to "Server Admin" and set it as the Controller. I didn't make it an agent as I didn't want to slow it down (it's only a G4). It's as simple as that
  2. Check XGrid is working by going to your machine and loading "Xgrid Admin". Now connect to your Xserver and all should be there (no agents though)
  3. Set the clients up. This can be done in two ways, Workgroup Manager or Apple Remote Desktop.
    1. I used a combination. I set up my machine by going to the Sharing Pane in System Preferences and clicking "XGrid" and specifying the servers address (DNS). Not using authentication at the moment.
    2. Now go to Workgroup Manager and manage computer groups and preferences, go to Details and add: "/Library/Preferences/com.apple.xgrid.agent" and I always make the changes "Always". This should put these preferences on all the machines in this group.
    3. Start the service on each client machine. I did this through ARD's command line. I've also put how to change preferences on the client machines if Workgroup Manager doesn't work (run as Root):
      1. sudo xgridctl a stop
      1. sudo defaults write /Library/Preferences/com.apple.xgrid.agent ControllerName xserve.chesterfield.ac.uk
      2. sudo defaults write /Library/Preferences/com.apple.xgrid.agent ControllerAuthentication None
      3. sudo defaults write /Library/Preferences/com.apple.xgrid.agent BindToFirstAvailable 0
      4. sudo defaults write /Library/Preferences/com.apple.xgrid.agent ResolveNameAsNetService 0
      5. sudo defaults read /Library/Preferences/com.apple.xgrid.agent
      6. sudo xgridctl a start
      7. sudo xgridctl a status
Now everything should be working and through XGrid Admin you should see all the clients connecting. Next thing to do is to submit some jobs!

Saturday, 6 February 2010

Xgrid Startup troubles

Well, after a very long time of X-Grid being untested, I decided to open it up and see if I could utilise it for Blender (see other post), but alas, on startup of Xgrid on the server it crashes! Doh!

So, after a little looking through the logs I knew I wouldn't find anything so I googled it and after a few pages the answer was found:

http://lists.apple.com/archives/xgrid-users/2007/Sep/msg00012.html

So, basically do this in terminal on the server (or ssh)

sudo xgridctl c stop sudo xgridctl c off sudo rm /var/xgrid/controller/datastore.db sudo rm /var/xgrid/controller/status sudo xgridctl c start sudo xgridctl c on

He's added more, but this fixed it. I'll put the rest on though just incase it helps:


optionally, you could do:
sudo rm /var/xgrid/controller/blobs/*

(this can take a while if your database is old and has grown a lot of crap; another option is thus to rename the blobs to blobs-old and create a new one with the same permissions; then while the controller restarts happily, delete blobs-old).

Carefully check the permissions and ownership before messing up with / var/xgrid/controller.
The owner of most of the files is xgridcontroller (the name can be clipped of in a simple ls -al).



Just need to work out how to send a job to it (which is surely quite important!)

Thursday, 4 February 2010

Blender Render Farm with X-Grid

Well, with my new project only begun I thought I'd optimistically look into a render farm using X-Grid on our Mac OS X 10.4 server (a little outdated though).

So, after not much time I found this article:
http://www.atpm.com/10.06/blender.shtml

and it looks almost complete. Watch this space, although you might have to wait until I have a large enough project to render!

Also, here are the Blender command line arguments:
http://download.blender.org/documentation/html/a19823.html

I'd just like to note that if all goes well, I could easily adapt this for Maya!!

Wednesday, 3 February 2010

My Experience of Camera Tracking with Voodoo and Blender

So, after my research in the previous blog, I decided to give it a go. My first few attempts failed but after some perseverance I succeeded and I shall soon upload the results to Youtube (link here please)(a tree put on the Kitchen work-top surface).



So, the workflow and particular points to mention.

First you need the video, this is important because you will be basing everything on this. It is pivotal. Make sure you either use a tripod, or circle around a point in space. This might just be the limitations of the Voodoo software, but it is complicated! And don't move too fast, nice and slow is best. Motion blur might be an issue in post production as well.

Once filmed make it into an image sequence, quicktime pro does this with ease and speed (yay for apple!)

Now put it into Voodoo (you'll need windows! Doh!), don't forget to put whether it is Free (not tripid) or Rotated (tripod). Another important thing to do is to go into the camera parameters and chance the Focal length to that of the cameras (35mm for the Coolpix S550). The just click track.

Save the result (which takes a while) as a python script.

Now, open Blender. Make a window text, and open the python (.py) file. Now go to File>Run Python Script.

Thursday, 28 January 2010

Colour Profiling and Printing with Epson Stylus 7600/4000

Well, I had a guy, named John, come in and show us some paper samples and how to print on them with the colour profiles which came with them (specifically for the 7600 and 4000 printers).

So, he added the profiles to the /Library/ColorSync/Profiles folder on the Root of the Hard Drive.

Next he opened photoshop and loaded his image. Next was a little hazy, but I think he went to Edit > Assign Profile and click "Do not manage colour profile". This makes sure there is no other colour profiling going on.

For the Epson Printers, it is important to go into paper setup to setup whether you want roll or sheet before going to print. Select the printer type first, and then the paper size. For these printers it gives you several options per paper size, i.e. sheet or roll.

Next he went to Print. Under Color Management, he has "Document". And under Color Handling: he has "Photoshop Manages Colors". For the Printer Profile select the paper/printer profile you are using. In this case it is the "HARMANCrystaljetGlossRCEpson7600_1109.icm". For Rendering Intent he suggests Perceptual as it is most commonly used. And tick the "Black Point Compensation". Now you can click Print...

Under the final Print dialogue box there are several  things to note:
Print Settings:
Media Type: Premium Glossy Photo Paper (250) - Although change this to whichever suites (if it's sheet feed for the Epson 4000 then make sure it is 170 not  250, as this is too thick)
Mode: Advanced Settings - SuperFine 1440dpi - MicroWeave - Super - Hich Speed (ticked. There's hardly any difference at all between 1440 and 2880, not worth doing)

Color Management:
No Color Adjustment (so Photoshop can is not over-ridden, although it would actually be added to)

And that should be it.

Thursday, 21 January 2010

Camera Tracking with Voodoo and Blender

Well, it's a little bit of a minefield camera tracking using free software as you'd expect. Heres what I've been able to find out in a few hours:

To start with you will need a video file which you want to camera track. I used a simple camera and recorded video on it.

Next you need to convert this to an image sequence (not the most straight forward things to do suprisingly). After 20 mins of looking I found VirtualDub does this and many more video conversions (worth looking at). Also, you can get blender to do it for you by putting a camera with the video in the background and rendering out the sequence (handy).

Now you can get round to using Voodoo. Open the sequence and click on ¨Track¨ down in the bottom right (took me a while to find this the first time! Should be a menu item for it). This takes a while but eventually you'll have a nice bunch of points.

You need to export this as a python script for Blender.

To get this into Blender, you need to open up the text editor, open the .py script that was saved, then click File> Run Python Script (easy!!)

Now you have the camera animated and 3D points corrisponding to points in the real world.

I managed to find the Blender side of things from this web address: http://fictionality.co.uk/doku.php?id=tutorials:matchmoving

I might add to this when I find out more. But I'm still in the testing stages.

Sunday, 10 January 2010

3d tree generation

I want to create realistic trees and bushes for a project to visualise Chesterfield covered in trees. I want to use free programs and came across Gen3 - http://wiki.blender.org/index.php/Extensions:Py/Scripts/Manual/Wizards/Gen3 - http://blendernewbies.blogspot.com/2009/07/gen3-tree-script-url-updated.html for blender and Arbaro http://arbaro.sourceforge.net/

Looks like it is easy to create shrubs and young trees but a little harder to create mature trees. There is some mature trees which look impressive though. Both these programs are based on the findings in the document Jason Weber & Joseph Penn: "Creation and Rendering of Realistic Trees" -PDF - Creation and Rendering of Realistic Trees which gives information on tree generation and some presets for trees. Might be helpful.

Friday, 8 January 2010

iMac (and general macs) "Error loading operating system"

I'm in the process of reimaging 15 iMacs which previously had windows and OS X installed. I updated one and reimaged it only to find when booting into windows it came up with the error "Error loading operating system". So I tried an image I'd used somewhere else. This came up with the error message "Missing operating system"


Thought this would be to do with the operating system so updated OS X to latest (10.5.8) and all the updates (EFI Firmware). Thought that would fix it but no luck.

Apparently the error message is something to do with bootpicker. Reading bootpicker help, a quick-fix isupdating bootpicker. Also typing in terminal:

sudo -s
printf "flag 3\nwrite\ny\n" | fdisk -e /dev/rdisk0

I've since updated bootpicker when the error message was "missing operating system". Trying it on another image as we speak.


SOLVED:


Through trial and error I found that boot camp does not like Windows to be on the first partition on the disk. I think it's because it intends people to use Boot Camp Assistant which then partitions your hard drive for you, thus making the Windows partition at least the second partition.


I knew it would be something simple!!