Page 1 of 1

Network style graphic possible ?

PostPosted: Thu Nov 02, 2017 7:52 am
by Wolfgang Baer
Does somebody has a link to a tutorial etc. showing how to make a network style inforgraphic, but in 3D.

Font-Chars_Network.png
Font-Chars_Network.png (53.26 KiB) Viewed 1476 times


I made a font with a few IOT icons.
Is it posibble to duplicate them e.g. with Replicate 3D or something else and then automatically create connectors between those individual instances of the characters? And, it is possible to let them look better than in my example image?

Many thanks for help in advance.

Re: Network style graphic possible ?

PostPosted: Thu Nov 02, 2017 12:07 pm
by Marc van Vliet
This can be done using Connect3D from Krokodove. So you need Fusion Studio for this approach:

Code: Select all
{
   Tools = ordered() {
      pEmitter1 = pEmitter {
         ID = 3,
         Inputs = {
            Number = Input { Value = 1, },
            ["ParticleStyle.ColorOverLife"] = Input {
               Value = Gradient {
                  Colors = {
                     [0] = { 1, 1, 1, 1 }
                  }
               },
            },
            ["ParticleStyle.Size"] = Input { Value = 1, },
            ["ParticleStyle.SizeOverLife"] = Input {
               SourceOp = "pEmitter1SizeoverLife",
               Source = "Value",
            },
            ["ParticleStyle.FadeControls"] = Input { Value = 1, },
            ["ParticleStyle.FadeIn"] = Input { Value = 0.23, },
            ["ParticleStyle.FadeOut"] = Input { Value = 0.828, },
            ["ParticleStyle.BlurOverLife"] = Input {
               SourceOp = "pEmitter1BluroverLife2D",
               Source = "Value",
            },
            ["SphereRgn.Size"] = Input { Value = 10, },
            ["ParticleStyleBitmap.Animate"] = Input { Value = 2, },
         },
         ViewInfo = OperatorInfo { Pos = { 825, 181.5 } },
      },
      pEmitter1SizeoverLife = LUTBezier {
         KeyColorSplines = {
            [0] = {
               [0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
               [1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
            }
         },
         SplineColor = { Red = 192, Green = 128, Blue = 64 },
         NameSet = true,
      },
      pEmitter1BluroverLife2D = LUTBezier {
         KeyColorSplines = {
            [0] = {
               [0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
               [1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
            }
         },
         SplineColor = { Red = 192, Green = 128, Blue = 64 },
         NameSet = true,
      },
      pTurbulence1 = pTurbulence {
         ID = 19,
         Inputs = {
            StrengthOverLifeLUT = Input {
               SourceOp = "pTurbulence1StrengthoverLifeLUT",
               Source = "Value",
            },
            Input = Input {
               SourceOp = "pEmitter1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 935, 181.5 } },
      },
      pTurbulence1StrengthoverLifeLUT = LUTBezier {
         KeyColorSplines = {
            [0] = {
               [0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
               [1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
            }
         },
         SplineColor = { Red = 192, Green = 128, Blue = 64 },
         NameSet = true,
      },
      pRender1 = pRender {
         Inputs = {
            _MotionBlurWarning = Input { Disabled = true, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            OutputMode = Input { Disabled = true, },
            IntegrationMethod = Input { Value = FuID { "RK4" }, },
            ["MaterialID.MaterialID"] = Input { Value = 1, },
            ["ObjectID.ObjectID"] = Input { Value = 1, },
            Input = Input {
               SourceOp = "pTurbulence1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 1100, 181.5 } },
      },
      Instance_pEmitter1 = pEmitter {
         ID = 14,
         SourceOp = "pEmitter1",
         Inputs = {
            VelocityControls = Input { },
            RotationControls = Input { },
            Rotation = Input { },
            RotationVariance = Input { },
            Spin = Input { },
            SpinVariance = Input { },
            Style = Input { Value = FuID { "ParticleStyleBitmap" }, },
            StartEndRenderScripts = Input { },
            ["ParticleStyle.ColorControls"] = Input { },
            ["ParticleStyle.ColorVariance"] = Input { },
            ["ParticleStyle.ColorOverLifeControls"] = Input { },
            ["ParticleStyle.SizeControls"] = Input { Value = 1, },
            ["ParticleStyle.FadeControls"] = Input { Value = 1, },
            ["ParticleStyle.MergeControls"] = Input { },
            ["ParticleStyle.BlurControls"] = Input { },
            ["SphereRgn.Translation"] = Input { },
            ["SphereRgn.Rotation"] = Input { },
            ["SphereRgn.PivotNest"] = Input { },
            ["ParticleStyleBitmap.DropToolsHere"] = Input {
               SourceOp = "Text1",
               Source = "Output",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 825, 346.5 } },
      },
      Instance_pTurbulence1 = pTurbulence {
         ID = 21,
         CtrlWZoom = false,
         SourceOp = "pTurbulence1",
         Inputs = {
            StrengthOverLife = Input { },
            Input = Input {
               SourceOp = "Instance_pEmitter1",
               Source = "Output",
            },
            StartEndRenderScripts = Input { },
         },
         ViewInfo = OperatorInfo { Pos = { 935, 346.5 } },
      },
      Instance_pRender1 = pRender {
         SourceOp = "pRender1",
         Inputs = {
            _MotionBlurWarning = Input { Disabled = true, },
            ["Gamut.ColorSpaceNest"] = Input { },
            ["Gamut.GammaSpaceNest"] = Input { },
            OutputMode = Input { Disabled = true, },
            ["MaterialID.Nest"] = Input { },
            ["ObjectID.Nest"] = Input { },
            Translation = Input { },
            Rotation = Input { },
            PivotNest = Input { },
            Input = Input {
               SourceOp = "Instance_pTurbulence1",
               Source = "Output",
            },
            Camera = Input { },
            StartEndRenderScripts = Input { },
            EffectMask = Input { }
         },
         ViewInfo = OperatorInfo { Pos = { 1100, 346.5 } },
      },
      Text1 = TextPlus {
         Inputs = {
            Width = Input { Value = 1000, },
            Height = Input { Value = 1000, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            Size = Input { Value = 0.5, },
            Font = Input { Value = "Open Sans", },
            StyledText = Input {
               SourceOp = "TextScramble1",
               Source = "ScrambledText",
            },
            Style = Input { Value = "Bold", },
            ManualFontKerningPlacement = Input {
               Value = StyledText {
                  Array = {
                  },
                  Value = ""
               },
            },
            ShadingGradient1 = Input {
               Value = Gradient {
                  Colors = {
                     [0] = { 0, 0, 0, 1 },
                     [1] = { 1, 1, 1, 1 }
                  }
               },
            },
         },
         ViewInfo = OperatorInfo { Pos = { 715, 346.5 } },
      },
      TextScramble1 = TextScramble {
         CtrlWZoom = false,
         Inputs = {
            Randomness = Input { Value = 0.228, },
            InputText = Input { Value = "A", },
            AnimateOnRandomness = Input { Value = 0, },
         },
      },
      Merge3D1 = Merge3D {
         Inputs = {
            SceneInput1 = Input {
               SourceOp = "Connect3D1",
               Source = "Output",
            },
            SceneInput2 = Input {
               SourceOp = "Instance_pRender1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 1265, 346.5 } },
      },
      Connect3D1 = KomkomDoorn.KD_Connect3D {
         Inputs = {
            SceneInput = Input {
               SourceOp = "pRender1",
               Source = "Output",
            },
            LengthMinimum = Input { Value = 0.363, },
            LengthMaximum = Input { Value = 2.56, },
            ["Connection.MtlStdInputs.MaterialID"] = Input { Value = 2, },
            ["Vertex.MtlStdInputs.MaterialID"] = Input { Value = 3, },
         },
         ViewInfo = OperatorInfo { Pos = { 1265, 181.5 } },
      }
   }
}


This should get you started...

Good luck!

Re: Network style graphic possible ?

PostPosted: Sat Nov 04, 2017 3:00 pm
by Wolfgang Baer
Many thank. Copy pasted your code into Fusion 9.0.1 Studio. As soon as I move the time slider Fusion craches.
Trying to get it running. But don't know where to search for what is causing the crash.


Edit:
Ok, it is the connect 3d node that causes the crash.

Which version of Krokodove / Fusion do you use? Maybe someting not compatible with FU 9.0.1 and KD v7_10_01 ?

Re: Network style graphic possible ?

PostPosted: Tue Nov 07, 2017 2:43 pm
by Marc van Vliet
Hi,

Using Fusion Studio 9.0 Build 13, and Krokodove v7.00.03

So both cases not the latest version. I read that latest Fusion was not that stable so I stuck to the latest 'stable' version...

Re: Network style graphic possible ?

PostPosted: Tue Nov 07, 2017 8:14 pm
by Sander de Regt
Version 9.0 is in no way more stable than 9.01. Version 8 maybe. 7.x definitely, but then you miss out on all the new and good stuff.