Archive 17/01/2023.

How Do You Make a 3D Sprite [Solved]

practicing01

Edit: AnimatedSprite2D works.

Hello, for my latest project I’m envisioning something along these lines:

How would I go about doing the character sprite? It’s 2d but it transforms in 3D. On the irc channel it was suggested that I use billboards. However, I don’t see any methods for setting animations within the api docs. Any ideas on how to achieve this would be greatly appreciated. Thanks for your time.

ghidra

The image isnt showing up.
I think i found it with google, but i’m still not sure what the desired effect is.

EDIT:
now the image shows up. My confusion still stands :slight_smile:

thebluefish

Based on the image, is sounds like you want to be able to position/rotate your sprite in 3D space?

GoogleBot42

I think you might be talking about the reflection of the rocks and the person onto the water… :neutral_face: I would find a way to represent objects at different heights (aka layers) and use a shader to combine the textures together keeping in mind how tall and far an object on a particular layer is from the water… maybe the 3D water demo will shed some light. IDK I don’t really have any experience with shaders other than knowing what they are used for though.

thebluefish

If that is the case, it might almost be better to draw it as part of the background. Completely static backgrounds like that can be baked into a single texture, or into individual tiles. Even using the tiles approach, that kind of rock would be its own tile so as to account for any lighting or other visual differences.

The character could be a simple shader that flips the sprite upside down and uses an alpha mask to stop it from appearing over anything but the water.

GoogleBot42

If that is the case, it might almost be better to draw it as part of the background. Completely static backgrounds like that can be baked into a single texture, or into individual tiles. Even using the tiles approach, that kind of rock would be its own tile so as to account for any lighting or other visual differences.

The character could be a simple shader that flips the sprite upside down and uses an alpha mask to stop it from appearing over anything but the water.[/quote]

True, but the player and other things will be moving around so not everything could be baked… I think think it would be less work just to do everything at runtime because some will have to be done at runtime anyway. If this is a 2D game I think the performance will be good enough that baking is not needed.

practicing01

Fixed the link, it must have been removed.

No I didn’t mean reflections. I meant a 2d sprite in a 3d world. In that game the characters where just that and they were affected by 3d transformations (translation, rotation, scale).

GoogleBot42

ohhhhh! That’s actually pretty easy. :slight_smile: Just create a model that is a flat square (with four vertices), disable backside culling (so that both sides of the sprite are visible and the texture is flipped properly when turned around), and apply your texture. :wink:

weitjong

May be a short video is better in this case. Could it be actually low poly 3D models rendered in toon shader?

practicing01

This game was for the PlayStation 1, so no shaders, vidya: