看起来是个很简单的问题,可是作为程序真没概念。我们的游戏窗口要多大?能不能缩放?地图块要多大?立绘和小人和对话框又要多大?具体到GMS2里,哪个参数决定窗口多大?什么时候会缩放图像?
一、分辨率
在游戏设置里往往有改变分辨率的选项,但还真不知道分辨率的定义是啥。
根据百度百科:分辨率是度量位图图像内数据量多少的一个参数。通常表示成每英寸像素(Pixel per inch, ppi)和每英寸点(Dot per inch, dpi)。包含的数据越多,图形文件的长度就越大,也能表现更丰富的细节。但更大的文件需要耗用更多的计算机资源,更多的内存,更大的硬盘空间等。假如图像包含的数据不够充分(图形分辨率较低),就会显得相当粗糙,特别是把图像放大为一个较大尺寸观看的时候。所以在图片创建期间,我们必须根据图像最终的用途决定正确的分辨率。这里的技巧是要保证图像包含足够多的数据,能满足最终输出的需要。同时要适量,尽量少占用一些计算机的资源。
通常,“分辨率”被表示成每一个方向上的像素数量,比如64x480等。
分辨率和图像的像素有直接关系。一张分辨率为640x480的图片,那它的分辨率就达到了307200像素,也就是常说的30万像素。
显示器分辨率是指计算机显示器本身的物理分辨率。
屏幕分辨率是指实际显示图像时计算机所采用的分辨率。屏幕分辨率必须小于或等于显示器分辨率,而显示器分辨率描述的是显示器自身的像素点数量,是固有的、不可改变的。
图像分辨率是指在计算机中保存和显示一幅数字图像所具有的分辨率。图像分辨率决定图像的质量,对于同样尺寸的一幅图,如果图像分辨率越高,则组成该图的图像像素数目越多,像素点也越小,图像越清晰、逼真。对于具有相同图像分辨率的图像,屏幕分辨率越低(如800×600),则图像看起来较大,但屏幕上显示的项目少;屏幕分辨率越高(如1024×768),则图像看起来就越小。
游戏中总有那几个固定的分辨率,应该是根据历史上的显示器分辨率确定的。
二、GMS2中谁决定窗口大小
1.不启用视图(viewport)的情况
初始房间大小就决定了游戏窗口大小。如果其他房间的大小不同于初始房间,则其他房间中的图像会被拉伸。
2.启用视图的情况
一个镜头(camera)对应一个视图。
镜头是指一整个房间里面的一部分指定长宽的画面;视图是这个镜头中的图像展示出来的地方。
视图和镜头的大小可以不一样。视图的大小可以是镜头的整数倍,这样镜头中的图像将会被准确等比放大。如果是不是整数倍,或者长宽的倍数不同,镜头中的图像会被拉伸。
启用视图以后,游戏窗口的大小就不再是房间的大小,而是视图的大小了(似乎取最大的那个,多视图or多房间暂时没研究)。
三、地图怎么办?
假如我有一幅超大的地图,它本身的大小比我的屏幕还要大,我的角色需要在里面能够随意走动。那怎么把整个地图都放进游戏里?
把房间的大小调到和地图一样大,然后把地图放进去。因为启用视图后,房间的大小不影响窗口了,那么理论上应该调多大都没问题(不知道会不会对效率有影响?)。
四、游戏中能调整分辨率吗?
window_set_size函数,能够保证图像等比缩放,多余的地方会用黑色填充。
————————
之前房间、镜头和视图总是搅不清,今天回顾了一下FC的农场RPG教程的视图部分,感觉基本清楚了。视图应该还能玩出许多花样(比如小地图),但暂时用不着,就以后再说。
因为将要制作的游戏美术很重要,所以不希望出现因为缩放造成模糊或扭曲的情况……美术素材也希望尽量一遍就过。
暂无关于此日志的评论。