Project1

标题: 【教程】让地图加分的方法!-室内地图光影+无限图层 [打印本页]

作者: Kim_巧克力控    时间: 2016-1-19 21:21
标题: 【教程】让地图加分的方法!-室内地图光影+无限图层
本帖最后由 Kim_巧克力控 于 2016-3-4 20:02 编辑

原本这帖子是在百度发布的,不过有人建议发布到6R,于是我来了ww(不

使用工具:Paint Tool Sai
无限图层使用脚本:无限图层显示系统 Unlimited Layers Display System
(作者:taroxd)


室内地图光影

1、
这次将这个小房间作为白老鼠吧www

首先、截图,放到作画工具中





2、
找出光源






=========乱入的光影教程=========

下面这张图很重要(´・ω・`) 【
虽然画得有点乱


另外这是网上找的,比较详细 ( 因为找不到较好的华文教程、所以直接翻墙找了; W ;



从以上两张图我们可以了解到:
**影子是指光照不到的地方**
**影子的方向都和光源相反**

3、

于是我们根据上图的原理(?)找出高光和阴影
粉红色代表高光;蓝色代表阴影。



解说:
书橱属于1、
床属于2、
窗口下的时钟和玩偶属于3。

4、
既然找到了高光和阴影、那么就开始染色吧www
使用工具:
水彩笔



5、
别忘了地毯和墙壁也要加上高光




6、
再做一些修改就完成啦





--地图光影END



无限图层系统的使用


地图图层系统,既是把地图中的各个物品分为图层来管理。
一般上,地图图层可分为:


地表<物品< 角色< 阴影< 高光。



依以上的顺序来看,我们可以理解:


物品会遮盖着地表;而角色则会遮盖着物品地表地表物品角色会被阴影高光遮盖。


如果看不懂的话这里有一张图片可以解释上述内容:(依旧是英文的orz,不过应该看得懂吧…)




图片来源:http://http://www.rpgmakervxace.net/topic/258-overlay-mapping/page-2


现今有许多图层系统的脚本,其中最常见的是来自外站的Yamioverlay mapping 和66rpg的无限图层系统

比起yamioverlay mapping,我更建议无限图层系统,因为功能和自由度都比其他系统来得强大。


无限图层系统(ULDS)脚本+范例网址:


http://rm.66rpg.com/thread-367901-1-1.html


Ps:请去下载范例来研究研究



脚本使用方法:


首先,我们将地表、高光、阴影、物品1、物品2分别储存在”parallex”文件中,名字随意。


*********高光的背景一定要放黑色!**********
******地表、阴影、物品等的背景必须是透明!*******






接着,导入脚本,在地图备注中填写内容。

此脚本的公式为:
<ulds=文件名字>
(中间的部分均为对此文件的选项)
</ulds>

而常用的选项有:
Z : Z坐标(可以把它理解成图层位置) 【-100】远景图、【0】最低图块层、在普通角色下方、【100】与普通角色相同、【200】在普通角色上方】


opacity: 不透明度


blend_type: 合成方式【默认为 0 (0:正常、1:加法、2:减法)】


等等。




例1:


<ulds=地表></ulds> #这代表此图层会在最底层

<ulds=物品2>
z: 201
</ulds>     #这代表此图层会在普通角色上方

<ulds=物品1>
z: 99
</ulds>    #这代表此图层会在普通角色下方

<ulds=阴影>
z: 202
blend_type: 0
</ulds>    #这代表此图层会在“物品2”、“地表”和普通角色的上方、合成方式为0。

<ulds=高光>
z: 203
blend_type: 1
</ulds>    #这代表此图层会在“阴影”、“物品1”、“物品2”、“地表”和普通角色上方,合成方式为加法。

使用效果:






我们再来看另一个例子:

<ulds=雾>
opacity: 100 #代表此图层的不透明度为100
z: 201 #代表此图层位于普通角色上方
x: t #代表x坐标和t一样##楼主也不是很明白,求救
scroll_x: 16 #代表此图层会跟随地图横向卷动的速度为16
scroll_y: 20 #代表此图层跟随地图纵向卷动的速度为20
loop:#代表此图层会循环以上指令

使用效果:




【这个本人做的有点崩,请不要介意

恩这次的教程就大概是这样


由于我也是个脚本渣所以还会有很多不足的地方..如果有什么错的也请各位大大指正!

如果还有什么问题可以问我....


教程完毕。

作者: 吱呀吱呀呀    时间: 2016-3-10 03:37
问个愚蠢的问题……
物品那些是在PS里从素材上一个个裁下来再摆好的吗。
作者: Kim_巧克力控    时间: 2016-3-20 14:13
吱呀吱呀呀 发表于 2016-3-10 03:37
问个愚蠢的问题……
物品那些是在PS里从素材上一个个裁下来再摆好的吗。

这问题并不蠢呀XDD
我就是这样做的(虽然很花时间就是了w
作者: 吱呀吱呀呀    时间: 2016-3-22 09:33
Kim_巧克力控 发表于 2016-3-20 14:13
这问题并不蠢呀XDD
我就是这样做的(虽然很花时间就是了w

就是觉得看起来很花时间所以就这么问了……
本来搞太懂那个无限图层的脚本,现在终于搞懂惹ʕ •ᴥ•ʔ感谢楼主
作者: 越前リョーマ    时间: 2016-3-31 14:58
很不错的教程,现在才看到,给想制作ULDS地图的人来说是很好的学习,不过竟然才这么几个人回复
其实因为打的光是暖光,阴影可以不用黑色用冷色试试
作者: SUNmode    时间: 2016-4-23 00:12
呃,楼主我能问一下你是用什么工具画的吗?
作者: Rivendell    时间: 2016-4-23 18:33
这用的什么图块呀
作者: ssxxyll    时间: 2016-5-3 23:35
本帖最后由 ssxxyll 于 2016-5-3 23:43 编辑

感谢LZ的分享,受益匪浅。
我有个问题,既然主角是在背景和物品图层之上,为何不能把物品和背景合为一个图层?
也就是说,背景+物品<主角<遮盖物品<阴影<高光
有这么个例子:

物品的图层等级是97,也就是在主角之下。
物品里有一个吊灯,图块通行度是五角星,主角经过时在其下面。
然后吊灯所在图层97,但游戏中主角还是在吊灯之下。

实验后发现,地图绘制界面上画上“星”通行度的吊灯,高于主角。
但在绘制界面上抹掉,游戏中看到的就是物品图层的吊灯,低于主角。
绘图界面上的地图元件把“物品”图层的吊灯盖住了,一样享受高光阴影效果。

这样PS地图元件一个个拼的做法就会变成只拼遮盖于主角之上的玩意,大大减少了工作量,效果还不打折扣。

发这个回复贴的初衷正是“物品1 物品2”图层令人抓狂的工作量。
并且LZ的物品1图层按照上文理论可以完全和背景合在一起。

出于提高工作效率的目的,有了这个想法——将在主角之下的物品直接与背景合在一张图里,遮盖的图块才去单独拼。
不知可否?
作者: Rivendell    时间: 2016-5-7 17:15
本帖最后由 Rivendell 于 2016-5-8 06:34 编辑
Rivendell 发表于 2016-4-23 18:33
这用的什么图块呀


原来是steampunk
作者: RG·Saber    时间: 2016-5-8 02:35
RMMV适用?
作者: 威风镰鼬    时间: 2016-5-21 16:33
楼主打扰一下,如果有白天和黑夜两种情况,光源消失,高光的图片就不用显示了。
可是我做这个条件判断测试了很久还是不行:
我写的代码只有这么简单:
<ulds=高光>
z=200
if s[46]== ture
  visible:false
end
</ulds>
已经确保图片是可以用的,把条件分歧删掉就可以正常的显示,
于是我继续用JS的代码实现:
<ulds=高光>
z=200
if(s[46]== ture)
  visible:false
end
</ulds>
……
还是不行,我到底哪里错了?

作者: Kim_巧克力控    时间: 2016-5-22 15:29
威风镰鼬 发表于 2016-5-21 16:33
楼主打扰一下,如果有白天和黑夜两种情况,光源消失,高光的图片就不用显示了。
可是我做这个条件判断测试 ...

ULDS脚本只能支持以下的功能
  1. <div class="quote"><blockquote>
  2. #  <ulds=filename>
  3. #    x: X坐标
  4. #      公式,默认为 0
  5. #    y: Y坐标
  6. #      公式,默认为 0
  7. #    z: Z坐标
  8. #      公式,只计算一次,默认为 10,可以设置为 -100 来当作远景图使用
  9. #    zoom: 缩放倍率
  10. #      公式,默认为 1。缩放的原点为画面左上角。
  11. #    zoom_x: 横向缩放倍率
  12. #      公式,默认为 zoom
  13. #    zoom_y: 纵向缩放倍率
  14. #      公式,默认为 zoom
  15. #    opacity: 不透明度
  16. #      公式,默认为 255
  17. #    blend_type: 合成方式
  18. #      公式,只计算一次。默认为 0 (0:正常、1:加法、2:减法)
  19. #    scroll: 图像跟随地图卷动的速度
  20. #      实数,默认为 32
  21. #    scroll_x: 图像跟随地图横向卷动的速度
  22. #      实数,默认为 scroll
  23. #    scroll_y:图像跟随地图纵向卷动的速度
  24. #      实数,默认为 scroll
  25. #    loop: 循环
  26. #      冒号后面不需要填写任何东西。
  27. #    visible: 图像是否显示
  28. #      公式,默认为 true
  29. #    path: 图像的路径名
  30. #      默认为 Parallaxes
  31. #    color: 合成的颜色
  32. #      公式,只计算一次。默认为 Color.new(0, 0, 0, 0)
  33. #    tone: 色调
  34. #      公式,只计算一次。默认为 Tone.new(0, 0, 0, 0)
  35. #    eval: 初始化后,以 sprite 或 plane 为 self 执行的代码。
  36. #      公式,默认为空
  37. #    update: 图片显示时,每帧执行的更新代码
  38. #      公式,默认为 t += 1
  39. #  </ulds>

复制代码


作者: 1697665228    时间: 2016-5-23 18:43
我是建议你去6r的同志之一(可惜我记不太清楚我到底和你聊了什么,也记不清你的名字,就记得你的头像了),我真的敬佩你,我曾经发过贴,结果经常被人说是抄袭。。。。
作者: 大胃王大卫    时间: 2017-7-22 04:11
在 RMMV 中 可以用 开关控制 无限图层的显示吗 ?
作者: Kim_巧克力控    时间: 2017-9-29 22:38
大胃王大卫 发表于 2017-7-22 04:11
在 RMMV 中 可以用 开关控制 无限图层的显示吗 ?

这个我不清楚耶,不过这个脚本并不能在RMMV里使用哦
站上有人写了MV版本的脚本
作者: Kim_巧克力控    时间: 2017-9-29 22:39
1697665228 发表于 2016-5-23 18:43
我是建议你去6r的同志之一(可惜我记不太清楚我到底和你聊了什么,也记不清你的名字,就记得你的头像了), ...

原来是你,摸摸...




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