The First Person Element Of A First Person Shooter

This is awesome. It makes me wonder how cool it would be see a write up for every stage of production of a Roblox game. Maybe even a vlog series that goes through the key points and updates in order.


Great post! Always wondered how this was done.


I have had a friend message me and tell me they are struggling with viewing the images in this post.



Is anybody else having issue with this?

Edit: it’s happening to me now too… I’ll wait a bit to see if it fixes itself and if it doesn’t i’ll re-upload.
Edit 2: Alright, I updated the pictures again.


you used R15 for this is this same tutorial able to be used with R6? I’m guessing it is just thought I’d make sure. Thanks for this, this is something I was wanting to learn how to do, youtube wasn’t helping much


The same concepts would apply yes. You would need to adjust for the different joints in R6 and R15, but that’s about it.


This is amazing!
i’ll try to mix this with Xan_TheDragon’s FastCast Module!
i’ll surely share it when i finish :slight_smile:


Is there any way to make it so the first person is R15 but the third person is being R6?


Yes, just create the viewmodel as R15 and do everything to the character as an R6 model.


I’m sorry if this sounds like quite a dumb question, but would I have to animate the fake arms and real arms individually when I want to add a new animation (such as one for reloading)?


I think you have to, from my observation from the game Arsenal, they have 2 animations for fake arm and the character’s arm.


If you ever need to try and get a 1:1 animation cycle into a Roblox animation, I find that creating a singular rig with both separate ViewModels inside it works wonders. The added benefit is that if you animate in this way, you technically have both your ViewModel and WorldModel animation in a singular file.


I’ve been trying to animate the ViewModel but I haven’t got any idea how I could do this because when I animate the ViewModel the gun stays still could anyone help me?


@redduckxteen @xCurb making custom animations for viewmodels and enhancing them with these requires a different workflow, tho the ADS and the server side replication might be the same, most of the viewmodel setup would be different, in this case, the arms wouldn’t be attached to the weapon, the weapon will be attached to the arms using Motor6D-s they are the bones, the joints that allow for rigging and animating custom models, i put an animation controller that lets you animate them without humanoid properties (like forcing collision with the actual player), and yes they do require 2 different animations as what you see in FPS is usually very different as to what others see attached to the character, it’s possible to work with 1 animations but you’d need to play arround with camera offsets for each weapon for optimal results.


Thank you, this was very useful


Is there a way I can animate the tool in first person?
Currently when I play the reload animation it just does this:

The weapon is supposed to go off screen, like this:
I am also playing the animation in the view model as well, and I have tried using a Motor6D, yet it doesn’t do anything.

I figured out how to fix this issue incase anyone was wondering. It turns out that there is a Motor6D in the head which was putting the weapon in the correct position. This unfortunately does mean I have to remake the Animation to be rigged properly, but at least I figured it out.


How can i play the animation in the view model? Can anyone explain to me how can i add an animation on the view model, i’m trying to figure it out.


I would greatly appreciate it if you explain just a little more how you solved this, I know that there is a motor 6D, but how do i go about rigging the model properly now?
I’ve tried many things, and i already have an Animation Controller, all i need to know is how to rig the model.


I stumbled upon FastCast not too long ago and have since tried to integrate it, but I haven’t really found the place to start. I’m curious to know how you were able to go about this.

And of course, thanks to EgoMoose for this outstanding resource!

Hey :slight_smile:

I tried it but It is causing errors because FastCast runs when the tool is equipped
and in this tutorial you get the gun when you spawn

maybe some changes to equip it as a tool, it might work?

(Idk anything about scripting so I might be wrong)

For Attaching the weapon to the view model it only takes the handle, not the entire model…