设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 7268|回复: 19
打印 上一主题 下一主题

[原创发布] Bitmap类的脚本一个

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
238 小时
注册时间
2006-10-2
帖子
417
跳转到指定楼层
1
发表于 2007-12-15 10:43:07 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
模拟了VX里Bitmap类的blur,gradient_fill_rect和clear_rect。
并按照RGSS2里的定义给draw_text和text_size增加了一点内容。

另外还赠送了几个方法。

具体内容请看工程:
http://rpg.blue/upload_program/files/rgss2bitmapxp_v102.rar



12.24更新完毕,如果没有bug,不会再更新了。



2009-JAN-8
这里是对于云之殇提出的问题的特别更新{/se}

这个是单独的,关于模糊的一个脚本,其他的都去除了。
唯一剩下的功能就是“模糊”、“恢复到模糊之前”。

具体见工程:
http://rpg.blue/upload_program/d ... _blur_111809969.zip

至于模糊的边界问题,是由于你自身脚本里该bitmap对象本身的size太小导致的,所以在这个脚本里是无能为力的,并不是这个脚本有问题哦{/tp}。即使是RGSS2的blur,也会这样吧(猜测而已……电脑里没装vx……)。因为Bitmap的size,在它生成的时候就已经固定,Bitmap类并没有提供更改其自身size的方法(width和height两个方法仅仅是返回size的值){/gg}

所以可行的解决办法,就是更改你自己的脚本。在生成该Bitmap对象时,将它的width和height尽量设置得大一些,然后通过一个媒介bitmap对象将图像传送到这个bitmap对象上来(也就是说不能让bitmap直接读取图片生成bitmap对象)。
但由此带来的后果,可能是你的脚本里的一些坐标需要调整。

为了你能理解我上面这堆废话,附工程一只:{/gg}
http://rpg.blue/upload_program/d ... oblem_111812280.zip
工程里的good_boy的bitmap的设置方法就是防止边框出现的设置方法。

另:模糊值设置得太大,颜色也会混杂得更厉害,毕竟不是真的高斯模糊,建议设置1或者2就差不多了。
山寨产品龟速制作中……

Lv1.梦旅人

镖师十四

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-10-17
帖子
128
20
发表于 2009-1-8 20:40:56 | 只看该作者
明白了正在试验中。。。。。。。。。看过例子估计会是成功的一种特效,因为在大的图像的模糊中,这个效果并没有边缘的问题,搞定之后应该会是非常华丽丽的东西。。。。哈哈哈
部分模糊效果,全模糊的特效个人还是不十分会用,要等猫到今晚给我讲解下才有办法了,因为战斗系统中的刷新是一下子就十几怔的,本身有些判定我还是没有十分的看懂,故此今晚在搞,不过看下面的背景模糊发现。。。。其实这个效果十分之“水墨”
欢迎光临法宝网---历史的天空2专版 http://www.fabfan.net/bbs/forum-85-1.html
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
238 小时
注册时间
2006-10-2
帖子
417
19
 楼主| 发表于 2009-1-8 11:11:03 | 只看该作者
更新在1楼
回复 支持 反对

使用道具 举报

Lv1.梦旅人

镖师十四

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-10-17
帖子
128
18
发表于 2009-1-7 20:33:23 | 只看该作者
楼上的高深言论我听不明白{/gg},但是不能还原模糊。。。。这个很有难度啊,draw_text我直接禁用了,但是你的那个Graphics.snap_to_bitmap是否真的可以确定模糊边缘还有待测试,我想我看下吧,我估计这个特效要等到夏娜的rge支持rgss2才有点点可能{/gg}
欢迎光临法宝网---历史的天空2专版 http://www.fabfan.net/bbs/forum-85-1.html
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

lov Peii 4ever

梦石
0
星屑
50
在线时间
1 小时
注册时间
2008-10-28
帖子
423
17
发表于 2009-1-7 05:23:15 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

