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

Project1

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

[交流讨论] 写了个auto shadow插件,但是效率很低

[复制链接]

Lv4.逐梦者

梦石
2
星屑
5550
在线时间
2566 小时
注册时间
2012-2-9
帖子
990

开拓者

跳转到指定楼层
1
发表于 2017-10-14 02:31:02 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

x
本帖最后由 garfeng 于 2017-11-10 21:44 编辑



设置方法,用region id标记光源





效果和生成的光图:

两个黑点是用来测试标记光源位置的,实际没有。

大概就是这种效果。
现在处理的办法是:用另一个编译好的exe算光影图,算完后js会调ulds把图加载进来。
这种办法是第一次载入地图时,把图存起来,以后直接就是显示图片了,可以很快。
但是第一次载入会很慢很慢很慢。

计算方法大概是从每个点到每个光源做直线,然后计算这条线段上有无遮挡。遮挡因为只计算墙壁,所以都是规则的立方体。
不知道有没有其他的更快的算法……求教。
如果能解决好,大的游戏也可以带光影,只是在玩家机器上生成而已

不知道大家对解决这个问题有没有什么办法……

谢谢~







下面是使用方法和相关文件,因为楼下收到Khas Advanced Lighting这个插件的回复,所以本插件不再继续开发,现有的版本使用方法大致如下:


1. 添加下方的脚本:


js代码



2. 下载下方附件解压,将得到的exe文件放在游戏根目录,且在游戏的img目录下创建一个auto_light文件夹:

light.zip (663.65 KB, 下载次数: 143)






3. 在rmmv编辑器里添加光源,在地图note里添加墙壁高度:





这里的region id 1,3是我在插件参数里设置好的光源。

在地图note里设置墙壁高度:

HTML 代码复制
  1. <autolight>{"wall_height":1}</autolight>


4. 运行游戏:

开始后,会检测auto_light目录下的光图片,没有的话就会生成:





生成的光影图:




你可以对它进行一些其他的优化,比如修改色调。





评分

参与人数 4星屑 +50 +4 收起 理由
yueshiguili112 + 1 我很赞同
89444640 + 1 效果真不錯
king + 1 求JS插件
余烬之中 + 50 + 1 有意义的讨论主题

查看全部评分

Lv1.梦旅人

梦石
0
星屑
69
在线时间
0 小时
注册时间
2018-11-30
帖子
32
8
发表于 2018-11-30 05:07:34 | 只看该作者
感谢楼主分享
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
16034
在线时间
3991 小时
注册时间
2015-9-14
帖子
1337

开拓者

7
发表于 2017-10-15 15:10:58 | 只看该作者
樓主是否這些lights素材: lights.rar (162.66 KB, 下载次数: 111)

评分

参与人数 2星屑 +10 +1 收起 理由
余烬之中 + 10 认真讨论回帖
garfeng + 1 哇~谢谢!

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
34
在线时间
22 小时
注册时间
2017-10-8
帖子
2
6
发表于 2017-10-15 01:06:34 | 只看该作者
lhy9443 发表于 2017-10-15 00:14
Graphics插件需要1.1版本才支持
本插件版本为4.2,支持动态光影,对性能要求较高
...

还要注意一下:
这插件需要Pixi.js v3或以上的版本
RMMV 1.01版本提供的Pixi.js是低于v3的版本
所以 需要更高的RMMV版本才能使用
至于符合要求的最低版本 我没一个一个去试
反正我用RMMV 1.3.4是没有问题的 提供的Pixi.js是v4.0.3
话说有谁会用的?发个教程呗

点评

是21M才對  发表于 2017-10-15 18:46
他在mega中有範例(3,0和4.X二種),約2.3M大小  发表于 2017-10-15 18:44
arcthunder.blogspot.com/p/tutorial-advanced-lighting.html,这是他的帮助文档。另外,该脚本需要素材,素材大概应会在他的帮助页面有下载?我这里爬不出去  发表于 2017-10-15 13:09

评分

参与人数 1星屑 +5 收起 理由
余烬之中 + 5 认真讨论回帖-连贴

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
34
在线时间
22 小时
注册时间
2017-10-8
帖子
2
5
发表于 2017-10-15 00:14:30 | 只看该作者
Graphics插件需要1.1版本才支持
本插件版本为4.2,支持动态光影,对性能要求较高

KhasUltraLighting.rar

12.02 KB, 下载次数: 104

KhasCore.rar

2.15 KB, 下载次数: 98

KhasGraphics.rar

2.22 KB, 下载次数: 85

评分

参与人数 1+1 收起 理由
garfeng + 1 谢谢~谢谢!

查看全部评分

回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
22933
在线时间
8637 小时
注册时间
2011-12-31
帖子
3367
4
发表于 2017-10-14 12:52:54 | 只看该作者
本帖最后由 tseyik 于 2017-10-14 12:56 编辑

VA有名的光影脚本的作者寫的MV插件
Khas Advanced Lighting​
https://forums.rpgmakerweb.com/index.php?threads/khas-advanced-lighting-v4-2-ultra-now-with-real-time-shadows.77679/
You can download the Master Demo or all my plugins here (click me!).
[RMMV] Advanced Lighting Tutorial (with real-time shadows!)
https://www.youtube.com/watch?time_continue=856&v=ghcX7H8ijjs




点评

mega也被禁了……能发个百度网盘吗……TOT  发表于 2017-10-14 14:34
谢谢~  发表于 2017-10-14 14:28
https://mega.nz/#F!ZcYUkC7S!hyCQej47BxowGyC7xBtPYA  发表于 2017-10-14 13:25
谢谢~求搬运脚本或工程=-=近期因为开会,梯子挂了……TOT  发表于 2017-10-14 13:03

评分

参与人数 2星屑 +10 +1 收起 理由
余烬之中 + 10 认真讨论回帖
garfeng + 1 塞糖

查看全部评分

回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42324
在线时间
7597 小时
注册时间
2009-7-6
帖子
13505

开拓者贵宾

3
发表于 2017-10-14 10:09:05 | 只看该作者
射线检测感觉效率不会太低?
http://ncase.me/sight-and-light/

这里也有算法,我在极短12里就参考这个算法实现了动态光照。
丝毫不会卡顿。

点评

这个范例速度好快!  发表于 2017-10-14 10:48

评分

参与人数 2星屑 +10 +1 收起 理由
余烬之中 + 10 认真讨论回帖
garfeng + 1 谢谢~

查看全部评分

RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1759
在线时间
2524 小时
注册时间
2010-10-12
帖子
1454

开拓者

2
发表于 2017-10-14 06:27:30 | 只看该作者
本帖最后由 刺夜之枪 于 2017-10-13 14:29 编辑

有意思的问题,我回头有空研究一下。马克一下。

先查了些资料:


Intersection of Linear and Circular Components in 2D


line segment to circle collision/intersection detection


how to create 2D visibility/shadow effects for your game


2d Visibility from Red Blob Games


Field of View and Line of Sight in 2D


基本上还是 通过 射线 , FoV算法 。


用PIXI写,效率是不会有问题的。

评分

参与人数 3星屑 +10 +2 收起 理由
余烬之中 + 10 认真讨论回帖
hyrious + 1 塞糖
garfeng + 1 谢谢~了解下

查看全部评分


回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-13 02:29

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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