(the product formerly known as) Epoch

Official support for: loomer.co.uk
Locked New Topic
RELATED
PRODUCTS

Post

colin@loomer wrote:Sorry koalaboy; I was hoping yours was a late May rather then early May birthday!
Well, it seems as if you made good use of the long weekend anyway - that's all sounding excellent !!

I'll be here as soon as I'm needed :party:

Post

Cool, I currently learn Grasshopper for Rhino and it has brilliant debugging tools - if you should be interested in some node-inspiration, I can highly recommend a look into it: http://vimeopro.com/rhino/grasshopper-g ... vid-rutten
Most beautifully done nodes I've ever seen.

Another inspiring toolset for the nodes in Blender is this one:
http://wiki.blender.org/index.php/Exten ... ency_Tools
One of my favourite functions is, that you can press STRG and click-drag the mouse over some node connections and it cuts them like a knife - I always found mass-disconnection tiresome in most systems.

Good to hear about your progress.
I entertain myself with some 3D in the meantime... ;-)

Cheers,

Tom
"Out beyond the ideas of wrongdoing and rightdoing, there is a field. I’ll meet you there." · Rumi
UrbanFlow.art · Instagram · YouTube

Post

I ended up having a little rethink and recode of how variables and arrays worked: having multiple reads and multiple write modules just felt wrong. As usual, documenting these things exposes the truth that they aren't quite right. So, with a few tweaks, I've developed a much more flexible system, as well as one that is easier to use. The two data modules, now called Array and Scalar, have single outputs onto which you will connect a chain of variable action modules such as: Read, Write, Size, Find, Contains, Append, Erase, Insert, etc. Each such action module has both a data input and output connection, and so by chaining them together you can build complex operations which closely mirror the standard coding IF ... THEN type structures. Standard data structures such as queues and stacks can be implemented easily too. It's loosely inspired by Unreal's Blueprints handling of variables, and seems to work incredibly well.

It's simplified some of the factory library a great deal, cutting macro module counts down significantly in some instances. It also allows one to easily build in raw modules a lot of the cases that I would previously have said would required Lua scripting.

I'm just waiting for a few icons for the new modules to be completed, after which I'll post a screenshot which'll likely do a clearer job of explaining all this!

(By the way, Grasshopper looks ace. I'm not much of a 3d guy, but it seems a great modular tool.)
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

:tu:

And as for Grasshopper: yes, it is. The first modular modelling system that really makes sense to me - and the implementation is done by a genius who really cares for the user... ;-)
Blender Sverchok is also quite good for a free tool but much more barebones.

As for the wire-cutting function: I made a screenshot:
Image

And the in-place-fuzzy-node-search is also helpful:
Image


Cheers,

Tom
"Out beyond the ideas of wrongdoing and rightdoing, there is a field. I’ll meet you there." · Rumi
UrbanFlow.art · Instagram · YouTube

Post

Grasshopper is pretty cool - it's just a shame Rhino is so expensive.

Another interesting one is Fabric: http://fabricengine.com/

Post

koalaboy wrote:Grasshopper is pretty cool - it's just a shame Rhino is so expensive.

Another interesting one is Fabric: http://fabricengine.com/
Yeah, I'm currently learning Grasshopper with the demo version - thankfully it runs 90 days. :-) I am not so hot on Rhino and just buying it to be able to use Grasshopper feels a bit silly, even if GH is really worth it...

Fabric Engine is quite amazing. I am betatesting their new node based Canvas application ATM. The most mindbending thing for me is: each node IS code. They have this extremely efficient and fast KL language and basically the nodes in Canvas are containers for scripts in that language. So you can simply click on any node to edit what it does, create ports etc. It's also awesome that they use both GPU and CPU with the same code.

Sorry for the off-topic Colin - node lovers united ;-)

Cheers,

Tom
"Out beyond the ideas of wrongdoing and rightdoing, there is a field. I’ll meet you there." · Rumi
UrbanFlow.art · Instagram · YouTube

Post

ThomasHelzle wrote:Sorry for the off-topic Colin - node lovers united ;-)
don't have them mods ban you for provoking the audience with too much nodity... :hihi:

Post

kylie wrote:
ThomasHelzle wrote:Sorry for the off-topic Colin - node lovers united ;-)
don't have them mods ban you for provoking the audience with too much nodity... :hihi:
:tu: :D
I'll try to be more nodest ;-)

Cheers,

Tom
"Out beyond the ideas of wrongdoing and rightdoing, there is a field. I’ll meet you there." · Rumi
UrbanFlow.art · Instagram · YouTube

Post

Maybe we should call it 'Nodulus'

or 'Nodulity'...

... or 'MidiModulaNodularity'

I'm getting a bit Epochraful now ;)

Post

Here's a little look at how arrays and scalar variables are now arranged in the graph view. Actions flow downstream from the array variable, which enables one to easily build standard programming structures.

Image

The T inputs in the screenshot are "Triggers", which on receiving a pulse will cause the module to perform its action. This graph essentially translates into pseudo-code as:

Code: Select all

Every 1/8th beat
    if Array contains value
        get the value index
        erase the item as this index
    else
        add the value to the end of the array
        
    if the array size is over 0
        increment a counter
        modulo the counter's output with the array size
        read the array at this index

(The thru module between Contains and Erase is only there to make it easier to see that the output of Contains connects to the Trigger input of Erase. Thru modules, which simply copy their input to their output, are handy at clearing up overlapping spaghetti wiring.)

It's actually taken from the guts of a little generative preset I've been experimenting with, but simplified for demonstrative purposes. In the 'real' preset, the array is a collection of pitches (in fact, there are two arrays: an array of pitches and an array of velocities), and the input value is taken from the pitch of an input MIDI note. Playing a note will then add it to the array; playing it a second time will remove it. The patch uses the stored pitches and velocities to aleatorically compose a melody from these sources.

(Note that you can actually do the same thing with the Hold module and Arpeggiator module. Consider this a pedagogical rather than useful preset!)
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

colin@loomer wrote:(Consider this a pedagogical rather than useful preset!)
pedagogical as in "how not to hang up laundry for drying" ? 8)

Post

ThomasHelzle wrote:And the in-place-fuzzy-node-search is also helpful.
I'm not sure if I'll get the wire-cutting in place for beta (although it is a good idea, so I'm sure it'll find its way in eventually), but the "quick add" is already in. It works more of less the same as Grasshopper's, although one nice addition is that it automatically opens when you press an alphanumeric key whilst the graph is selected. Typing the first few characters of the module name and then hitting return really is the fastest way of adding nodes.

Alternatively, nodes can be added from a right-click "Add..." menu, and there is also a hide-able browser listing all the modules and macros. This browser view has the advantage in that it also shows the module's help, so is handy for browsing and getting a feel for which modules are available and what they do.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

Nice, thanks Colin ;-)

Cheers,

Tom
"Out beyond the ideas of wrongdoing and rightdoing, there is a field. I’ll meet you there." · Rumi
UrbanFlow.art · Instagram · YouTube

Post

When you create a container of a node structure, is this added to the library so it is available in the browser and right click ?
Duh

Post

bungle wrote:When you create a container of a node structure, is this added to the library so it is available in the browser and right click ?
Yes. Collections of nodes are termed 'Macros', and are available everywhere a standard module is, including in the quick-add browser. Macros do have a little icon in the corner to help you distinguish them from the built-in modules though: it's nice to know at a glance that you can dive into a collection's innards.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Locked

Return to “Loomer”