Maybe I shouldn’t abbreviate magmaFlow
I assume and it also appears the the mF debugger grabs data by order/index/id? Can we get an Nth in there so we can see a larger spread in the debug particles? Like PDV
Maybe I shouldn’t abbreviate magmaFlow
I assume and it also appears the the mF debugger grabs data by order/index/id? Can we get an Nth in there so we can see a larger spread in the debug particles? Like PDV
Sure, will do.
Here is a prototype (the ZIP also contains yesterday’s fixes for KCM conversion).
Give it a try…
(REMOVED, SEE BELOW)
It works as expected until I add a preset flow:
add magmaMod
open editor, open debugger
change Nth
Index results are as expected
Add an preset flow
open Debugger
exception thrown
I get an exception on line 142
OK
---------------------------[/code]
if theNodeType as name != #Output do columnName += " \""+theNodeName+"\""
The Preset flow I used:
(--MAGMAFLOW2--
global MagmaFlowEditor_EditBLOPHistory = #()
magmaNode.note=""
node0 = magmaNode.createNode "Output"
magmaNode.setNumNodeInputs node0 1
magmaNode.setNumNodeOutputs node0 0
magmaNode.setNodeProperty node0 "channelName" "Color"
magmaNode.setNodeProperty node0 "channelType" "float16[3]"
magmaNode.DeclareExtensionProperty node0 "Position"
magmaNode.SetNodeProperty node0 "Position" [400,150]
magmaNode.DeclareExtensionProperty node0 "Selected"
magmaNode.SetNodeProperty node0 "Selected" true
--------------------------------------------
node1 = magmaNode.createNode "Blend"
magmaNode.setNumNodeInputs node1 3
magmaNode.setNumNodeOutputs node1 1
magmaNode.setNodeInputDefaultValue node1 3 0.0
magmaNode.DeclareExtensionProperty node1 "Position"
magmaNode.SetNodeProperty node1 "Position" [610,40]
magmaNode.DeclareExtensionProperty node1 "Selected"
magmaNode.SetNodeProperty node1 "Selected" true
--------------------------------------------
node2 = magmaNode.createNode "InputValue"
magmaNode.setNumNodeInputs node2 0
magmaNode.setNumNodeOutputs node2 1
magmaNode.setNodeProperty node2 "forceInteger" false
ctrl=Point3_XYZ(); ctrl.value = [0,1.41176,10]
magmaNode.setNodeProperty node2 "controller" ctrl
magmaNode.DeclareExtensionProperty node2 "Position"
magmaNode.SetNodeProperty node2 "Position" [450,40]
magmaNode.DeclareExtensionProperty node2 "Selected"
magmaNode.SetNodeProperty node2 "Selected" true
--------------------------------------------
node3 = magmaNode.createNode "InputValue"
magmaNode.setNumNodeInputs node3 0
magmaNode.setNumNodeOutputs node3 1
magmaNode.setNodeProperty node3 "forceInteger" false
ctrl=Point3_XYZ(); ctrl.value = [10,10,10]
magmaNode.setNodeProperty node3 "controller" ctrl
magmaNode.DeclareExtensionProperty node3 "Position"
magmaNode.SetNodeProperty node3 "Position" [450,80]
magmaNode.DeclareExtensionProperty node3 "Selected"
magmaNode.SetNodeProperty node3 "Selected" true
--------------------------------------------
node4 = magmaNode.createNode "InputChannel"
magmaNode.setNumNodeInputs node4 0
magmaNode.setNumNodeOutputs node4 1
magmaNode.setNodeProperty node4 "channelName" "Velocity"
magmaNode.setNodeProperty node4 "channelType" ""
magmaNode.DeclareExtensionProperty node4 "Position"
magmaNode.SetNodeProperty node4 "Position" [450,140]
magmaNode.DeclareExtensionProperty node4 "Selected"
magmaNode.SetNodeProperty node4 "Selected" true
--------------------------------------------
node5 = magmaNode.createNode "Magnitude"
magmaNode.setNumNodeInputs node5 1
magmaNode.setNumNodeOutputs node5 1
magmaNode.DeclareExtensionProperty node5 "Position"
magmaNode.SetNodeProperty node5 "Position" [450,180]
magmaNode.DeclareExtensionProperty node5 "Selected"
magmaNode.SetNodeProperty node5 "Selected" true
--------------------------------------------
node6 = magmaNode.createNode "Divide"
magmaNode.setNumNodeInputs node6 2
magmaNode.setNumNodeOutputs node6 1
magmaNode.setNodeInputDefaultValue node6 1 1.0
magmaNode.setNodeInputDefaultValue node6 2 15.0
magmaNode.DeclareExtensionProperty node6 "Position"
magmaNode.SetNodeProperty node6 "Position" [450,230]
magmaNode.DeclareExtensionProperty node6 "Selected"
magmaNode.SetNodeProperty node6 "Selected" true
--------------------------------------------
node7 = magmaNode.createNode "InputValue"
magmaNode.setNumNodeInputs node7 0
magmaNode.setNumNodeOutputs node7 1
magmaNode.setNodeProperty node7 "forceInteger" false
ctrl=bezier_float(); ctrl.value = 150.0
magmaNode.setNodeProperty node7 "controller" ctrl
magmaNode.DeclareExtensionProperty node7 "Exposed"
magmaNode.SetNodeProperty node7 "Exposed" true
magmaNode.DeclareExtensionProperty node7 "Name"
magmaNode.SetNodeProperty node7 "Name" "Blend Divisor"
magmaNode.DeclareExtensionProperty node7 "Position"
magmaNode.SetNodeProperty node7 "Position" [450,300]
magmaNode.DeclareExtensionProperty node7 "Selected"
magmaNode.SetNodeProperty node7 "Selected" true
--------------------------------------------
try(magmaNode.setNodeInput node0 1 node1 1)catch()
try(magmaNode.setNodeInput node1 1 node2 1)catch()
try(magmaNode.setNodeInput node1 2 node3 1)catch()
try(magmaNode.setNodeInput node1 3 node6 1)catch()
try(magmaNode.setNodeInput node5 1 node4 1)catch()
try(magmaNode.setNodeInput node6 1 node5 1)catch()
try(magmaNode.setNodeInput node6 2 node7 1)catch()
--------------------------------------------
)
Ah fudge it does it if you just add an unwired logic node to the flow too.
Fixed.
When a new node is added, it does not have a name initially (the node names are not needed internally and are just a custom UI property).
The flow shows the Type as Name until the name property actually gets updated.
I fixed it to use the Type as Name in the Debugger if the Name property returns undefined.
Krakatoa_MagmaFlow_20120126.zip (73.9 KB)
Solid! Works fine so far
New Beta build v2.0.2.46508 contains this change plus many more, please give it a try:
thinkboxsoftware.com/krakato … uilds-beta