Dec 07

My current OSs setup and why is painful

My current OSs setup and why is painful

Hello folks how is it going?

Today I would like to share with you the painful mess I put myself in order to be able to work under Linux.

First of all I am not here to make a flame about Linux vs Windows, just stating some observation based on my experience, so if you are here to flame please kindly get the fuck of this post, thanks :D.

Now I am going to list my 3 partition setup and what each partition allow me to do, my final goal would be to have a Linux distro able to let me use Maya, do python and C++ , C++ opengl and possibly cuda.

My current setup:

Ubuntu 14:  First Linux distro I ever used

  • Maya : not able to make the license to work, I got a genuine student license but since I have to convert from rpm to deb I cannot use maya installer and had to go into the mess of manually make the license to work, after several painful hours no luck
    I tried to contact Autodesk for help and they laughed at me saying: “We dont support Linux have a good day”.
  • Python: works no problem , but most of my python is done for Maya so I cannot do maya-python on here
  • C++ : I can compile nicely with g++ no problem here
  • Opengl: Thanks to Nvidia finally supporting nvidia optimus technology I was able to make opengl stuff working on my GTX (and not integrated intel) card quite easily, problem second monitor refresh is uber laggy
  • Misc: my gaming mouse works ( basic functionality but that’s all I need)

CentoOS 7:   Best would be to use this distro, which is the same I use at work

  • Maya: CentOS uses rpm packages so I could use their installer and was just a matter of click click click done, installed (plus of course linking manually all the missing shared libs), license works ! wooot
  • Python : all good here, python works no problem and I can do maya stuff
  • C++ : I can compile with g++ no problem here
  • OpenGL: Bloody mess, there is no official support from Nvidia, so need to use Bumblebee project  which is quite of a pain to make it work, after I made it work my opengl viewport kinda works so for now I am stuck there.
  • Misc : gaming mouse does not work, need to have another mouse plugged

Windows 7: Works out of the box

  • Maya: always worked never had a problem
  • Python : all nice and smooth
  • C++ : well best is to use Microsoft compiler , but I need to use gcc/g++ and on windows doesn’t work so well, need to use some portings like MingGW, etc which gave me quite a bit of trouble before
  • OpengGL: I made stuff working on windows, but always on windows compiler I will try with MingGW
  • Misc : every device worked,

The final thoughts you guys might have is “Fuck Linux then, use Windows that works”. You got a point here ,  and I am not an a strict adopter of open-source, I am pro open source stuff but that s not my reason for jumping on Linux.

There are two main reasons I want to use Linux:

  • Loving the work flow: damn how much I like my work flow on Linux, where I pretty much interact only with the console, I can  get similar work flow on Win but is a pale imitation.
  • Work: for the kind of work I do and I wish to do in the future I need to be comfortable in programming and compiling on Unix systems.

Right now I am in the situation where I kinda do all I need to do but I have to switch between 2 different distros and each one has it s own pro-cons as you can see from the list above. I am by no means a Linux expert so might be just me the retarded one not being able to make it work XD,  but I hope one day I can stay on Linux all the time and just jump on Win for gaming purpose.

I might one day just buy a desktop PC and remove the Nvidia Optimus problem all at once, but we will see about that.

So that s all for now folks



Dec 01

MAYA 2015: Intstalling on CentOS tips

MAYA 2015: Intstalling on CentOS tips

Quick posts on installing Maya 2015, mostly for myself I need it I know where to find it, but for anyone else that might be interested as-well.

There are many guides on how install Maya on Linux, on centos was the easiest one since I did not have to convert the rpm packages to deb, I could also use the GUI setup for the very same reason.

The installation went nice and smooth (remember to sudo setup).

First problem was in activating the license, I got a student license, when I was trying to activating the license it would just time out, in the end I just figured out I just had to run:

“sudo maya”, that s not entirely true, because for some reason when running Maya command with sudo the command itself was unknown, (no clue here) , so what I did was running the  installer directly from installation folder, something like:

