Page 1 of 1

Sphere texture

PostPosted: Sat Mar 23, 2024 10:43 pm
by silbercue
I need to integrate a lamp as a 3D object in Fusion.

I've never done anything like this before and in my research I haven't found any tutorials. Only tutorials for Blender, or how to create a texture yourself in Davinci Resolve and place it on a sphere. But I probably have to photograph this lamp from several angles and then create a texture. Has anyone already done this who could give me a tip?

Re: Sphere texture

PostPosted: Sat Mar 23, 2024 11:54 pm
by Bryan Ray
How much coverage do you need? That is, are you going to see this lamp from more than one side in a single shot? If not, then I'd probably just take a good, evenly lit photo of it from one side, with as long a lens as you can manage, then use a planar projection onto the geometry. Depending on how big it is in frame, it may even hold up if you move to the side, but the further off-axis you go, the more it will degrade.

Code: Select all
{
   Tools = ordered() {
      UVMap3D1 = UVMap {
         CtrlWZoom = false,
         Inputs = {
            SceneInput = Input {
               SourceOp = "Shape3D1",
               Source = "Output",
            },
            Orientation = Input { Value = 2, },
            ["Size.X"] = Input { Value = 2.048, },
            ["Size.Y"] = Input { Value = 1.654, },
            ["Center.X"] = Input { Value = 0.0800183117389679, },
            ["Center.Y"] = Input { Value = -0.149710655212402, },
         },
         ViewInfo = OperatorInfo { Pos = { 770, 16.5 } },
      },
      Shape3D1 = Shape3D {
         Inputs = {
            ["Transform3DOp.Translate.X"] = Input { Value = 0.0800183328950512, },
            ["Transform3DOp.Translate.Y"] = Input { Value = -0.149710661547296, },
            ["Transform3DOp.ScaleLock"] = Input { Value = 0, },
            ["Transform3DOp.Scale.Y"] = Input { Value = 0.828, },
            Shape = Input { Value = FuID { "SurfaceSphereInputs" }, },
            MaterialInput = Input {
               SourceOp = "Crop1",
               Source = "Output",
            },
            ["MtlStdInputs.MaterialID"] = Input { Value = 1, },
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1, },
            ["SurfaceSphereInputs.ObjectID.ObjectID"] = Input { Value = 2, }
         },
         ViewInfo = OperatorInfo { Pos = { 660, 16.5 } },
      },
      Crop1 = Crop {
         Inputs = {
            XOffset = Input { Value = 235, },
            YOffset = Input { Value = 74, },
            XSize = Input { Value = 589, },
            YSize = Input { Value = 519, },
            Input = Input {
               SourceOp = "Loader1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 495, 16.5 } },
      },
      Loader1 = Loader {
         Clips = {
            Clip {
               ID = "Clip1",
               Filename = "C:\\Users\\Bryan\\Desktop\\_temp_img\\lamp.jpg",
               FormatID = "JpegFormat",
               StartFrame = -1,
               LengthSetManually = true,
               TrimIn = 0,
               TrimOut = 0,
               ExtendFirst = 0,
               ExtendLast = 0,
               Loop = 0,
               AspectMode = 0,
               Depth = 0,
               TimeCode = 0,
               GlobalStart = 0,
               GlobalEnd = 0
            }
         },
         Inputs = {
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            EffectMask = Input {
               SourceOp = "Polygon1",
               Source = "Mask",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 385, 16.5 } },
      },
      Polygon1 = PolylineMask {
         DrawMode = "InsertAndModify",
         DrawMode2 = "InsertAndModify",
         Inputs = {
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            MaskWidth = Input { Value = 1920, },
            MaskHeight = Input { Value = 1080, },
            PixelAspect = Input { Value = { 1, 1 }, },
            ClippingMode = Input { Value = FuID { "None" }, },
            Polyline = Input {
               SourceOp = "Polygon1Polyline",
               Source = "Value",
            },
            Polyline2 = Input {
               Value = Polyline {
               },
               Disabled = true,
            },
         },
         ViewInfo = OperatorInfo { Pos = { 275, 16.5 } },
      },
      Polygon1Polyline = BezierSpline {
         SplineColor = { Red = 173, Green = 255, Blue = 47 },
         CtrlWZoom = false,
         NameSet = true,
         KeyFrames = {
            [0] = { 0, Flags = { Linear = true, LockedY = true }, Value = Polyline {
                  Closed = true,
                  Points = {
                     { X = -0.06975, Y = 0.225, LX = -0.0164561757807726, LY = -0.00382789866584063, RX = 0.00224999999999999, RY = 0.014 },
                     { Linear = true, X = -0.063, Y = 0.267, LX = -0.00224999999999999, LY = -0.014, RX = 0.0025, RY = 0.00266666666666667 },
                     { X = -0.0555, Y = 0.275, LX = -0.006, LY = -0.002, RX = 0.0276469336668006, RY = 0.00921564455560019 },
                     { X = 0.02925, Y = 0.29, LX = -0.0150024178702589, LY = -0.000933301517849067, RX = 0.0301744037082434, RY = 0.00187715187142706 },
                     { X = 0.1035, Y = 0.279, LX = -0.00524999999999998, LY = 0.003, RX = 0.00960898039850116, RY = -0.00549084594200069 },
                     { X = 0.116689367155736, Y = 0.241060570351167, LX = -0.00206347861850188, LY = 0.016051123267059, RX = 0.0221786986659562, RY = -0.00677904905358446 },
                     { X = 0.183598196924165, Y = 0.216070469007777, LX = -0.0121670799540432, LY = 0.0098298480345216, RX = 0.0569098011678942, RY = -0.0459777283677146 },
                     { X = 0.314909050733604, Y = 0.0102323827480556, LX = -0.0156334156946494, LY = 0.0671586049452417, RX = 0.0187800801881262, RY = -0.080676162575658 },
                     { X = 0.306, Y = -0.199, LX = 0.0107376347791902, LY = 0.0324374584963693, RX = -0.0219551178393512, RY = -0.0663244968134916 },
                     { X = 0.211280316422132, Y = -0.349373713567444, LX = 0.0172574001980434, LY = 0.0150064349548205, RX = -0.021433890795211, RY = -0.0186381659088792 },
                     { X = 0.1395, Y = -0.385666666666667, LX = 0.00752989203176389, LY = 0, RX = -0.00762840168381937, RY = 0 },
                     { X = 0.116734841788934, Y = -0.388787807369, LX = 0.00674020225883116, LY = 0.00138113233059619, RX = -0.0378977807002002, RY = -0.00776562010647463 },
                     { X = 0.00329459077249417, Y = -0.400373713567444, LX = 0.0341490495436117, LY = 0.00101415591972177, RX = -0.0391703045267822, RY = -0.00116327677472894 },
                     { X = -0.111507910553297, Y = -0.379252572865111, LX = 0.0120988021404355, LY = -0.00424519373348624, RX = -0.0353118912992383, RY = 0.0123901372979784 },
                     { X = -0.203871265688527, Y = -0.300727237017833, LX = 0.00889945163648412, LY = -0.0164297568673553, RX = -0.0296757424843819, RY = 0.0547859861250123 },
                     { X = -0.264007689588121, Y = -0.114515829994501, LX = 0.0044010059667664, LY = -0.079094519769429, RX = -0.00392443053709392, RY = 0.0705295450730681 },
                     { X = -0.226159050733604, Y = 0.091565716081389, LX = -0.0287766199067925, LY = -0.0563579293486835, RX = 0.0225005724954086, RY = 0.0440665261976075 },
                     { X = -0.137818543397561, Y = 0.194141723623223, LX = -0.0194434058261738, LY = -0.00946472559547923, RX = 0.0232196402635864, RY = 0.0113029335233411 }
                  }
               } }
         }
      }
   }
}

Re: Sphere texture

PostPosted: Sun Mar 24, 2024 11:23 am
by silbercue
Hello Byian, thank you for your quick reply. Yes, unfortunately I will see the object from several sides, because the camera is moving in the scene.

Greetings to Los Angeles))

