Jump to: Board index » General » Fusion

Multiple camera projection

Learn about 3D compositing, animation, broadcast design and VFX workflows.
  • Author
  • Message
Offline

Saso Bogdanov

  • Posts: 15
  • Joined: Fri Sep 04, 2015 9:54 am
  • Location: Ljubljana, Slovenia

Multiple camera projection

PostWed Oct 07, 2015 9:53 am

Hi,

i have problem with 3D viewer when i'm using multiple camera projection.
My setup:
- model with "catcher" for material
- multiple cameras with "Enable Camera Projection" and "Projection Mode -> Texture"

Problem is, that usualy i don't see model (with projections) in 3D viewer (just cameras).
(Sometimes it works if i set Projection Mode to Ambient light on 1 camera. This actualy mean, that camera isn't projecting and i see other projections on model. Usualy this doesn't work. If i don't change anything and i just restart fusion, sometimes everything works and i see all the projections.)
Is this a bug or is maybe graphics card issue? But i tried this on different PCs with different graphics card and it's the same. I have Nvidia Quadro K2200.

Thank you
Offline

Ryan Bloomer

  • Posts: 765
  • Joined: Tue Jul 09, 2013 6:58 pm

Re: Multiple camera projection

PostThu Oct 08, 2015 3:54 pm

I'm currently working on camera projections and have a few questions too, which I'll start another thread for.... do you have a flow you can share. I'll see if I get the same results.
Offline
User avatar

michael vorberg

  • Posts: 943
  • Joined: Wed Nov 12, 2014 8:47 pm
  • Location: stuttgart, germany

Re: Multiple camera projection

PostThu Oct 08, 2015 8:38 pm

dont know if this will fix you problems but this is a very good tutorial on setting up projections:

viewtopic.php?f=22&t=40543&p=234524&sid=9d516e932b8eab28805f2a002a1cb940#p234524
Offline
User avatar

Mark Evans

  • Posts: 20
  • Joined: Thu Oct 01, 2015 11:10 pm

Re: Multiple camera projection

PostFri Oct 09, 2015 12:43 am

I'm not a big fusion user I'm afraid (nuke). And am a 3d guy primarily.
A couple of things you can check
make sure your scales and measurements are in the same space - metric or imperial.
check your object has UVs laid out nicely
be careful of filters, particularly if your baking your textures out.
Outside of that it would probably be a software procedure / graphics card issue. Nuke creates a geo node and sources and references an object.
I'm probably not helping but some thoughts.
Offline

Saso Bogdanov

  • Posts: 15
  • Joined: Fri Sep 04, 2015 9:54 am
  • Location: Ljubljana, Slovenia

Re: Multiple camera projection

PostMon Oct 12, 2015 9:21 am

@Ryan
Please share link of your thread, maybe i can help.
I can't share whole flow, cause i have a lot of loaders. But if you create simple 2 camera (at least) projection like i described, you could see if it works.
I currently don't have problem with my comp, but i know that some day i'll open same comp with same settings, and projections wont show (in 3D viewer) :)

@Michael
You probably pasted wrong link?

@Mark
Thank you. I am also Nuke and Maya user.
I know how projections work in Fusion, Nuke and Maya, but i guess i just have graphics card issue, cause it displays incorrectly only once in a while.
Offline

Ryan Bloomer

  • Posts: 765
  • Joined: Tue Jul 09, 2013 6:58 pm

Re: Multiple camera projection

PostMon Oct 12, 2015 10:50 pm

Hey Saso,

I'm slowly finding solutions to my issues with multiple camera projections. Mostly to do with the "Restricted By Projector ID" if I get really stuck I'll open a new thread.

I have the same issue with as you with projections not showing up in the 3D view once I attach a catcher to the geo I want the projection to be mapped with.... Tried on 2 workstations and a laptop, with the same issue. I tried creating a simple comp to show what is happening, but it in simple setups it works.... wonder if it's a poly count issue?
Offline

