## Soft skin

Currently working on a library of skinning called SofSkin. It’s purpose is to make skinning in a different way: less rubberish and more mesh/geometry-oriented. The idea is to use edges of the mesh as springs that tries to recover their initial length by pulling/pushing on the vertices. The lexical field is focused on anatomy, to keep the code lifefull.

The integration in godot is on its way, as shown in this video:

The repository is hosted in gitlab: https://gitlab.com/frankiezafe/SoftSkin

• #### frankiezafe 16:45 on 2018-01-03 Permalink | Reply Tags: Blender ( 20 ), generative ( 10 ), material ( 8 ), research

Normal map generation, using blender and processing.org.

Read more here: Notes:Normal map generation.

• #### frankiezafe 11:57 on 2017-04-15 Permalink | Reply Tags: algorithm ( 13 ), announcement ( 7 ), disrupted cities ( 10 ), generative ( 10 ), research

My website being back online, I will document the researches related to disrupted cities in several pages there.

I’m currently working on an algorithm to nicely shrink the blocks detected in the network…

• #### frankiezafe 17:46 on 2017-03-18 Permalink | Reply Tags: dev ( 52 ), generative ( 10 ), math ( 7 ), Openframeworks ( 9 ), random, research

Reviewing the road generation system.

• generation of normal and tangent for each segment (cyan & purple vectors): they can be used easily to generate a new road starting from any point;
• a million better random selection, based on the formula: X1 = a*X0 + b % m;

This random generation merits a bit of attention.

Until now, i was randomly picking a new start point from an existing road to create a new road. The process is consuming, and there is no guarantee to avoid picking several time the same point on the same road.

With the formula above, found in the great numberphile channel (see below), I attribute once and for all a random to each road’s dot. The particularity of this random generation is that it will NEVER repeat two times the same value in one sequence. Once generated, my dots have a number in the range [0,1], with a linear distribution.

For instance, in a line having 10 dots (and therefore 9 segments), each dot will have a random number between 0 and 1. If you order the list of dots by random values, and compare the gap between each sorted values, the average gap will be 0.1!

The way to use this random number is straight forward. If you want to generate a secondary road on 50% of the dot of the first one, you just have to loop over these number and check wherever the random value of the dot is < 0.5. If the distribution was not linear, doing this would not guarantee to create on sub-road every two dots. As it is, you can just specify the percentage, all random calculation has already been done, and in a more controlled way then ofRandomuf() does it.

This formula requires big prime numbers (>10000) to be placed at a and b. Here is the source i used: list of primes.

• #### frankiezafe 00:12 on 2017-03-16 Permalink | Reply Tags: note ( 2 ), research, rigging ( 4 )

too look at closely:

• #### frankiezafe 23:39 on 2016-12-16 Permalink | Reply Tags: algorithm ( 13 ), graph theory ( 2 ), Peel ( 21 ), processing.org ( 4 ), research

Looking for loops in networks.

It’s seems very simple, but when i’ve started to search for a programmatic way to solve this, you ends up with a kind of complexity that seems much too high compared to the problem.

After a bit of research, i found the Rocha Thatte method. It is a very elegant way to detect “cycles” in “directed graphs”. Description in wikipedia.

This is a js implementation, based on the java version, used to study the implementation.

• #### frankiezafe 18:27 on 2016-12-08 Permalink | Reply Tags: choreography, Contredanse ( 8 ), dance ( 3 ), research, Tuning Scores ( 14 )

A two days work session with Florence, Lisa Nelson, @louise and Baptiste.

We went deeper in the improvisation technique of Lisa, by performing a score with Baptiste and also by talking a lot about what Tuning Scores is and is not. The performance and the exchanges have been recorded.

This is an important step for the future of the project: a prototype is ready but there were a lot of blind spots that are becoming brighter and brighter each time we talk.

You can discover the project tomorrow: event

• #### frankiezafe 16:51 on 2016-12-04 Permalink | Reply Tags: design ( 7 ), Pure Data ( 14 ), research

Designing diagram in puredata. Even if the sound is not nice…

• #### frankiezafe 21:29 on 2016-11-16 Permalink | Reply Tags: algorithm ( 13 ), graph theory ( 2 ), Peel ( 21 ), research

Finding cycles in networks.

Since several days, i was trying to solve a problem that will occur in #peel: how to broke a connection when the connection is part of a “cycle” (i’ve called it “loop” until now). This problem is illustrated here:

The beginning of the answer is in wikipedia and uses graph theory >> https://en.wikipedia.org/wiki/Cycle_(graph_theory)

Can’t wait to start coding that 🙂

## Mentholed blender

related issue in bitbucket

A long time ago (2 years maybe), i’ve worked with yacine sebti to make a bridge between a timeline editor in max/msp (yacine’s world) and openframeworks (my former world). The project was called Menthol. This prototype has been used in the void project.

The openframeworks addon is here: https://bitbucket.org/frankiezafe/ofxmenthol

During a 1 hour phone call with yacine, we discussed about how to build a standalone UI for the project. Several ideas where floating, such as a fully custom UI in openframeworks or a QT version, such as Iannix. This one is very good looking, even if yacine and i think that it is not precise enough for our usage.

Then, like each time we spoke about this, blender pops in.

I always liked the graph and the dope sheet panels. It’s a superb 2d simplification, with a lot of features (i just discovered the modifiers, my head is spinnin’!). I quickly draft the modifications to do on these panels to work as a standalone timeline editor.

I’ll investigate this in december!

nb: this feature is part of the polymorph engine presentation :), see here

• #### xuv 20:59 on 2016-11-09 Permalink | Reply

Just saying… Not perfect… but [CTRL]+[T] give you time in seconds instead or next to the frame number (It’s unfortunately not consistent)

c
Compose new post
j
Next post/Next comment
k
Previous post/Previous comment
r
Reply
e
Edit
o
Show/Hide comments
t
Go to top
l
Go to login
h
Show/Hide help
shift + esc
Cancel