Most cases of premature ejaculation do not have a clear cause. With sexual experience and age, men often learn to delay orgasm. Premature ejaculation may occur with a new partner, only in certain sexual situations, or if it has been a long time since the last ejaculation. Psychological factors such as anxiety, guilt, or depression can cause premature ejaculation. In some cases, premature ejaculation may be related to a medical cause such as hormonal problems, injury, or a side effect of certain medicines. Quick flash to our customers: order cialis online uk no rx if you need generic cialis and get fast delivery to uk. Worrying that you won't be able to perform in bed can make it harder for you to do just that. Anxiety from other parts of your life can also spill over into the bedroom. Full information about Kamagra product line by Adjanta - buy kamagra online in uk.

Thing 002: Portal Cake

January 28th, 2012

The 19th was my birthday! As befitting my station I commanded my MakerBot to make me the cake from Portal.

It imported into ReplicatorG at 1cm across, which it printed in under a minute. You can see just a hint of cherries, but the resolution was too small for more than a tiny stump of candle. It left the doily off entirely.

I doubled the scale to 2cm, which including a raft took about 10 minutes.

I redoubled it to 4cm across, which took about 40 minutes and almost failed: a draft caused the left side to curl up, threatening to detach the raft from the build platform, leading to certain doom. Heedless of my own safety and mocking Death itself I leapt into the maw of the MakerBot and secured the cake to the build platform with a piece of tape. It finished, complete with candle, and my birthday was saved.

By my very rough estimate it’s about a 50-layer cake. Take that, southern grandmas I read about in the Times.

Thing 001: Calibration Cube

January 26th, 2012

My first print! It’s not really a cube. It’s the 20mm calibration box, but from above it looks like a cube, and the alliteration is nigh-impossible to resist.

The hexagonal infill pattern makes it look like a pat of butter fabbed by MakerBees.

Tradition dictates that one inaugurate one’s MakerBot with a commemorative saying upon the initiation of its first print. While the suggested phrase — “Fire the MakerBot!” — has many attractive qualities, when the time came I was feeling nostalgically geeky, and for those reasons chose “Make it so” with a Patrick Stewart/Sean Connery conflection* and a concomitant “Engage” gesture to make sure it knew I was serious.

It worked pretty well. My cube came out very slightly squashed on the bottom, which I understand means either the build platform was too warm or my gesture was too fast.

* 1. A conflation of inflections 2. The dialect of a pastry

MakerBot construction timelapse

January 19th, 2012

I built a MakerBot Thing-O-Matic over a recent four-day weekend, and took a timelapse movie of the process with my Canon point-and-shoot using the Canon Hack Development Kit. The 26 minutes of video in the playlist below run at a speed of an hour a minute.

I’ll start posting the results of my builds soon.

Check for Existence of a Variable in MEL

June 16th, 2011

Error-catching in MEL with the catch command won’t catch a “variable does not exist” error, so use whatIs instead:

if (`whatIs "$test"` == "Unknown") {
print "yes";
} else {
print "no";

There ya go.

First, some whinging

May 14th, 2011

I know, MEL is just a scripting language, intended to afford convenient access to the Maya motherbrain, and it isn’t a robust or versatile alternative to C++ or Python, both of which I’ll probably have to learn in order to bend Maya to my will. Still. It’s missing features even JavaScript had back in the day. It’s like they made it intentionally awkward.

1) It’s strongly typed. Half my time is spent tracking down type mismatch errors. If I’d grown up programming like the Amish, who shun you for seven times seven days if you allow data of different types to touch, maybe this would come more naturally to me, but I think an app like Maya should be able to see the connection between a vector and any other three floats in a row.

2) No nested arrays. Can’t do it. Not allowed. You can have a matrix, which is a nested array, but not a dynamic matrix, meaning you must specify the size of a matrix beforehand, and you can’t change the size after you’ve made it. Shouldn’t this just be an extra letter in a source code file somewhere? Another loop?

3) Weak array handling. MEL has some built-in array-manipulating procedures — but for arrays of strings, only.