“sudo /usr/autodesk/maya2015-x64/bin/maya”.

After the licensing went nice and smooth, only problem left was maya erroring like crazy not being able to find some fonts the error was something like this:

“error: Failed trying to load font : -*-helvetica-bold-r-normal–10-*-*-*-*-*-iso8859-1”.

To fix it go in your package manager and filter for “xorg-x11-fonts-ISO8859-1”, there will be a handful of packages after the filtering, I installed them all just to stay on the safe side, but you should look for the 100 dpi ones.

After that all was nice and good.


Jul 31

DEMO SPLICE : Bendy arm

DEMO SPLICE : Bendy arm

Hello folks! As promised here a follow up of my development in Fabric Splice !! Today we are talking about bendy arms! Ever heard of it? In the computer graphic industry when you talk about bendy arms you mean a cartoony setup that allows you  to create arcs in body limbs like it was a tail rather that just simple sharp bends in knees and elbows  for example. Now to achieve that result require to resolve of a couple of problems :

  • How to bend the arm? Means how to get an arc?
  • How to orient the bones along the arc?
  • What about distributed twisting?

The node I wrote in splice is going to adress exactly all those problems.


Before get started with explanations let s see what we got here. This is a picture of the actual node , with opengl debug on, the node get as input an array of matrices, in this case 3 , shoulder , mid , elbow and shoots out the matrix array of the computed bendy bones. The resulting dots are the position computed and the lines is the Y axis of the resulting rotation matrix

How to bend the arm? Means how to get an arc?

In order to have the bones deforming into a nice arc I used the input matrices to interpolate a nurbs curve ( Yeah now you see why I wrote a nurbs curve huh?) . Once I get a nurbs computed in the node I can then evalute points along the curve, done we got our bendy positions.

How to orient the bone along the arc? &  What about distributed twisting ?

I am actually gonna answer this two questions all at once because solving one means solving the other. In order to compute the orientation along the curve first of all I need to be able to query a tangent to the curve and an up up vector, once I takled this I can actually generate an orientation matrix , but the math I did is a bit different , since I had to re-adapt the algorithm from maya API to splice API. First thing I did was extracting the twist , this is quite tricky since you need to be able to re-alling quaternions without losing the twist , and I actualyl improved my old algorithm and found a better axis for performing the align, with a combination and the twist and a tangent vector I am able to compute the final quaternion rotation that allows me to get my object aligned to the tangnet on the curve and twisted properly. Actually splice allows you to extract a matrix from a  quaternion and a point which saved me a bit of math. Of course the whole thing is running on parallel thanks to PEX ( where possible).   Enough talk here is the demo!

That s it folks! As usual If you like it please follow my channel and share it around. You can also stay up to date with all my videos by subscribing to the newsletter at :

Jul 30

DEMO SPLICE : Bezier and Nurbs curve in Creative Splice API

DEMO SPLICE : Bezier and Nurbs curve in Creative Splice API





Hello everyone, today we are talking about SPLICE !

If you don’t know what Splice is I command you to rush to their website and have a look , is quite awesome and I do believe it might be next leap forward in the industry.

I finally started  to play with Splice  and I decided to implement a nurbs curve, you might wonder why I wanted to do that.

The reason behind  that are mainly two, first Splice for now lacks a nurbs curve/surface implementation ( no worries will come soon) and second  I always wanted to learn the the math behind the  nurbs curves , so I took two bones  with one stone and got my hands dirty.

In order to grasp the math I started by implementing  the bezier curve  which is just a specific type of nurbs curve, then I generalized it to a nurbs curve.

I started by being able to compute berstain polinomials , that led me to compute the weights of each control point, this was not too hard, once that was implemented I was  able to do what I had in mind, computing a tangent on the curve at given u param. In order to do so you need to get the derivative at the given u , this was less easy but a lot of study  and banging my head against the wall

