Project1

标题: 请问如何将立绘批量合成导出 [打印本页]

作者: 进京赶考的驴    时间: 2020-1-29 23:14
标题: 请问如何将立绘批量合成导出
本帖最后由 进京赶考的驴 于 2020-1-29 23:15 编辑

事情的开头是这样的,我正在为使干物吸血鬼能通过nekorpgxp模拟器在安卓上运行而努力,经过小白艰难的努力基本上修车成功,可在最后遇见了一个大问题。
我在游戏脚本文件中找到了这样一个脚本,ピクチャ合成,是为了使一张表情和一张身体图片合成为一个立绘的插件,可是nekorpg模拟器好像不能正常运行涉及图层合成的插件,仅能正常读取第一张图片(表情图片)。绝大部分时候只能看见一双眼睛。
于是我就突发奇想,可以手动把两张图片按照脚本所示真正合成为一张图片,可是真正打开ps开始动手后发现工作量太大了,不仅要确保图层顺序正确,还要确保文件名符合格式,一千多张呀妈妈咪。
于是来论坛请教各位大佬,有没有什么工具可以按照脚本所示把面部图层和身体图层批量处理导出为立绘.png呀?

脚本节录如下,
# ※使用方法
# 判定画像名の画像を使うと、自動で合成されていきます

module TOMO
  module BlendBitmap
    # 合成画像リスト
    # 判定画像名 => ["合成画像名1", "合成画像名2", …],
    #
    # (「判定画像→合成画像1→ …」の順に合成していきます)
    Name = {
"t_B_たくし上げ_通常" => ["B_たくし上げ","通常"],
"t_B_たくし上げ_笑顔" => ["B_たくし上げ","笑顔"],
"t_B_たくし上げ_驚き" => ["B_たくし上げ","驚き"],
"t_B_たくし上げ_焦る" => ["B_たくし上げ","焦る"],
"t_B_たくし上げ_困る" => ["B_たくし上げ","困る"],
"t_B_たくし上げ_困る口開き" => ["B_たくし上げ","困る口開き"],
"t_B_たくし上げ_悲しみ" => ["B_たくし上げ","悲しみ"],
"t_B_たくし上げ_怒る" => ["B_たくし上げ","怒る"],
"t_B_たくし上げ_もっと怒る" => ["B_たくし上げ","もっと怒る"],
"t_B_たくし上げ_恐怖" => ["B_たくし上げ","恐怖"],
"t_B_たくし上げ_恐怖影有り" => ["B_たくし上げ","恐怖影有り"],
"t_B_たくし上げ_恐怖影有り口開き" => ["B_たくし上げ","恐怖影有り口開き"],
"t_B_たくし上げ_泣き" => ["B_たくし上げ","泣き"],
"t_B_たくし上げ_泣き影有り" => ["B_たくし上げ","泣き影有り"],
"t_B_たくし上げ_苦しい" => ["B_たくし上げ","苦しい"],
"t_B_たくし上げ_苦しい口開き" => ["B_たくし上げ","苦しい口開き"],
"t_B_たくし上げ_><" => ["B_たくし上げ","><"],
"t_B_たくし上げ_発情" => ["B_たくし上げ","発情"],
"t_B_たくし上げ_発情口開き" => ["B_たくし上げ","発情口開き"],
"t_B_たくし上げ_スヤァ" => ["B_たくし上げ","スヤァ"],
"t_B_たくし上げ_催眠" => ["B_たくし上げ","催眠"],
"t_B_たくし上げ_のほ~ん" => ["B_たくし上げ","のほ~ん"],

    }
  end
end

class << Cache
  alias tomo_blend_bitmap_load_bitmap load_bitmap
  def load_bitmap(folder_name, filename, hue = 0)
    @cache ||= {}
    if !filename.empty? && TOMO::BlendBitmap::Name[filename]
      blend_bitmap(folder_name, filename)
    else
      tomo_blend_bitmap_load_bitmap(folder_name, filename, hue)
    end
  end
  
  def blend_bitmap(folder_name, filename)
    path = folder_name + filename
    unless include?(path)
      @cache[path] = Bitmap.new(path)
      TOMO::BlendBitmap::Name[filename].each do |name|
        src_bitmap = load_bitmap(folder_name, name)
        @cache[path].blt(0, 0, src_bitmap, src_bitmap.rect)
      end
    end
    @cache[path]
  end
