After a titanic fight againts dark forces, RapidSelection is finally published and available in the Asset Store ( hahahaha ). Simple yet usefull.

Link to Asset Store



RapidSelection is a Unity Editor extension that allow users to manage selections in an intuitive way. By using the same editor styles built-in windows use, and tracking keyboard and mouse events, make Rapid Selection‘s workflow easy and straight.

At the end, the development process has been quite long. The first and second prototype was working exactly as this one, but i realized that the workflow was not intuitive. The user had to make a couple of mouse clicks just to have a selection saved. Moreover, the UI was not look like Unity UI. So finally i decided to go a little deeper and understand how IMGUI works, and try to imitate Unity UI.

I am very grateful to David Sevilla for the amazing work he did with the design of all the necessary images for the Store.


Unity Weighted Random

Random number generation is used a lot of times in videogames. The main idea is that we want to generate a random number in the range [x, y] and use it for any purpose. Let look an example from Unity point of view:

We have an array of available items to spawn, and somewhere in our code we do something like this: int index = Random.Range(0, array.Length);

This way we’re going to get a random number, and use it to spawn the item in position index of the array. (just what we want :)) The cons of this method is that all the items in the array have the same probability to be spawned, and sometimes we don’t want this behaviour. Sometimes we want to define a probability for each of the available items. Here it comes Weighted Random.

Weighted Random allow us to define a weight for each item in the array of available items, in consequence, we modify the probability of that item to be spawned. ( I have just used it to modify the probability a life is spawned in a game. I did’t want a life to be spawned with the same probability as a coin :)).

Weighted Random

So, i have uploaded a little Unity project to my github with several classes for generating weighted random integers. Weighted Random

Hope it is useful ^^

Intro to Animation in Blender – Animalada 2015


Animalada is an animation festival that will happen in Seville, Spain, in December from 2nd to 4th. It tries to present to all the social fabric the world of animation, also trying to create relationships between professionals, and also giving novel animators the chance to present their works and meet people within the same sector.

There will be several good talks and presentations. Have a look at the schedule here: http://www.animalada.es/es/agenda/

I am lucky in that i’m going to do a little workshop introducing Blender 3D ( http://www.blender.org/ ), mainly focused on animation. As i said, it would be an introduction to the software, but for sure all people will learn something, including me.

Hope to see you there!! ^^


Cosmos Laundromat


Hi all:

With this name ( Cosmos Laundromat chapter 1 ) Blender institute brings to light his new Open Movie. As always, they sell several versions, all of them with all the Blender content used to render the movie inside. Its a super opportunity to learn a lot about Blender, about new capabilities, and to get the most of this amazing open source 3d software.

Althought i have not been using Blender for a long time i am still in love with it.

Impressive work guys!!



‘Codility’ is a service that offers an awesome way for companies to hire new programmers. On the other hand, it offers an awesome way for developers to demonstrate their programming skills to companies. Basically, a developer has 2 hours to develope a program that resolve a well defined test. At the moment it could be resolved in C, C++, C#, Java, JavaScript, Lua, Objective-C, PHP, Pascal, Perl, Python, Ruby, Scala or VB.NET, focusing in the way a developer thinks, and not in a specific syntax or specific language.

For programmers, ‘Codility’ has several available lessons, where they try to make us think about specific topics ( i.e. “Time Complexity”, “Sorting”, “Fibonacci numbers” ) each of them with a little pdf file with some reading material. I encourage you to test ‘Codility’. The worst thing that it could happen is that you would waste 2 hours.


OOP (Pseudo Object Oriented Programming) in MaxScript

Hi all:

There is some time i have not written in the blog, but i expect that is gonna change currently. I have a bunch of projects at the moment and i guess that i am gonna have some interesting stuff to show you all early. One of them is going to be developed under 3DS Max using MaxScript. Maybe in future versions of 3DS Max i will develop it using Python ( let’s see how the API evolves 😉 )

So, this article tries to explain a way of using MaxScript Struct as an Object ( Object Oriented Programing ). The main reason to do that is to organize our code and our information structures inside MaxScript, cause when a script start to grow and become really large, our organization is one of the most important things to understand what we are doing, write less mistakes, find mistakes faster, and let other people to read and understand our code.

An Struct allow us to store a couple of variables together, as they have some relationship between them. Inside MaxScript Help, we could read some code like this one:



Hi all:

After a long time with no post, i show you all a new program i have been working on for the last 3 weeks. As the name of the post says, its an atlas generator for Presagis Creator, a 3D software focused in the 3D simulation field.


MaxScript Circle using Bézier Curves

This article explains the way i have found to build a Circle using Bézier Curves. I have used 3DSMax and MaxScript to build it, but, of course, it’s the same within any software.  Cubic Bézier  Formula is next:

Bezier Curve Formula

Well, s0, the P0 P1 P2 and P3 are the control points that define the Curve. The t is the position we would like to calculate. So, the start of the Curve is 0 and the End is 1. The definition says that P0 and P1 belongs to the path of the Curve. So, let’s build a 1 unit radius Circle.


some works .2

And finally … here it is. My time in Seville is about to finish, and this video shows what i have been doing in my free time, apart from the flamenco and beers, of course. hope you enjoy

bb ^^