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?
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.
Just rotate the player camera’s CFrame by 180 degrees around it’s Z axis.
wait everything?
to flip the workspace make your own camera script and rotate the camera
[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)