Anyway to make a Free Look system

Hello, i wanted to know if theres a way to create a free look system like this?

i don’t need scripts or anyone to script for me. i just need a general idea so i know what to do in order to make a system like that

also i’m still new to the devforums and if i did something wrong i’m sorry

The Player instance has a Player.Character property. On the client, you could check for a keypress and temporarily detach the character from the player instance, returning it when you wish to return back.

You could also try modifying the workspace.CurrentCamera properties, changing the camera type or making it not spectate to the player if that would work better for you.

Roblox has their own camera guide, if you need additional assistance you should check it out: Customizing the Camera | Roblox Creator Documentation

ah alr ill try it out, thanks mate :smiley:

1 Like

@Un_Do45 it might require anchoring the viewmodel, I’m gonna experiment

This is correct, I anchored my arms and this is the result (I also make humanoid autorotate false):

holy cow this is poggers, this might be more simple and less painful to script, thanks m8 :smiley:

just to reiterate, you anchor the arms of the viewmodel, I’m assuming you have an understanding of gun systems and know what a viewmodel is

a true complexity will come when you want to move (your character around) while freelooking, I think that would be really cool, I don’t know how to code that though, something to do with setting the position of viewmodel arms while in freelook mode.

nvm i dont think this would work considering my viewmodel is being in a SetPrimaryPartCFrame Meaning my humanoidrootpart of my viewmodel would always be in my camera’s CFrame no matter where you look, but i think i can change that but idk

you need to set the humanoid’s auto rotate property to false while in freelook mode (opposite in vice versa), this will negate the issue I think, unless the hrp of the viewmodel is constantly changing with the camera cframe

hmm ill try, but anchoring might frick up the animations

yup it does mess up the animations when locked, but i think i have an idea

ill try rigging the viewmodel arms to the HumanoidRootPart (From Player Character) when freeLooking, but when stopped the viewmodel would be rigged to the HumanoidRootPart (Viewmodel), Ill test it out but i need to figure out how to stop that SetPrimaryPartCFrame

i assume you have a loop setting the viewmodel arms cframe to where they should be
you could just add a check off a bool or something thats true whenever freelook button is held and just not set arm cframe

when u say loop, what you sayin while true do loop or a renderstep?

The way I would go about this is having a custom camera. First Step, I would create a “calculatedAngle” variable. The way I would calculate said angle is by having the Mouse Behavior be on LockCenter. Then taking the delta mouse to calculate an angle relative to the head using the CFrame.Angles constructor and setting it to the “calculatedAngle” variable. Then I would change the camera CFrame to the head CFrame multiplied by the calculated angle

i know this probably old but,

alr i finally figured it out on how to make the arms face the players character direction. theres an issue. when you look back the arms will face the camera direction instead of the character direction. is there any way to limit the rotation of the camera?