2010-02-15 608 views

回答

-3

如果您使用SFML而不是那么你会得到一组非常类似的跨平台功能,但图形是硬件加速的,并且缩放和旋转等功能都是免费的,无论是否需要额外的依赖关系,没有明显的CPU时间来操作。

-1

您没有提供任何代码,所以我会假设你正在使用的纹理和SDL_Renderer:

使用SDL_RenderCopy()的纹理将被拉伸以适应目标SDL_Rect,因此,如果您使目标SDL_Rect变大或变小,可以执行纹理的简单缩放。

https://wiki.libsdl.org/SDL_RenderCopy

0

如果从纹理获得精灵与SDL_RenderCopy(),但我不能保证你抗锯齿你可以做缩放。

随着功能SDL_RenderCopy()传递4个PARAMS:

  • 一个指向渲染器(其中,你要renderize)。
  • 一个指向纹理的指针(你将得到精灵的地方)。
  • 指向源rect的指针(在纹理上获取精灵的区域和位置)。
  • 以及指向目标矩形的指针(您要绘制的渲染器上的区域和位置)。

您应该只修改您的目标矩形状例如,如果你要呈现的图像300×300,你想它缩放,您的目标矩形应该像150×150或72 X 72或任何价值你想要扩展。