Saso Bogdanov

  • Posts: 15
  • Joined: Fri Sep 04, 2015 9:54 am
  • Location: Ljubljana, Slovenia

Re: Multiple camera projection

PostTue Oct 13, 2015 9:10 am

It's probably not poly issue, cause i have heavy 3D building model. I usualy restart fusion and it works.
When my projections didn't work i also tested with new simple comp and it worked. But than i went to my "heavy" comp and it also worked... Funny bug :)
Offline

Ryan Bloomer

  • Posts: 765
  • Joined: Tue Jul 09, 2013 6:58 pm

Re: Multiple camera projection

PostTue Oct 13, 2015 12:53 pm

Interesting, simple scene works for me as well...... I wonder if its a vRam issue.... I render with octane, and once in a while I get errors with vRam space filled when I have multiple apps open at the same time. Closing other apps and restarting application and plugin, then the scene works. I'm guessing restarting Fusion clears the vRam, but after a while in a heavy scene Fusion isn't flushing the vRam? If I run into it again I'll try restarting Fusion and see if it clears.


Also, do you know if there is a limit to how many texture projects you can have. I'm trying to fake baking textures, by texture projecting each object individually. And if there's a limit, I'll start trying to find ways to group projections so I don't break the limit.
Offline

Alkesh Nanavaty

  • Posts: 8
  • Joined: Wed Feb 04, 2015 4:45 am

Re: Multiple camera projection

PostWed Oct 14, 2015 2:32 am

In baking texture, do you combine them first as a single image, or project them individually? Are you projecting all on the same polygon object? The only way i know is by duplicating the 3D geometry - each to recieve one projection, restricted by a projector ID. I have done some videos on multiple projections on YouTube without testing how many i could project.
Regards,

Alkesh
https://www.youtube.com/user/TheAlkesh007
Offline

Saso Bogdanov

  • Posts: 15
  • Joined: Fri Sep 04, 2015 9:54 am
  • Location: Ljubljana, Slovenia

Re: Multiple camera projection

PostWed Oct 14, 2015 10:02 am

I have one more problem. This will be hard to explain so i created very simple setup.
I've put image plane and some cylinders in the scene. I projected 2 circles (1 solid, 1 soft) through projector and view it from same angle. If you look at the "Background1" it should be almost the same as "Renderer3D1", but it isn't (second setup with black background is for comparing -> Renderer3D1_1).
Soft circle has transparent pixels and if i would project it only on image plane it would be alright. But cylinder is round, so i guess projector adds same pixels multiple times. Even if i turn off "project on back faces" it doesn't change much. I also tried all settings in "Catcher" tool.
So fusion projector works that it penetrates all polygons?

