是否可以在c++ /SDL中指定图像/精灵的大小?

Is it possible to specify the size of an image/sprite in C++/SDL?

本文关键字:精灵 图像 c++ 是否 SDL      更新时间:2023-10-16

我正在制作一款类似的游戏,我试图找出如何生成随机大小的敌人鱼。据我所知,你在SDL中创建的精灵采用你给它们的图像的大小,但我想做的是能够为我的图像指定一个大小,当鱼被动态创建时,使用随机值为它的大小。

我的作业使用SDL和一个给定的框架,所以我不能导入任何花哨的库。

谁能给我指一下正确的方向?

您要找的是scaling。您可以查看本教程,轻松地将功能添加到游戏中。建议的rotozoom可以在SDL_gfx中找到,在这里。

如果您走这条路,并决定为学习目的编写自己的代码,请记住,手动缩放SDL_Surface是昂贵的,所以您可能应该只在产卵鱼并为鱼的生命周期存储表面时才这样做。

另一个选择是使用3D图像制作2D游戏;基本上,你只要按你想要的方式拉伸三角形,纹理就会自我调整以填充它。