Project1

标题: 关于Viewport的显示效果 [打印本页]

作者: hys111111    时间: 2013-11-9 11:53
标题: 关于Viewport的显示效果
本帖最后由 hys111111 于 2013-11-9 12:20 编辑

我对Viewport有过研究。

但是也搞不清楚是什么东西。刚开始我认为是个Sprite。
但是后来是生成Sprite类所需的另一个类。

但是最终我还是搞不清Viewport到底是什么。

Spriteset_Map里面
  1.   @viewport1 = Viewport.new(0, 0, 480, 480)
  2.     @viewport2 = Viewport.new(0, 0, 480, 480)
  3.     @viewport3 = Viewport.new(0, 0, 480, 480)
  4.     @viewport2.z = 200
  5.     @viewport3.z = 5000
复制代码
这个应该是一个显示的范围。不过viewport有z坐标。

另外(看下面),我发现viewport有色调和ox、oy的效果。
但是我想调整一下viewport的不透明度、放大等显示效果,应该如何去做
  1. rect
  2. 作为视口设定的矩形(Rect)。

  3. visible
  4. 视口的可见状态。真为可见。

  5. z
  6. 视口的 Z 座标。该值大的东西显示在上面。Z 座标相同的话,则后生成的对象显示在上面。

  7. ox
  8. 视口传送元原点的 X 座标。根据该值变化进行滚动。

  9. oy
  10. 视口传送元原点的 Y 座标。根据该值变化进行滚动。

  11. color
  12. 在视口中混合颜色(Color)。混合的比例使用 alpha 值。

  13. flash 中混合颜色是另外的管理。

  14. tone
  15. 视口的色调(Tone)。
复制代码

作者: 巴尔德    时间: 2013-11-9 12:15
本帖最后由 巴尔德 于 2013-11-9 12:18 编辑

老师告诉我viewport相当于现实世界里的视野,相当于能看到的东西,可以广阔无垠,可以鼠目寸光,可以睁着眼,也可以闭上眼,还可以带各种滤色片的眼镜来控制颜色神马的
sprite是画板,画板没有尺寸,但是一定要放在视野里才能有意义,而且画板的位置是可以随意移动的,哪怕是要移动到视野的外面
bitmap是纸,纸有大小,但纸必须要放在画板上才能作画写字
bitmap里的各种方法就是笔、橡皮、颜料等等,随意发挥吧

所以viewport就是你可以看到的东西,一个画面里可以有多个viewport,想象成墙上的窗户合适不?
作者: hys111111    时间: 2013-11-9 12:20
巴尔德 发表于 2013-11-9 12:15
老师告诉我viewport相当于现实世界里的视野,相当于能看到的东西,可以广阔无垠,可以鼠目寸光,可以睁着眼 ...

我想说,你能不能看到我题目最终要表达的意思?

“但是我想调整一下viewport的不透明度、放大等显示效果,应该如何去做?”
作者: 无脑之人    时间: 2013-11-9 12:41
Viewport就是【视野】没错,因此视野怎么会有不透明度?
放大改变他的矩形就好了,不管怎么说,F1/RGSS参考/游戏库/RGSS内部类/Viewport说的很清楚,阁下可以根据说明来尝试,每个功能还是自己试了才更加了解
作者: fux2    时间: 2013-11-9 16:49
Viewport只是一个容器,没有图像的任何属性。
你要是一定要实现更改透明度什么的效果,instance系列方法遍历Viewport内所有sprite,批量更改属性即可,




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1