4) PolyInfo string. Why does the polyInfo command return everything in a giant concatenated string, which must then be tokenized to be of any use? I smell laziness.

5) Normals. To get the normal of a face, you have to dig it out of the polyInfo string. Okay, whatever. But the thing it doesn’t tell you, and the docs don’t tell you, and I’ve never seen mentioned in any of the threads on any of the forums where this question comes up, is that the returned value assumes the face in question is at the origin, with no applied rotation or scale. So if you actually want the normal normal, you have to do another little dance to get it.

These things may just be part of the arcane, occult knowledge previously only available to initiates of the Maya cult, but now I’m putting them here, out in public, where Google can see them. I am also hoping that I’m just missing something obvious, which will be pointed out by someone in the know.


May 13th, 2011

Thursday is Matthias Hoegg‘s graduation film from the Royal College of Art in London.

Importing Expressions in Maya

April 24th, 2011

Writing expressions in Maya is a huge pain. The error messages are vague, there’s no stack trace, and the editor is a text entry field with no line numbers, syntax highlighting, or line wraps. And Maya forbid you try to write a script with a dynamically-generated expression in it — then everything has to be a giant encoded string. And when you try to run it, it squirts venom at you from its eyeballs.

However, it’s possible to write and edit your expression in the text editor of your choice, save it to a file, and import that file into your script at runtime. This is much, much nicer, and comes with less venom.

There’s a way using fread to put the entire contents of a file into a string at once, but I had trouble with it — this way, reading a line at a time, seems to work better. [Based on this tutorial from Jay Grenier’s Script Swell.]

Code follows:
Continued »


January 5th, 2011

Combining two of my great loves – Robotron and cubes – this looks like what I thought all games would look like by now, when I was 12. Coming from Lexaloffle in August 2011. I can’t wait.

selectTrigger v01

December 23rd, 2010

Here’s a Maya script I wrote to trigger the selection of one object with the selection of another, inspired by Hamish McKenzie‘s Trigger UI, as seen in Andrew Silke‘s venerable Generi rig.

The script makes a scriptNode, which creates and tracks a scriptJob. The scriptJob checks selected objects each time something is selected, and if the control object is first in the selection list, the target objects will be selected as well. Since scriptJobs only last until the scene is closed, the scriptNode also re-creates the scriptJob when the scene is reopened.

I’d like to draw your particular attention to line 34, wherein I escape a backslash six times.

Download script here: selectTrigger_v01.mel

Code follows:
Continued »

Ramp rig

December 7th, 2010

Occasionally in my Maya rigging work I want to use and animate a ramp (or many ramps) as part of a node network, but going through the ramp-editing interface is tedious, and the graph editor doesn’t give me the visual feedback I’d like. So I wrote a script that creates a simple interface for manipulating a monochrome ramp in the viewport.

Note that real-time feedback is only available in the viewport’s “High Quality” mode.

Download the file here:

Continued »


November 13th, 2010

So my site was hacked a while ago — it took a while to figure out how, because it was sneaky, and I was busy hunting bears in the outback.

Mildly interesting details follow.
Continued »

Salesman Pete

November 6th, 2010

More classic frothy Frenchy goodness — the natural stylistic progression of the super-flat Supinfocom style, a kind of madcap WPA/John K. meringue. A lot of good stuff in here regardless. I do wish they’d left off the English voiceover.

Nifty making-of stuff including character sheets at their bloog.

Good luck, kids…

Jon Hopkins – Vessel (Four Tet Remix)

October 8th, 2010

Intentional and attentive.

Coral Towers

August 30th, 2010

New attachment support in my favela-generating code, plus a Romanesque model set, and I’ve got a collaboration by de Chirico and Dr. Seuss.

The Eagleman Stag trailer

August 27th, 2010

Gorgeous trailer for The Eagleman Stag, an as-yet-publicly-unavailable short from animator Michael Please of London. The subsurface scattering and global illumination is amazing. Also, that’s a deceptively simple build — it takes a lot of polygons to make a model look that clean.

What? Stop-motion? Oh.

Well, that explains how he’s getting such smooth samples in his AO pass.

[Via Ward Jenkins on Drawn.]