How to manipulate camera?

Hello, I am trying to make glitch effect for camera:

  1. What do you want to achieve? Keep it simple and clear!
    I want to scretch, skew, zoom in and out and move camera.
  2. What is the issue? Include screenshots / videos if possible!
    Tried using CFrame.fromMatrix.
  3. What solutions have you tried so far? Did you look for solutions on the Developer Hub?

I am very thankful if you can help me doing this!

First, change the Camera’s CameraType to Scriptable as follows:

local camera = game.Workspace.CurrentCamera
camera.CameraType = Enum.CameraType.Scriptable

Now it’s all up to you. Do you have experience with Tween Service? If so, you can easily tween the camera’s CFrame property as you would with any part to create unique cutscenes.
You can get the position of the camera by “camera.CFrame.Position”

Advanced tutorial: Camera Manipulation. Also be aware there are many free modules out there that could greatly simplify the process.

What about scretching and skewing?

I’m not entirely sure what camera stretching and skewing is, please explain.

Check out The Rake Thunder Remake and get chased by The Rake, you will see that effect.

im guessing thats done by tweeing the fov

Its just changing Field Of View, i want stretch and skew.

If you mean changing the way the viewport works, not the actual position of the camera, then I supposed you could manually change and tween the FOV and DFOV.

See here for more.

could you show a video example of this happening?

I cant have a video example, but i can try record some from The Rake Thunder Remake, where is this used, or you can just go check it out, skew and stretch will happen when rake is chasing you.

You can Tween the Camera.FieldOfView to get a zoom in and zoom out effect.

So are you trying to make sort of a Camera bobbing like in the rake?
It seems it’s not a hard deal what they’re doing.
Their camera system always do sine waves; image

What you can do, it’s either create a new camera system, or use default in Camera.CameraType = Enum.CameraType.Custom

So you can do in a loop;
Camera.CFrame = Camera.CFrame * CFrame.Angles(math.sin(tick()),0,0)

You can also use Camera.Focus, but right now on mobile so can’t help much


And skew and stretch effect? Id like to know!

By skew and stretch effect do you mean stretching and bending objects?

Just like objects but camera! OK?

just checked the game and there isnt any stretch and skew effects when being chased by the rake, its all just camera shake

1 Like

Stretching would definitely be done with Field of View.

You could create a bobbing or shaking effect by rapidly moving the camera up and down a short distance. This is accomplished by tweening the camera’s CFrame property.

Also, as outlined in this article, do not approach this if you’re making your game VR-compatible.

1 Like

I want to replicate that kind of effect.

1 Like

you can do a camera shake effect by changing a humanoids CameraOffset randomly

	for i = 1, NumberOfMovements do
		local x = math.random(-Intensity,Intensity)/100
		local y = math.random(-Intensity,Intensity)/100

		local Property = {CameraOffset =,y,0)}

		local TweenInf =, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut)

		local Tween = tweenservice:Create(CamSubject, TweenInf, Property)