Code: Select all
{
   Tools = ordered() {
      Catcher1 = TexCatcher {
         Inputs = {
            MaterialIDNest = Input { Value = 1, },
            MaterialID = Input { Value = 4, },
         },
         ViewInfo = OperatorInfo { Pos = { 605, -247.5, }, },
      },
      Ellipse1_1_1 = EllipseMask {
         Inputs = {
            MaskWidth = Input { Value = 1920, },
            MaskHeight = Input { Value = 1080, },
            PixelAspect = Input { Value = { 1, 1, }, },
            ClippingMode = Input { Value = FuID { "None", }, },
            Center = Input { Value = { 0.7275600505689, 0.5, }, },
            Width = Input { Value = 0.159161546296007, },
            Height = Input { Value = 0.159161546296007, },
            EffectMask = Input {
               SourceOp = "Ellipse1_2",
               Source = "Mask",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 715, -214.5, }, },
      },
      Ellipse1_2 = EllipseMask {
         Inputs = {
            SoftEdge = Input { Value = 0.0594203, },
            MaskWidth = Input { Value = 1920, },
            MaskHeight = Input { Value = 1080, },
            PixelAspect = Input { Value = { 1, 1, }, },
            ClippingMode = Input { Value = FuID { "None", }, },
            Width = Input { Value = 0.337833749294974, },
            Height = Input { Value = 0.337833749294974, },
         },
         ViewInfo = OperatorInfo { Pos = { 715, -247.5, }, },
      },
      Background1_1 = Background {
         Inputs = {
            GlobalOut = Input { Value = 1, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2", }, },
            TopLeftRed = Input { Value = 1, },
            TopLeftGreen = Input { Value = 1, },
            TopLeftBlue = Input { Value = 1, },
            Gradient = Input {
               Value = Gradient {
                  Colors = {
                     [0] = { 0, 0, 0, 1, },
                     [1] = { 1, 1, 1, 1, },
                  },
               },
            },
            EffectMask = Input {
               SourceOp = "Ellipse1_1_1",
               Source = "Mask",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 715, -181.5, }, },
      },
      Shape3D1 = Shape3D {
         Inputs = {
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 3, },
            ["Transform3DOp.Translate.X"] = Input { Value = -0.329199678812742, },
            ["Transform3DOp.Translate.Z"] = Input { Value = 0.0758878114907751, },
            Shape = Input { Value = FuID { "SurfaceCylinderInputs", }, },
            MaterialInput = Input {
               SourceOp = "Catcher1",
               Source = "MaterialOutput",
            },
            ["MtlStdInputs.MaterialID"] = Input { Value = 3, },
            ["SurfaceCylinderInputs.Radius"] = Input { Value = 0.047619, },
            ["SurfaceCylinderInputs.Height"] = Input { Value = 0.6666667, },
            ["SurfaceCylinderInputs.ObjectID.ObjectID"] = Input { Value = 4, },
         },
         ViewInfo = OperatorInfo { Pos = { 605, -148.5, }, },
      },
      ImagePlane3D1_1 = ImagePlane3D {
         Inputs = {
            ["SurfacePlaneInputs.SubdivisionWidth"] = Input { Value = 1, },
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1, },
            MaterialInput = Input {
               SourceOp = "Catcher1_1",
               Source = "MaterialOutput",
            },
            ["MtlStdInputs.MaterialID"] = Input { Value = 1, },
         },
         ViewInfo = OperatorInfo { Pos = { 880, -148.5, }, },
      },
      ImagePlane3D1 = ImagePlane3D {
         Inputs = {
            ["SurfacePlaneInputs.SubdivisionWidth"] = Input { Value = 1, },
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1, },
            MaterialInput = Input {
               SourceOp = "Catcher1",
               Source = "MaterialOutput",
            },
            ["MtlStdInputs.MaterialID"] = Input { Value = 1, },
         },
         ViewInfo = OperatorInfo { Pos = { 495, -148.5, }, },
      },
      Shape3D1_1 = Shape3D {
         Inputs = {
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 3, },
            ["Transform3DOp.Translate.X"] = Input { Value = -0.329199678812742, },
            ["Transform3DOp.Translate.Z"] = Input { Value = 0.0758878114907751, },
            Shape = Input { Value = FuID { "SurfaceCylinderInputs", }, },
            MaterialInput = Input {
               SourceOp = "Catcher1_1",
               Source = "MaterialOutput",
            },
            ["MtlStdInputs.MaterialID"] = Input { Value = 3, },
            ["SurfaceCylinderInputs.Radius"] = Input { Value = 0.047619, },
            ["SurfaceCylinderInputs.Height"] = Input { Value = 0.6666667, },
            ["SurfaceCylinderInputs.ObjectID.ObjectID"] = Input { Value = 4, },
         },
         ViewInfo = OperatorInfo { Pos = { 990, -148.5, }, },
      },
      Catcher1_1 = TexCatcher {
         Inputs = {
            MaterialIDNest = Input { Value = 1, },
            MaterialID = Input { Value = 4, },
         },
         ViewInfo = OperatorInfo { Pos = { 990, -247.5, }, },
      },
      Duplicate3D1_1 = Duplicate3D {
         Inputs = {
            LastCopy = Input { Value = 5, },
            ["Translate.X"] = Input { Value = 0.1818182, },
            SceneInput = Input {
               SourceOp = "Shape3D1_1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 990, -115.5, }, },
      },
      Duplicate3D1 = Duplicate3D {
         Inputs = {
            LastCopy = Input { Value = 5, },
            ["Translate.X"] = Input { Value = 0.1818182, },
            SceneInput = Input {
               SourceOp = "Shape3D1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 605, -115.5, }, },
      },
      Background1 = Background {
         Inputs = {
            GlobalOut = Input { Value = 1, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2", }, },
            TopLeftRed = Input { Value = 1, },
            TopLeftGreen = Input { Value = 1, },
            TopLeftBlue = Input { Value = 1, },
            Gradient = Input {
               Value = Gradient {
                  Colors = {
                     [0] = { 0, 0, 0, 1, },
                     [1] = { 1, 1, 1, 1, },
                  },
               },
            },
            EffectMask = Input {
               SourceOp = "Ellipse1_1",
               Source = "Mask",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 1100, -181.5, }, },
      },
      Ellipse1_1 = EllipseMask {
         Inputs = {
            MaskWidth = Input { Value = 1920, },
            MaskHeight = Input { Value = 1080, },
            PixelAspect = Input { Value = { 1, 1, }, },
            ClippingMode = Input { Value = FuID { "None", }, },
            Center = Input { Value = { 0.7275600505689, 0.5, }, },
            Width = Input { Value = 0.159161546296007, },
            Height = Input { Value = 0.159161546296007, },
            EffectMask = Input {
               SourceOp = "Ellipse1",
               Source = "Mask",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 1100, -214.5, }, },
      },
      Merge1 = Merge {
         Inputs = {
            Background = Input {
               SourceOp = "Background2",
               Source = "Output",
            },
            Foreground = Input {
               SourceOp = "Background1",
               Source = "Output",
            },
            PerformDepthMerge = Input { Value = 0, },
         },
         ViewInfo = OperatorInfo { Pos = { 1100, -148.5, }, },
      },
      Ellipse1 = EllipseMask {
         Inputs = {
            SoftEdge = Input { Value = 0.0594203, },
            MaskWidth = Input { Value = 1920, },
            MaskHeight = Input { Value = 1080, },
            PixelAspect = Input { Value = { 1, 1, }, },
            ClippingMode = Input { Value = FuID { "None", }, },
            Width = Input { Value = 0.337833749294974, },
            Height = Input { Value = 0.337833749294974, },
         },
         ViewInfo = OperatorInfo { Pos = { 1100, -247.5, }, },
      },
      Projector3D1 = LightProjector {
         Inputs = {
            ["Transform3DOp.Translate.X"] = Input { Value = 0.3998363075199, },
            ["Transform3DOp.Translate.Z"] = Input { Value = 1.5, },
            ["Transform3DOp.UseTarget"] = Input { Value = 1, },
            ProjectiveImage = Input {
               SourceOp = "Background1_1",
               Source = "Output",
            },
            ProjectionMode = Input { Value = 2, },
            ProjectOnBackFaces = Input { Value = 0, },
            ["ShadowLightInputs3D.Nest"] = Input { Value = 1, },
            ["ShadowLightInputs3D.ShadowsEnabled"] = Input { Value = 0, },
         },
         ViewInfo = OperatorInfo { Pos = { 715, -82.5, }, },
      },
      Projector3D1_1 = LightProjector {
         Inputs = {
            ["Transform3DOp.Translate.X"] = Input { Value = 0.3998363075199, },
            ["Transform3DOp.Translate.Z"] = Input { Value = 1.5, },
            ["Transform3DOp.UseTarget"] = Input { Value = 1, },
            ProjectiveImage = Input {
               SourceOp = "Merge1",
               Source = "Output",
            },
            ProjectionMode = Input { Value = 2, },
            ProjectOnBackFaces = Input { Value = 0, },
            ["ShadowLightInputs3D.Nest"] = Input { Value = 1, },
            ["ShadowLightInputs3D.ShadowsEnabled"] = Input { Value = 0, },
         },
         ViewInfo = OperatorInfo { Pos = { 1100, -82.5, }, },
      },
      Merge3D2_1 = Merge3D {
         Inputs = {
            SceneInput1 = Input {
               SourceOp = "ImagePlane3D1_1",
               Source = "Output",
            },
            SceneInput2 = Input {
               SourceOp = "Duplicate3D1_1",
               Source = "Data3D",
            },
            SceneInput3 = Input {
               SourceOp = "Projector3D1_1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 990, -82.5, }, },
      },
      Merge3D2 = Merge3D {
         Inputs = {
            SceneInput1 = Input {
               SourceOp = "ImagePlane3D1",
               Source = "Output",
            },
            SceneInput2 = Input {
               SourceOp = "Duplicate3D1",
               Source = "Data3D",
            },
            SceneInput3 = Input {
               SourceOp = "Projector3D1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 605, -82.5, }, },
      },
      Background2 = Background {
         Inputs = {
            GlobalOut = Input { Value = 1, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2", }, },
            Gradient = Input {
               Value = Gradient {
                  Colors = {
                     [0] = { 0, 0, 0, 1, },
                     [1] = { 1, 1, 1, 1, },
                  },
               },
            },
         },
         ViewInfo = OperatorInfo { Pos = { 1210, -148.5, }, },
      },
      Merge3D1 = Merge3D {
         Inputs = {
            SceneInput1 = Input {
               SourceOp = "Merge3D2",
               Source = "Output",
            },
            SceneInput2 = Input {
               SourceOp = "shotCam",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 605, 49.5, }, },
      },
      Merge3D1_1 = Merge3D {
         Inputs = {
            SceneInput1 = Input {
               SourceOp = "Merge3D2_1",
               Source = "Output",
            },
            SceneInput2 = Input {
               SourceOp = "shotCam_1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 990, 49.5, }, },
      },
      shotCam_1 = Camera3D {
         NameSet = true,
         Inputs = {
            ["Transform3DOp.Translate.X"] = Input { Value = 0.399836307519873, },
            ["Transform3DOp.Translate.Z"] = Input { Value = 1.5, },
            ["Transform3DOp.UseTarget"] = Input { Value = 1, },
            AoV = Input { Value = 24.3265863475745, },
            ["Stereo.Mode"] = Input { Value = FuID { "OffAxis", }, },
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 2, },
            ["MtlStdInputs.MaterialID"] = Input { Value = 2, },
         },
         ViewInfo = OperatorInfo { Pos = { 880, 49.5, }, },
      },
      shotCam = Camera3D {
         NameSet = true,
         Inputs = {
            ["Transform3DOp.Translate.X"] = Input { Value = 0.399836307519873, },
            ["Transform3DOp.Translate.Z"] = Input { Value = 1.5, },
            ["Transform3DOp.UseTarget"] = Input { Value = 1, },
            AoV = Input { Value = 24.3265863475745, },
            ["Stereo.Mode"] = Input { Value = FuID { "OffAxis", }, },
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 2, },
            ["MtlStdInputs.MaterialID"] = Input { Value = 2, },
         },
         ViewInfo = OperatorInfo { Pos = { 495, 49.5, }, },
      },
      Renderer3D1 = Renderer3D {
         CtrlWZoom = false,
         Inputs = {
            MotionBlur = Input { Value = 1, },
            Quality = Input { Value = 4, },
            GlobalOut = Input { Value = 1, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2", }, },
            SceneInput = Input {
               SourceOp = "Merge3D1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 605, 115.5, }, },
      },
      Renderer3D1_1 = Renderer3D {
         Inputs = {
            MotionBlur = Input { Value = 1, },
            Quality = Input { Value = 4, },
            GlobalOut = Input { Value = 1, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2", }, },
            SceneInput = Input {
               SourceOp = "Merge3D1_1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 990, 115.5, }, },
      },
   },
}
Offline

Ryan Bloomer

  • Posts: 765
  • Joined: Tue Jul 09, 2013 6:58 pm

Re: Multiple camera projection

PostThu Oct 15, 2015 2:46 pm

Alkesh Nanavaty wrote:In baking texture, do you combine them first as a single image, or project them individually? Are you projecting all on the same polygon object? The only way i know is by duplicating the 3D geometry - each to recieve one projection, restricted by a projector ID. I have done some videos on multiple projections on YouTube without testing how many i could project.


Thanks Alkesh, most of my camera projection knowledge is from your tutorials. They've been a instrumental in my learning, cheers for sharing.

For the process i'm working on now, I'm just baking textures into a single image. But I am exploring baking textures individually so I can re-light in Fusion.

Right now I'm using 3 projectors, but potentially could need about 20 or more. If I start getting crashes or bugs, I'm hoping I can just create 20 separate flows, render each flow through the same render camera and then combine the 2D renders back on to each other. This would be a very long way to do it, but should work.

@Saso, I took a look at your example flow. And I'm stumped too.
Offline
User avatar

Mark Spink

  • Posts: 51
  • Joined: Thu Dec 18, 2014 8:23 am

Re: Multiple camera projection

PostMon Oct 19, 2015 5:13 pm

Hello all

Second try at this, apparently 27Megs is too big to attach here...

Here's my attempt at trying to use Fusion for this with projector IDs and multiple catchers, it sort of works, surprisingly...

(21-10-15 - Sorted the comp out a bit, now it's 8Megs odd)

https://www.dropbox.com/s/ntv4cl0stcw0i ... e.zip?dl=0

The scene should be fairly easy to dissect, I zipped up the OBJ file as it's a bit bulky (haven't re-topoed it yet).
The colour correctors are to see what gets plastered where when active.
It works on frame 0 only, then the masks I painted go mental (see following question No.2).

Hope it's of some use!


Now the questions for the wise amongst you:

1/ Is there any way I can mask the projection images in the 3D view, on the object itself, or in the shot-camera view? (like nuke and / or mari can)
In this rather good tutorial-

Lou Cannizzo is merrily tweaking masks for the projected images in the camera/rendered view, not on the actual images in their loaders, is there similar functionality hidden somewhere in Fusion?

2/ Assuming the previous is currently impossible in Fusion, is there an elegant way to paint a mask onto a image without having to invert it, then paint out the bits you actually want to keep, then invert it again?
With a poly mask I just disconnect it then I can see the image while creating the polymask, with the paint mask you appear to be stuffed, what am I missing?

3/ More Paint questions: How do you manage to get a paint mask to remain the same regardless of what frame you go to? How do you undo a paint stroke without losing half of the previous 5 minutes worth of painting as well? Where on earth can you find some proper documentation / tutorials for the paint in Fusion in general? I obviously had a look at the manual & the tool reference - I would have got more help by asking the bloody cat!
I have had a good search on the web a few times, but it seems a bit like Pappa Midnight's club in 'Constantine': 'Of course you can get in; if you can get in...' in other words- sod all unless you know how to use it already...

4/ How in the name of God do you drop a tool into an existing connection between tools? Whatever I try it just sits there on top of the line, refusing to connect itself inline whatever I do.


All answers / suggestions gratefully accepted!

Cheers
Mark
Last edited by Mark Spink on Tue Oct 20, 2015 1:20 pm, edited 1 time in total.
Offline

Saso Bogdanov

  • Posts: 15
  • Joined: Fri Sep 04, 2015 9:54 am
  • Location: Ljubljana, Slovenia

Re: Multiple camera projection

PostTue Oct 20, 2015 12:18 pm

Hi,
I've downloaded your comp, and took a quick look...

1. I think you can't do that in fusion or maybe i didn't look deep enough :)
funny thing is, that if you make polyline mask it shows in 3D viewport, but its in weird position and you can't manipulate it (don't have too much time now. i'll explore someday).

2. Not sure if understand your question, but what if you connect your paint mask in color corrector and paint, so you see whole image and at the same time you see what you paint. When you finish, you connect mask back to image.

3. By default multistroke is only 1 frame long (and it's also default paint mode), so before i paint, i always switch to stroke. I belive that's also problem for your undo, cause you can undo every stroke separately.

4. Again i'm not sure if i understand you :) ... But if you select a tool (in flow), than pick any tool (from tools menu, or toolbar, or ctrl+space), fusion should place it in the flow connecting it to the selected tool. Even if it's between 2 tools. You can also shift+drag tool on any line to put it between 2 tools.

Hope this helps.
Offline
User avatar

Mark Spink

  • Posts: 51
  • Joined: Thu Dec 18, 2014 8:23 am

Re: Multiple camera projection

PostThu Oct 22, 2015 12:54 am

Saso

Thanks!

Answers 2, 3 & 4 are just what I needed, cheers loads! Now I've got to find the stroke setting!...

Answer 1 I'm starting to believe might be a feature request rather than anything else...


My main problem with projections is this though: how can you project only on front faces the camera can 'see', not ones within the mesh, or behind the non-occluded ones closest to the camera?


Here's a quick thing I threw together to test it: just 5 single poly planes spaced out along Z, Lightwave exported as an obj, then projected with back faces switched off- Fusion definitely projects on ANY front faces, not just non-occluded ones the camera can 'see'...
FrontFaceOnly.PNG
FrontFaceOnly.PNG (763.78 KiB) Viewed 7088 times

Here's the scene, texture projection on the left, light projection on the right, Fusion projects on all faces not actually facing away from the camera, weather they are occluded by other geometry or not.





FrontFaceTest.zip
(3.19 KiB) Downloaded 233 times

Here's the scene & the geo, throw any image into the loader & see if you can manage to project on the closest plane to the camera only, if you manage it let me know how!!!

I tried mucking about with the camera clipping but the projection just goes on past the clipping plane so that's not able to control the depth of the projection, is there a setting for projection depth from the camera I've missed?
Do you think there is much difference using a projector rather than a camera? I've never tried one myself.

Thanks again for the answers. I think as it stands Fusion's camera projection is brilliant, but it works best with cards or more simple 3D meshes, anything with internal cavities or occluded front faces can be a bit of a problem for it.



Cheers
Mark
Offline

Saso Bogdanov

  • Posts: 15
  • Joined: Fri Sep 04, 2015 9:54 am
  • Location: Ljubljana, Slovenia

Re: Multiple camera projection

PostThu Oct 22, 2015 9:09 am

This is exactly same problem that i posted a code couple of posts up...
If you got solid texture (alpha=1), usualy it's not a problem (in some cases it is, i know :)) but it's even bigger problem when you have transparent image (like i posted). At least we can uncheck "back faces" :lol: .

P.S.
You can find stroke setting in the viewer panel (on the side) when you select paint tool. If you right click on the bar and select "button style > icons and text labels", you can easily read what are all the tools. You should have: select, multistroke, cloneMultistroke, stroke, polylineStroke.........

I really hope Paint tool will get some update soon, and major rework. Maybe more like Nuke style.
Offline
User avatar

Mark Spink

  • Posts: 51
  • Joined: Thu Dec 18, 2014 8:23 am

Re: Multiple camera projection

PostThu Oct 22, 2015 3:56 pm

Saso

Found it (by accident), I love the way the tool ref document shows the tool panel, searched that for ages then realised the view had a few new widgets... Crap Docs!!!

Cheers
Mark
Offline
User avatar

Chad Capeland

  • Posts: 3017
  • Joined: Mon Nov 10, 2014 9:40 pm

Re: Multiple camera projection

PostThu Oct 22, 2015 6:39 pm

Mark Spink wrote:Here's the scene & the geo, throw any image into the loader & see if you can manage to project on the closest plane to the camera only, if you manage it let me know how!!!


ShadowProjection.gif
ShadowProjection.gif (76.9 KiB) Viewed 7060 times


You mean like this? I rotated the FBX so there'd be partial occlusion for the planes in the back.

- Chad
Chad Capeland
Indicated, LLC
www.floweffects.com
Offline

Saso Bogdanov

  • Posts: 15
  • Joined: Fri Sep 04, 2015 9:54 am
  • Location: Ljubljana, Slovenia

Re: Multiple camera projection

PostFri Oct 23, 2015 9:13 am

Chad,
can you please copy/paste code?
(i really don't know how you did this, just by looking this image :D )
Offline
User avatar

michael vorberg

  • Posts: 943
  • Joined: Wed Nov 12, 2014 8:47 pm
  • Location: stuttgart, germany

Re: Multiple camera projection

PostFri Oct 23, 2015 11:52 am

i think the secret is the "custom shader 3d" node
Offline
User avatar

Mark Spink

  • Posts: 51
  • Joined: Thu Dec 18, 2014 8:23 am

Re: Multiple camera projection

PostSat Oct 24, 2015 12:02 pm

Chad Capeland wrote:
Mark Spink wrote:Here's the scene & the geo, throw any image into the loader & see if you can manage to project on the closest plane to the camera only, if you manage it let me know how!!!


ShadowProjection.gif


You mean like this? I rotated the FBX so there'd be partial occlusion for the planes in the back.

- Chad




Chad

You've got me: how did you do that? Please post the comp file!
What's going on in that comp? Please explain...


Mark
Offline
User avatar

Chad Capeland

  • Posts: 3017
  • Joined: Mon Nov 10, 2014 9:40 pm

Re: Multiple camera projection

PostSat Oct 24, 2015 12:36 pm

Wrote a plugin to see if it was doable. Took all of 3 minutes to try, making the gif took longer. I wasn't trying to explain how to do it, wanted to know if I understood the problem correctly.
Chad Capeland
Indicated, LLC
www.floweffects.com
Offline
User avatar

Mark Spink

  • Posts: 51
  • Joined: Thu Dec 18, 2014 8:23 am

Re: Multiple camera projection

PostSat Oct 24, 2015 10:28 pm

Chad Capeland wrote:Wrote a plugin to see if it was doable. Took all of 3 minutes to try, making the gif took longer. I wasn't trying to explain how to do it, wanted to know if I understood the problem correctly.


Chad

Looks like it to me, is the projection using texture projection, so masked bits of the object are effectively cut away? If that's the case it is what I'm trying to do.
Or to put it another way, if your solution can project only onto front faces of the object not occluded from the projection camera by other geometry then yes, that's what I'm looking for.

https://www.dropbox.com/s/hgboclk20n250 ... h.jpg?dl=0
Hers's an example- the red projection is projecting from the 'front' of the object set to project on back faces to cover the whole object with texture, then I'm projecting the green & blue cameras from 'behind' the object. The 2 highlighted bits of the image show where the green camera projects through the faces I want it on & hits occluded faces where I don't want it to go, stopping the red projection from showing there. I can't mask these bits out of the green projection without losing texture I do need from it on the back faces of the object that it can 'see' directly.

You lost me at the 'wrote a plugin' bit, which even if I knew how to do, I believe the free version of Fusion would not allow me to run.
I thought the Custom 3D shader was missing!...

So basically Fusion can't project on only non occluded front faces as standard then?


Cheers
Mark
Offline
User avatar

Chad Capeland

  • Posts: 3017
  • Joined: Mon Nov 10, 2014 9:40 pm

Re: Multiple camera projection

PostSun Oct 25, 2015 1:40 am

Mark Spink wrote:So basically Fusion can't project on only non occluded front faces as standard then?


Correct.
Chad Capeland
Indicated, LLC
www.floweffects.com

Return to Fusion

Who is online

Users browsing this forum: Steve@Aberdeen and 41 guests