Render specific objects/bones?

I am making an FPS, in which I have 2 skeletal meshes, the first person arms mesh, and the third person mesh.

I currently have the arms set to “Only owner see,” and I have the third person mesh set to “Owner no see.” However, I want to be able to see the third person legs, so I would like to specifically render parts of the mesh to external cameras only, while keeping the legs renderable from any camera.

If I can’t specify this per bone, is there at least an option to specify what gets rendered without using the “only owner see”/“Owner no see” toggles?

Thanks!

Hi, you could try “Hide Bone by Name”, but I never used that node so no guarantees.

A better solution might be to use a third mesh were only the legs are visible. If that uses the same skeleton as the full mesh, then you can also use the same animation blueprint for it.


But keep in mind that when you animate the arms different than the legs, then that might look strange when the player can see his arms and legs.

You could make two events. One to hide every bone except for the legs and one to unhide all bones. Then when the owning client goes into first person mode you would call the event to hide the bones on the owning client, and when he goes to third person mode you would call the other event to unhide them again (again only call the event on the owning client).

Also, I was hoping to split the
rendering of the character’s arms and
gun to one camera, while the world
renders from another camera.

If I understand correctly what you want to do, then you would need to render your scene two times and this is not a good idea performance wise =)

Hey, this approach seems to work pretty well. My only question is, how does hiding work in a co-op setting with multiple cameras? Is there a way to hide on one but show on the other?

Also, I was hoping to split the rendering of the character’s arms and gun to one camera, while the world renders from another camera. This way I can safely adjust the FOV.

I wouldn’t be rendering the whole scene two times, I would want to render only a couple objects with the one camera and only other objects with the other. I am mostly just trying to best emulate the practices used in creating Destiny as shown here: https://youtu.be/CXFLu8cityA?t=2467

render only a couple objects with the
one camera and only other objects with
the other

The only approach I could think of would be render the scene two times, once without the arms and once with a rendertarget and scene capture component 2d where you render the scene with only the arms and then use a post process material to blend both images together into the final image.

But since you will be having two renderpasses this will come with an (serious) impact on performance, since the deferred renderer has a high initial cost.

Further since you’re only rendering the arms and weapon and nothing else, you won’t get any shadows from surroundings on the arms and weapon.


As for rendering everything in one pass and only render the arms and weapon with a fixed FOV: Sorry, no idea, that is beyond my skill level but it seems to me that it’s described here Custom Mesh FOV - Rendering - Epic Developer Community Forums

And you could take a look at this here https://forums.unrealengine.com/unreal-engine/feedback-for-epic/4622-feature-request-per-component-fov-and-render-layers/page3


And there might be also other ways to solve your problem, but I don’t know what I don’t know.

Wow! Thanks for sending this over, I believe that these links are exactly what I was looking for and could not find. Thank you so much for the help!