I want to achieve the same 2.5D affect within this game cart ride for corndog - Roblox
How would I go about it, I currently have a 3D rig withing roblox studio, so could I use a viewport frame to achieve the effect, or is there another solution? Thank you!
Are you talking about an ISO camera?
some pics help instead of asking us to check out some game..
I want to achieve an effect similar to this
um ya, that looks like an isometric camera angle..
I’m talking more about how the players are portrayed as 2D cutouts with the direction they are facing corelating to how they are shown. Basically I’m looking for a 3D → 2D cutout effect like one in the early DOOM games or baldi’s basics.
Sorry if there was any misunderstanding.
ah.. I see what you are saying…
since it is animated, it is not a static decal / image or such…
can you do different things, like jump, spin around and jump, .. are the players all different.. play emotes..
like you are not forced to use a custom player…
Just wondering if they squashed the player flat when they load and have key binds , so like when it is A they do one pose, then W does another etc…
l’ll see if I can play the game now..
Yeah basically, they are using something that renders the player as a 2D image but according to the camera position relative to the player/objects they are presented differently. (ex if you are looking at a player to their left, it will present them at them looking left as a 2D image.
Btw there are videos on this game on youtube that showcase it a little better then my crusty capture of it can do. so if you need a little more clarification on specifics, those might be able to show you better than I could explain.
umm, are you saying you see the player differently then how they actually are? like for above, what if the player was running away from you? do you see their back , or still there left side moving away…
you see their back.
sorry for the confusion I’m not good at explaining things well.
relating to above, does that mean your own avatar is what you see in the game , but with the effect of 2.5d ish
yeah, as well as the avatars of others when they appear in the game.
you prob need 3 custom resizing , when a player enters … and or when the player moves, you change their size on the fly… then on keybinds you change the size of all of their parts such as there is 1 that shrinks all the Z size to say .1 for the S and W keybind.. that looks like this
left is another , and perhaps they mash in the parts so they are close…
right would be another…
prob with custom animation…
I would have to play the game to see how the player is from different views, movement and camera rotations.
above I just added as a starter player a block dude, then in Play mode messed around with the Size values…
although looking at your video again, at the end where you rotate around the your player , the view of the player starts the same from all angles, which would lead me to think that it is not parts that are resized,
so instead I think they somehow have an image that is forced to face the camera, and thus from any angle it it shows the same pose
ChatGPT is saying
They’re using a classic billboard-sprite character:
- The “body” you see is not a 3D mesh at all—it’s an ImageLabel inside a BillboardGui that’s attached to the player’s HumanoidRootPart (or Head).
- A BillboardGui in Roblox always faces the camera, so the picture looks flat and never rotates when you orbit around the player.
- They swap the image (or a sub-rect of a sprite sheet) based on the player’s move direction to show “front / back / left / right” (and walking frames), while keeping the character’s real rig invisible for collisions and movement.
How to do it (core idea)
- Invisible rig: Use a normal R15/R6 character for physics, set all part Transparency to 1 (and/or use a capsule hitbox).
Humanoid.AutoRotate = falseso the rig won’t spin. - Billboard sprite: Create a BillboardGui (AlwaysOnTop = true, MaxDistance set as needed), add a square ImageLabel for the character art. Parent it to the player’s character and set
Adornee = HumanoidRootPart. - Directional frames: Keep 4 (or 8) directions, each with idle/walk frames (either separate images or one spritesheet using
ImageRectOffset/ImageRectSize). - Switch by movement: On the client, read
Humanoid.MoveDirection. Compare it to the camera axes to decide which facing (front/back/left/right) to show and cycle frames while walking.
But if you are saying your own custom character is converted into it then that add an pickle to the recipe.
yeah the main issue is the custom player characters
move the camera really far away then set the focus to a small number
This is very likely made with ViewportFrames. You’ll have to learn how to do some camera magic with them, but it should give your desired effect. I would recommend putting it on a SurfaceGui and rotating it towards the player’s camera on the client.
You can probably use viewport frames to get the actual player character