in the end made the math clicking in my head and I was eble to implement.

As you can see in the demo , the main problem with bezier is that  in order to add control point you need to raise up the degree of the curve , which will make you lose contol of the locality of the curve, also high degree polinomials will start to get unstable.

This is where next step of the development led me to, implement a nurbs curve , like the maya one.

Again I  followed  the same steps and got it done, also with the tangent computation. (It took also a lot of italian swearing which I am not gonna report , it is like somewhot “colorful”).

Great, I have implemented everything I wanted so time to get serious and start using the nurbs curve class for some heavy lifting.


The first usage I could thing of was Parallel Frame transportation ( If you wanna know more you can check  my maya plugin  demo ), basically is a nice and stable way to compute normals along the curve avoiding flipping. Once you are able to compute those normals then is a piece of cake to be able to compute a positon and orientation along the curve, and that s what the second part of the demo is talking about.

Here is the actual demo :


That s it folks!

As usual If you like it please follow my channel and share it around.
You can also stay up to date with all my videos by subscribing to the newsletter at :



Jul 28

MOVIE : Why Need for speed is a great movie

MOVIE : Why Need for speed is a great movie

DISCLAIMER : If you are a movie nazi … one of those that complains about stuff like : “there, you see that sequence ? the light should have come 3 degree lover it changes the whole mood!” …. well

GET THE FUCK OFF MY BLOG  there is nothing for you here. <3


Now lets start by saying I am the kind of guy that love explosion and bad ass action in the movies,  we all know that, I don’t say they are the best ever but I do enjoy them and nothing I can do about that.

Then this trailers comes along.

First time I watch it I thought , well that s a pretty cool piece of shit. Really I think the trailer is quite bad, but my bro borrowed me the dvd so I said lets watch it, and I was keeping down my hopes a lot.

I have been burned so many times about movies coming from books or games and they where so damm bad to make me regret watch them ( like Eragon :/).

But if you are a fan of the need for speed series then you will love this movie, it s hard to believe but it really took out the need for speed essence.

It was an hard job, maybe because need for speed doesnt really have  a story, there have been so many titles without a story where basically you just race, and the ones that actually had a story they were so weak that I don’t remember a single character, and there was never a main character because they wanted you to be the one.

The things I loved about this movie  are :

1) Exotics cars : there are a lot of the m and all togheter , races exactly like in need for speed where you see lambo , meclaren , koenigsegg etc etc.

2) The kind of race : you can watch all the fast and furios and they dont look like need for speed, this movies replicate the exact types of  races , with long roads and the iconic double sided super road

in the middle of nowhere

3) the final race : ooooh that was so f**** epic , the emotions it gave me was exactly like the one on the final boss that is so f*** hard you have to get every corner right and you are doing that for the

10th time and you are thinking this is the one, this time I do it.

Also the final race is totally like need for speed hot pursuit  :


4) The police : damm what can i say the police was behaving exactly like in the game.


SO in the end for being a fan of the need for speed series I am really happy about this movie because I think it really took a snap shot of its essence!


Jul 27

DEMO ARDUINO : having a bit of fun with arduino

DEMO ARDUINO : having a bit of fun with arduino

Hey guys I just pulled out some old palying around I did some time a go.

The first very basic test was getting a led to switch on off.

DEMO ARDUINO : test 1 , led on off from Marco Giordano on Vimeo.

The next step was to make the led fade.

DEMO ARDUINO : test 2 , led fading from Marco Giordano on Vimeo.

Then I bought a proximity sensor for a couple of pounds out of amazon, there was a small bit of math to implement to actually compute the proximity of an object,
but other then that all nice and simple.

DEMO ARDUINO : test 3 , proximity sensor from Marco Giordano on Vimeo.

That s it folks I really look forward to start playing around with arduino!
Stay tuned and subscribe to the channel!

Older posts «

» Newer posts