|
|
发表于 2026-1-21 15:35:49
|
查看: 29 |
回复: 0
本帖最后由 夏乐 于 2026-1-21 16:01 编辑
本次移植将原本为 RPG Maker XP 移植的烛光系统脚本(原帖:https://rpg.blue/thread-378564-1-1.html),从依赖外部DLL(tktk_bitmap.dll)调整为使用URGE引擎提供的原生 API。范例文件在原帖的基础上进行了修改。移植的过程没有弄明白原先tktk_bitmap和URGE中提供的blend_type的类型区别,直接修改接口会出现灯光变成亮光矩阵的问题(不知道为什么),主要的修改有:
一、颜色反相(Invert)处理的重构
原脚本使用 tktk_bitmap.dll 提供的 invert() 方法,在 URGE 引擎中需用原生操作替代:
- # 反相
- #@bitmap.invert()
- # 创建一个纯白色位图
- white_bitmap = Bitmap.new(bitmap.width, bitmap.height)
- white_bitmap.fill_rect(0, 0, bitmap.width, bitmap.height, Color.new(255, 255, 255, 0))
- # 使用减法混合模式(如果可用)
- # blend_type = 2 通常是减法混合
- bitmap.blt(0, 0, white_bitmap, bitmap.rect, 255, 2)
- # ==========================
复制代码 二、混合模式(Blend Type)的适配调整
将原接口blend_type的值3改为值2:
- # 乗算合成(3)
- # =========================
- # self.bitmap.blend_blt(p_x, p_y, light.bitmap, rect, 3)
- self.bitmap.blt(p_x, p_y, light.bitmap, rect, 255, 2)
复制代码 三、完整脚本
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
|