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

Project1

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

[原创发布] 【移植】烛光系统(VA -> XP -> RMXP_URGE)

[复制链接]

Lv2.观梦者

梦石
0
星屑
560
在线时间
210 小时
注册时间
2013-11-22
帖子
77
跳转到指定楼层
1
发表于 2026-1-21 15:31:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


本次移植将原本为 RPG Maker XP 移植的烛光系统脚本(原帖:[原创发布] 【移植】烛光系统(VA -> XP)),从依赖外部DLL(tktk_bitmap.dll)调整为使用URGE引擎提供的原生 API。范例文件在原帖的基础上进行了修改。移植的过程没有弄明白原先tktk_bitmap和URGE中提供的blend_type的类型区别,直接修改接口会出现灯光变成亮光矩阵的问题(不知道为什么),主要的修改有:

一、颜色反相(Invert)处理的重构
原脚本使用 tktk_bitmap.dll 提供的 invert() 方法,在 URGE 引擎中需用原生操作替代:
RUBY 代码复制
  1. # 反相
  2.         #@bitmap.invert()
  3.         # 创建一个纯白色位图
  4.         white_bitmap = Bitmap.new(bitmap.width, bitmap.height)
  5.         white_bitmap.fill_rect(0, 0, bitmap.width, bitmap.height, Color.new(255, 255, 255, 0))
  6.         # 使用减法混合模式(如果可用)
  7.         # blend_type = 2 通常是减法混合
  8.         bitmap.blt(0, 0, white_bitmap, bitmap.rect, 255, 2)
  9.         # ==========================


二、混合模式(Blend Type)的适配调整
将原接口blend_type的值3改为值2:
RUBY 代码复制
  1. # 乗算合成(3)
  2.     # =========================
  3.     # self.bitmap.blend_blt(p_x, p_y, light.bitmap, rect, 3)
  4.     self.bitmap.blt(p_x, p_y, light.bitmap, rect, 255, 2)



三、完整脚本

va烛光_urge.rb (9.05 KB, 下载次数: 3)



四、范例下载


购买主题 已有 8 人购买  本主题需向作者支付 1 星屑 才能浏览
RM游戏【解密+剧情】绘之楼-第一章
点击前往
橙光游戏【短十】一个皮球
点击前往

Lv4.逐梦者

梦石
2
星屑
13713
在线时间
2315 小时
注册时间
2011-6-4
帖子
635
2
发表于 2026-1-22 19:15:54 | 只看该作者
哦牛蛙终于有移植了。
BUG反馈请加QQ 529283039
水友群 917854767

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
559
在线时间
63 小时
注册时间
2019-4-28
帖子
5
3
发表于 2026-1-23 13:24:54 | 只看该作者
试试看怎么样。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-6-4 18:32

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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