Issue - FPS arms invisible

baroseiro

New member
Hi,

So, a little background.
I am using Ultimate Character Controller, on Unity 2019.4.1f1 and using URP.

I am creating a character with both first and third perspective.

The issue, per my observation is that when I switch to FPS, the arms material shaders are "all" changed to InvisibleShadowCasterUniversalRP. And when I switch back to ThirdPerson, the shaders come back to Lit. I think this behaviour is completely the opposite of the expected.

I can't find anything wrong in the config, all by the book but this behaviour looks like inverted somehow.

I am attaching the arms when running in FPS mode.
 

Attachments

  • screen when in FPS.png
    screen when in FPS.png
    149.2 KB · Views: 8
Can you try first setting up using the Nolan character with the standard pipeline? This playlist contains a couple of videos that go through the setup for both first and third person character creation in detail. If you're able to set up with the standard pipeline correctly, then you can simply upgrade to URP by changing the perspective monitor material - there shouldn't be an issue after upgrading to the URP if everything works fine with the standard pipeline. In this case you may well have an object assigned incorrectly as the materials on the first person arms shouldn't get swapped out like this.
 
Thanks for the hint.
Apart of learning the lesson to do not be doing this stuff at 4AM, I now did what you said, basically start again with the demo character. But I started using URP, I didn't feel that was the issue but perhaps the model I was using (which wasn't the Nolan).

So, all looked good with Nolan and then I just did the same with my character (plus Nolan arms for FPS) and I think I found the issue. My model is using one single mesh and I think I have chosen the wrong third person body parts to be hidden when in FPS mode.

Now all works fine but I still see the Nolan arms and my model arms. Will need to find a way to slice my model mesh in order to hide the arms.

I did controllers before (though fed up of reinventing the wheel, hence finally opt by using UCC) and I have been trying for long time to have one single mesh (no individual arms). Its a pain but with some IK its kinda possible, and we just need to accept the fact that the weapon will have a more variable visible area depending on the mouse Y position and more bouncy X, plus the variance on the Z depending on the XY.

So, as a matter of opinion from the 'pro's':
- Would it be possible to use UCC to have first and third person at the same time with the same/single full body mesh? (basically implement both perspectives with one single full body mesh)
- Is it completely uncommon this approach? (single fullbody for an hybrid FPS/TPS prespectives)
- Is it an industry standard to split the arms for FPS view? even when we wish to offer both prespectives?
- An issue that I havent explored yet but might limit us is when the player looks in the mirror in first person perspective. Would he see his full body? his arms? all mixed? or nothing at all?

Thanks for coming back to me, and your views on the questions above would be appretiated.
 
Having separate meshes for first and third person is the way to go. Take a look at this page for the details:


- An issue that I havent explored yet but might limit us is when the player looks in the mirror in first person perspective. Would he see his full body? his arms? all mixed? or nothing at all?
You can use the material swapper script for this: https://opsive.com/support/documentation/ultimate-character-controller/camera/split-screen/
 
Hi,
Nice tips, I will look closely the FPS arms post (though a more detailed YT video on this topic would be even better:) ).
I have used FPS mesh tools and indeed did the trick for my initial issue. For Third person all works quite well, though the first person arms is still a pain:) I also have a set of weapon models to bring but really want to sort first person arms first.

I just bought UCC a week ago, so it sounds I still have a bit to learn in order to use it.

Thanks for the support so far.
 
Top