C#开发的OpenRA的加载界面边框的细节
在前面已经看到加载整个界面,
如果仔细地看,会发现加载界面的边框有一个红色的框。
这个红色的边框到底是怎么样来的呢?
其实它不是实时画上去的,而从纹理贴图里贴上去的。
也许有一些人会问,纹理贴图里的图片这么小,怎么样会有这么大呢。
这个就取决于纹理插值和放大的作用了。
public override void DisplayInner(Renderer r, Sheet s, int density)
在这行代码里,第一个参数是显示对象,第二个参数是Sheet对象,它就是纹理图片管理的对象,第三个参数是图片的大小倍数。
接着下来会调用下面这行代码:
CreateSprite(s, density, new Rectangle(129, 129, 32, 32))
这里用来创建一个边框一部分,这里是创建左上角的部分边框。
s是用来输入纹理,它是Sheet对象。density是图片的大小倍数,用来计算纹理图片在图片里的像素的位置。
Rectangle(129, 129, 32, 32)是用来指定图片那部分的图片当作sprite对象的范围。