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

Project1

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

[已经解决] 如何修改picture的色相

[复制链接]

Lv1.梦旅人

梦石
0
星屑
60
在线时间
705 小时
注册时间
2007-12-23
帖子
874
跳转到指定楼层
1
发表于 2015-2-21 21:31:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
色相好像只对character、battler、animation等几种东西起作用,picture好像是没有色相的设定的。

不知道有没有RM自带的方法或者是大神写的脚本或者是DLL可以实现这样的功能?

手写实在太蛋疼了,虽然原理不是很复杂,但我只会写bmp格式的色相变换,不会PNG那一套的啊。

评分

参与人数 1星屑 +35 收起 理由
RyanBern + 35 手动认可奖励

查看全部评分

买了正版RMMV的同学进来看一下,谢谢~
https://rpg.blue/thread-393237-1-1.html

Lv5.捕梦者

梦石
0
星屑
33432
在线时间
5108 小时
注册时间
2012-11-19
帖子
4878

开拓者

2
发表于 2015-2-21 23:06:57 | 只看该作者
把 RPG::Cache.picture 改一下,改成需要 色相 参数。

点评

能告诉我具体应该怎么做吗?  发表于 2015-2-22 10:42

评分

参与人数 1星屑 +90 收起 理由
RyanBern + 90 我很赞同

查看全部评分

xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv1.梦旅人

薄凉看客

梦石
0
星屑
50
在线时间
1269 小时
注册时间
2010-6-20
帖子
1316
3
发表于 2015-2-21 23:10:49 | 只看该作者
RPG::Cache模块中定义的方法load_bitmap是可以调整色相的。
像动画
def self.animation(filename, hue)
  self.load_bitmap("Graphics/Animations/", filename, hue)
end

很清楚 self.load_bitmap("Graphics/Animations/", filename, hue)

但是 定义picture 就变成了:
self.load_bitmap("Graphics/Pictures/", filename) 。。。。

很简单
def self.picture(filename, hue = 0)
  self.load_bitmap("Graphics/Pictures/", filename, hue)
end

点评

@taroxd 你一直点评不回贴我给不到糖呢。  发表于 2015-2-22 17:41
@taroxd RM的F1里说高速缓存会快很多啊。。。而且平常的经验告诉我凡是涉及到频繁读写文件效率就会很低  发表于 2015-2-22 17:39
可以是可以啦- - 但是改参数个数容易出问题。话说为啥要执着于 Cache  发表于 2015-2-22 13:57
@taroxd 能不能alias一下,如果hue=0就调用原来的,否则就那样改  发表于 2015-2-22 13:54
对,参数个数不要改比较好,哪怕用默认参数也是一样。建议直接用 Bitmap 取然后改色相,别用缓存了  发表于 2015-2-22 13:48

评分

参与人数 2星屑 +20 梦石 +1 收起 理由
RyanBern + 1 认可答案
gonglinyuan + 20 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

4
发表于 2015-2-22 17:47:02 | 只看该作者
本帖最后由 taroxd 于 2015-2-22 17:49 编辑

那我就回一下贴收糖吧

缓存快很多,前提是你之前读取过一次相同的图片,而且没有释放。否则,文件操作是避免不了的。
不过,当你用到 picture ,还需要改色相的时候,能够用到缓存的加速效果可能性很小。如果不释放,反而是大量很少用到的位图浪费内存。

涉及频繁读写的效率很低。问题是,你读写那张图片频繁吗?
频繁读写的东西,放在 System 文件夹之类的话不是更加合适吗?这样的话,倒确实可以用上缓存。

RM 的肯定有改色相的方法,否则其他图片是无法实现改色相的。VA 中是 Bitmap#change_hue (还是 hue_change 来着,忘了)

另外,其实最简单的方法就是:直接用 PS 去改色相。

点评

色相不同的话缓存也没用  发表于 2015-2-23 08:24
干脆就直接读文件吧;效率什么的一边去,先做出来再说。。  发表于 2015-2-22 22:26
另外RMXP没有System。。  发表于 2015-2-22 22:25
我要做的效果是魔塔中地图显示伤害,伤害颜色随伤害大小而改变色相(从红到绿)。的确是要频繁调用的,但是好像每次的色相都会有不同。  发表于 2015-2-22 22:24

评分

参与人数 2星屑 +120 收起 理由
gonglinyuan + 20 认可答案
RyanBern + 100 我先给

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-14 14:10

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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