end

picturemix.rar

8.09 KB, 下载次数: 59

全部此脚本内容在此


作者: kunikai    时间: 2020-1-29 23:36
本帖最后由 kunikai 于 2020-1-30 01:02 编辑

可以试试把自己的素材放进“纸娃娃生成器”里。
感觉这东西的功能和你需要的差不多。(?)
以及,辛苦你了 。
【编辑于 2020.1.30 0时18分】
可以试试“GalPhotoAuto”。(我也只是听说过……)
作者: 进京赶考的驴    时间: 2020-1-30 00:14
kunikai 发表于 2020-1-29 23:36
可以试试把自己的素材放进“纸娃娃生成器”里。
感觉这东西的功能和你需要的差不多。(?)
以及,辛苦你了 ...

请问是不是我在论坛搜索到的这个:6RPG立绘纸娃娃?
其实主要的问题在于输出的png必须保持文件名格式正确才能被脚本中的各公共事件读取,明天试一试这个
作者: kunikai    时间: 2020-1-30 00:28
本帖最后由 kunikai 于 2020-1-30 01:26 编辑
进京赶考的驴 发表于 2020-1-30 00:14
请问是不是我在论坛搜索到的这个:6RPG立绘纸娃娃?
其实主要的问题在于输出的png必须保持文件名格式正确 ...


不需要什么纸娃娃了。
如图所示,我认为“GalPhotoAuto”这一工具可以在一定程度上满足您的需求。

下载: GalPhotoAuto.rar (960.69 KB, 下载次数: 95)


模式一:左底右面,底在下,面在上。支持一底对多面、多底对一面、多底对多面。
如图是该工具“模式一”命名方式的参考,以coin为底,barrel和cocktail为面。

原图片:
合成后:

值得玩味的是“coin_cktail”这一名称。
按此规则,“六珈荑洵”为底、“六珈蓼萦”为面合成,输出结果会是“六珈荑洵_蓼萦”。
而“立绘”为底,“表情差分”为面,则生成图片名称为“立绘_表情差分”。
希望原作者有一个好的命名习惯。



作者: 进京赶考的驴    时间: 2020-1-30 01:14
kunikai 发表于 2020-1-30 00:28
不需要什么纸娃娃了。
如图所示,我认为“GalPhotoAuto”这一工具可以在一定程度上满足您的需求。
下载: ...

感谢大佬热心回复
但遗憾的是,galphotoauto在一开始就尝试过了,可惜的是原脚本作者不让游戏作者有好的命名习惯,例如:通常.png和B_たくし上げ.png,两张图片合成出来是通常_B_たくし上げ.png,输出结果不是t_B_たくし上げ_通常.png,而且这个游戏最坑爹的地方在于双女主,不能一股脑的把身体图层一个文件夹脸部图层一个文件夹合成,最后还是落到一张张图片检查合成的境地。
感觉还是得自己一张张按照脚本的搭配ps,我可以的,我可以的,我可以的,才一千三百多张而已嘛
作者: SixRC    时间: 2020-1-30 02:58
不能直接 rm 上吗
零件是
1.你的脚本设定
2.RGSS自带的位图blt功能
3.
位图保存


拼一拼 脚本不就来啦 纯手工 要啥工具
作者: 御曹司    时间: 2020-1-30 07:07

PS就可以。试一下“动作”功能
作者: 进京赶考的驴    时间: 2020-1-30 16:30
感谢各位大佬的帮助,最后还是使用galphotoauto按照游戏脚本手动添加合成,
期间使用了网络上随便找的命名工具添加了前缀“t_”
“搜索everything.exe”应用程序帮了我大忙。
修车初步成功!图片合成完毕后替换再删除ピクチャ合成脚本,就能正常显示立绘了。
这里是picture文件夹:1TTgL76D0oFesvZNMLThwOg 提取码:7m46
这里是修好以后的Data文件夹:11jC9bqNWDn-LhTuHs4kUzA 提取码:6nnt
游戏是干物吸血鬼1.1汉化版,nekorpgxp模拟器版本为谷歌商店的最新2.01版本。
作者: 2375109123    时间: 2020-8-16 20:41
大佬,干物吸血鬼picture文件夹链接炸了,求补档。




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