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.

15 Likes

Great post! Always wondered how this was done.

8 Likes

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

Example:

image

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.

21 Likes

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

11 Likes

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

13 Likes

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:

8 Likes

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

5 Likes

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

10 Likes

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)?

4 Likes

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

6 Likes

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.

5 Likes

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?

4 Likes

@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.

15 Likes

Thank you, this was very useful

4 Likes

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

com-video-to-gif%20(1)
The weapon is supposed to go off screen, like this:
com-video-to-gif
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.
@EgoMoose

Edit:
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.

14 Likes

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.

6 Likes

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.

4 Likes

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!

1 Like

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)

1 Like

i made a system very similar to yours using the same positioning method of updating the head cframe to the camera cframe every frame/renderstepped (everything else is different), everything works fine except for when i zoom in to first person my character starts to shift slowly in the direction i am pointing towards, all parts are set to anchored = false, cancollide = false. the internal structure of my view model is the same as yours, just with different part names, any help? if you need more info i can provide that

1 Like