What is the camera angle?

Hello,
I am trying to get the camera angle that Roblox uses for thumbnails for a very long time now. I have tried mading a localscript that changes the CurrentCamera to match the Roblox’s but Its not looking the same. I need help with this.

Here is my script:

local player = game.Players.LocalPlayer
local camera = workspace.CurrentCamera
local dummy = workspace:FindFirstChild("Dummy")

local humanoidRootPart = dummy:FindFirstChild("HumanoidRootPart")

if not humanoidRootPart then
	warn("HumanoidRootPart not found in Dummy model!")
	return
end

local modelCenter = humanoidRootPart.Position

local cameraOffset = Vector3.new(-6, 6, 6)

local cameraPosition = modelCenter + cameraOffset

camera.CameraType = Enum.CameraType.Scriptable
camera.CoordinateFrame = CFrame.new(cameraPosition, modelCenter)

Here is what I am trying to do:
image
Here is what I get:

Can’t you just use

game:GetService("Players"):GetUserThumbnailAsync(UserId, Enum.ThumbnailType.AvatarThumbnail, Enum.ThumbnailSize.Size420x420)

?

1 Like

I want to my own characters with the angle

what’s so difficult? Just play around w the offsets? I just played around w them and got something close to the image you provided:

local player = game.Players.LocalPlayer
local camera = workspace.CurrentCamera
local dummy = workspace:FindFirstChild("Dummy")

local humanoidRootPart = dummy.PrimaryPart

if not humanoidRootPart then
	warn("HumanoidRootPart not found in Dummy model!")
	return
end

local modelCenter = humanoidRootPart.Position

local cameraOffset = Vector3.new(-5, 2, -6)

local cameraPosition = modelCenter + cameraOffset

camera.CameraType = Enum.CameraType.Scriptable
camera.CoordinateFrame = CFrame.new(cameraPosition, modelCenter)

You might need to adjust the FOV a little as in the image you provided, its zoomed in al little.

2 Likes

Roblox is doing it somehow for many years now. I feel like maybe they are doing it somehow else? I don’t think they would be specifying any offset but rather “Generate” it.

the camera would be locked to center of Character’s primary part (HumanoidRootPart), zoomed out with an unkown value and with some unkown angle that depends on the model/part/meshpart. I have no idea what Roblox is using/doing to achieve this

They don’t generate it, they just get the profile picture of the player, and the player sets it in the avatar creator. All models have the same offset, I don’t know where you got that its using an unknown offset. It’s all the same.

Heres a function you can use to get that shot:

function GetIcon(UserId : number) : number
	if type(UserId) ~= "number" then warn("Error: UserId is not a number") return end
	
	local ThumbnailType = Enum.ThumbnailType.AvatarThumbnail
	local ThumbnailSize = Enum.ThumbnailSize.Size420x420
	
	return game.Players:GetUserThumbnailAsync(UserId, ThumbnailType, ThumbnailSize)
end

Though its not possible to get what you are describing without making something custom.

Play around w the settings, maybe you can get something similar. But otherwise, you really can’t.

2 Likes

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.