灵音的CodeABC空间

分享代码

对慢羊羊的半透明贴图函数进行改良

对慢羊羊的半透明贴图函数改良了一下,效率*2

(其实是看贴图透明区域大小)

思路是将贴图分三部分

1:完全透明的

2:半透明的

3:完全不透明的

完全透明的直接跳过计算(主要加速在这)

完全不透明的直接拷贝(但还是好慢)

减少赋值而直接将获取RGB值的函数放到阿尔法混合函数中

(有没有效果我不知道,但可读性差了)

先上原地址

https://codeabc.cn/yangw/a/transparent-putimage

这是村长写的代码,明显有很多地方可以优化

// 半透明贴图函数
// 参数:
//		dstimg:目标 IMAGE(NULL 表示默认窗体)
//		x, y:	目标贴图位置
//		srcimg: 源 IMAGE 对象指针
void transparentimage(IMAGE *dstimg, int x, int y, 
...