镖师十四

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-10-17
帖子
128
16
发表于 2009-1-4 21:33:25 | 只看该作者
还有就是这个模糊要怎么样回复都是一个问题,我想做个在我游戏中想做了很久的特效了,就是特定招数会有包括战斗背景,人物,敌人全部都模糊的战斗特效,然后这个却不知道怎么样禁止模糊,就是没有回复到原来的方法。。。。这个效果貌似做不了,不知道有没有回复到原来的一个方法呢?并且是否可以做到让透明的地方都不模糊呢,因为在战斗中的人物是一个方块来的,如果没有一个模糊边缘那么这个模糊就会让图像变成一个方块,这样子画面的效果最终就变成了几个方块然后还是几个模糊到不行的几个方块,基本上一点实用价值都是没有滴{/gg}
欢迎光临法宝网---历史的天空2专版 http://www.fabfan.net/bbs/forum-85-1.html
回复 支持 反对

使用道具 举报

Lv1.梦旅人

镖师十四

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-10-17
帖子
128
15
发表于 2009-1-4 20:06:59 | 只看该作者
发现在xp插入这个之后很难整合
  #--------------------------------------------------------------------------
  # ● 描绘项目
  #     index : 项目编号
  #     color : 文字色
  #--------------------------------------------------------------------------
  def draw_item(index, color)
    self.contents.font.color = color
    rect = Rect.new(4, 32 * index, self.contents.width - 8, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    self.contents.draw_text(rect,@commands[index])
  end

脚本和这个默认的方法有冲突(只是其中一个地方),其中出错的句子就在self.contents.draw_text(rect,@commands[index])这句上,参数少了,本身以前是可以使用两个或者五个参数的,可是你追加定义之后只能是使用五个参数了,这个bug不知道有没有考虑呢?
说明书中draw_text是一个方法可是有两种用法,如果要把它用重命名追加定义的话,估计是让下面的一个没有作用了吧。然后我把脚本中的下面这个加上三个随便的参数又没有问题,但是这个应用的地方很多,很难做了就要全部改吧,然后就是改了不知道会有啥后遗症之类的
draw_text(x, y, width, height, str[, align])
draw_text(rect, str[, align])
在该位图的矩形(x,y,width,height)或 rect(Rect)中描绘字符串 str。

如果文本的长度超过矩形的宽度的话,则自动缩放为 60% 再描绘。

水平方向默认为左对齐,但是当 align 指定为 1 时为居中对齐,指定为 2 时为右对齐。垂直方向则总为居中对齐。

这个处理需要花费时间,尽量不要在每 1 帧中重描绘字符串。
欢迎光临法宝网---历史的天空2专版 http://www.fabfan.net/bbs/forum-85-1.html
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

心无天使

梦石
0
星屑
49
在线时间
0 小时
注册时间
2007-12-15
帖子
1016
14
发表于 2008-1-26 04:21:49 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
142
在线时间
264 小时
注册时间
2006-11-22
帖子
1057
13
发表于 2007-12-19 06:01:13 | 只看该作者
以下引用猫哥哥于2007-12-15 2:49:08的发言:

脚本效果预览图:

blur
blur(times,[during<,blur>])


blur_r
blur_r(radius)


fragment_blur
fragment_blur(radius)


gradient_fill_rect(x, y, width, height, color1,color2,[vertical,<opacity>] )
gradient_fill_rect(rect, color1, color2,[vertical,<opacity>] )


glass_fill_rect(x, y, width, height, color1, color2[,vertical] )
glass_fill_rect(rect, color1, color2[,vertical] )


clear_rect(x, y, width, height)
clear_rect(rect)


有几个拿图描述不清楚的,就不放图了。

radial_blur模仿起来稍微有点费事,而且做出来使用的人可能也不多吧……不打算做了。


[本贴由作者于 2007-12-15 3:17:28 最后编辑]

神人.....rmvx的東西
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
676
在线时间
224 小时
注册时间
2006-12-7
帖子
839
12
发表于 2007-12-19 03:12:08 | 只看该作者
强悍的东西 下来研究{/hx}
正好需要此功能
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-16 05:56

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表