Re: Sphere texture

PostPosted: Sun Mar 24, 2024 12:00 pm
by KrunoSmithy
silbercue wrote:I need to integrate a lamp as a 3D object in Fusion.

I've never done anything like this before and in my research I haven't found any tutorials. Only tutorials for Blender, or how to create a texture yourself in Davinci Resolve and place it on a sphere. But I probably have to photograph this lamp from several angles and then create a texture. Has anyone already done this who could give me a tip?


Well bascially in 3D workspace in Fusion you just create a sphere and add materials to it, and light it, match the camera and you can have in in the scene. I will assume 3D camera tracking and Fusion basics are something you already know... but for materials... here are some tutorials. Also you might want to combine various materials and add some subsurface scattering for a lamp effect.



You want to use PBR materials in FUSION?


TILE MATERIALS!!! Davinci Resolve 17 - FUSION!


How to combine materials in Fusion


SUBSURFACE SCATTERING!!! Davinci Resolve 17 - FUSION!

Re: Sphere texture

PostPosted: Sun Mar 24, 2024 5:12 pm
by Bryan Ray
silbercue wrote:Hello Byian, thank you for your quick reply. Yes, unfortunately I will see the object from several sides, because the camera is moving in the scene.

Greetings to Los Angeles))


In that case, you're going to need some software other than Fusion, I think. Wrapping a rectangular texture onto a spherical (or near-spherical) object can be tricky. Although there are probably tools to help out in the Karta VR package available in Reactor, that's an awful lot of stuff to sort through.

Take a look at Reality Capture: https://www.capturingreality.com/
I'm not sure what the licensing situation is with it at the moment for new users — sometime in April it's supposed to change to being free for projects that gross less than US$1 million. I think right now it charges per-export, but the cost for something like your lamp should be only pennies.

You'll need an Epic Games account to set it up.

Go through the tutorial to see how it works, and at the end export FBX with textures so you can see how it imports into Fusion

Re: Sphere texture

PostPosted: Mon Mar 25, 2024 4:07 pm
by Sam Steti
silbercue wrote:But I probably have to photograph this lamp from several angles and then create a texture. Has anyone already done this who could give me a tip?

Take any iPhone from version 12, use Lidar (Polycam app) > make it a 3D object > send it to yourself the more convenient way as an OBJ or FBX > merge it in your comp

Re: Sphere texture

PostPosted: Tue Mar 26, 2024 3:56 pm
by silbercue
Very very good tips! Because I have a Mac, I worked with PhotoCatch and was able to implement it perfectly. I took about 30 pictures of the lamp - settings were high quality, show advanced, sequential (because I shot my pictures in a row), feature sensitivity on high (was apparently important in this case, otherwise it wouldn't have worked). Waited a few minutes, a few post-processing steps in Blender and done.