gpt4 book ai didi

c++ - 取消引用 SDL_Surfaces?

转载 作者:行者123 更新时间:2023-11-28 08:18:20 27 4
gpt4 key购买 nike

有什么方法可以将 SDL 表面复制到另一个表面,例如创建备份拷贝,而无需在修改拷贝时修改原件? *surface = *original_surface 不工作。 SDL_Surface 没有任何构造函数,所以我不能做任何类似 surface = new SDL_Surface (original_surface) 的事情。目前,我不断地打开原始图像,但打开图像比一个循环完成需要更长的时间。这会导致很多滞后,并最终导致错误,导致我的程序结束

最佳答案

您可以创建一个新的兼容表面:

copy = SDL_CreateRGBSurface(flags, width, height, original->format.BitsPerPixel,
original->format.Rmask, original->format.Gmask,
original->format.Bmask, original->format.Amask);

然后将原件blit到拷贝中:

SDL_BlitSurface(original, NULL, copy, NULL);

关于c++ - 取消引用 SDL_Surfaces?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6884945/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com