AWS Thinkbox Discussion Forums

Nth For mF Debugger?

Maybe I shouldn’t abbreviate magmaFlow :smiley:

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:

  1. add magmaMod

  2. open editor, open debugger

  3. change Nth

  4. Index results are as expected

  5. Add an preset flow

  6. open Debugger

  7. exception thrown

I get an exception on line 142 :frowning:

[code]---------------------------
MAXScript RCMenu function Exception

– Unable to convert: undefined to type: String

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 :slight_smile:

New Beta build v2.0.2.46508 contains this change plus many more, please give it a try:
thinkboxsoftware.com/krakato … uilds-beta

Privacy | Site terms | Cookie preferences