Is flipping a screen possible?

Hi, I am wondering if I can flip the player’s screen to be upside down, is this possible? Where can I look to achieve this?

5 Likes

every frame has an property called rotation.

craete a background nd rotate that

It’s not possible to change the player’s screen outside the Roblox Client, but you can flip the rotation of your gui’s to make it look like it’s upside down.

One way to do it would be using a viewport frame, copying everything from workspace into it and flipping the frame 180 degrees. This would be very bad for performance, but its the only way I can think of.

1 Like

Just rotate the player camera’s CFrame by 180 degrees around it’s Z axis.

3 Likes

wait everything?

to flip the workspace make your own camera script and rotate the camera

1 Like

[edit]: fixed the button to make it rotate too.
(Couldn’t rotate the core GUIs unfortunately though.)

The code:
(Inside a GUI button. The button is centered on the screen to make it look better.)

local status = 0

local camera = workspace.CurrentCamera

local rs = game:GetService("RunService")

local angle = 0

local rate = 180 / 2 -- 180 degrees in 2 seconds

rs.RenderStepped:Connect(function()
	camera.CFrame = CFrame.lookAt(camera.CFrame.Position, camera.CFrame.Position + camera.CFrame.LookVector) * CFrame.Angles(0, 0, math.rad(angle))
end)

script.Parent.MouseButton1Click:Connect(function()
	if (status == 0) then
		status = 2
		while (angle < 180) do
			local t = rs.RenderStepped:Wait()
			angle = angle + rate * t
			script.Parent.Rotation = angle
		end
		angle = 180
		status = 1
	elseif (status == 1) then
		status = 2
		while (angle > 0) do
			local t = rs.RenderStepped:Wait()
			angle = angle - rate * t
			script.Parent.Rotation = angle
		end
		angle = 0
		status = 0
	end
end)
16 Likes