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

Project1

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

[RMVA发布] 简单的画面变换 12.24更新:优化旋转算法

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1789
在线时间
951 小时
注册时间
2012-7-5
帖子
245
跳转到指定楼层
1
发表于 2016-12-23 20:53:00 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 浮云半仙 于 2016-12-24 08:35 编辑

就是一个位图进行变换(可以是整个游戏画面)
目前做了:反色,倒转,旋转(逆时针反向)。缩放,模糊什么的没写0,0

特点:很快。在我的奔腾E5500上,整个画面每等待3帧旋转3度也能流畅完成。

原理:
手动实现了一个C语言指针库,直接读写Bitmap对象的像素内存。旋转操作使用c语言实现(范例工程里面给了一个SceneRotate.c和SceneRotate.dll)(之前用ruby是在惨不忍睹..还是要向兰兰姐姐学习学习)

12.24更新:优化了旋转算法,解决了出现昨天旋转出现黑点的问题。

放图:




优化前:


优化后:



涉及的脚本比较多,还有个dll,就全都放到范例工程好了。

范例工程12.24更新: RotateTest.zip (1.45 MB, 下载次数: 126)

如有其余bug请联系作者0.0

点评

啧,才发现其实是顺时针转的...(获得成就:左右不分  发表于 2016-12-24 11:18

评分

参与人数 3星屑 +530 收起 理由
钓鱼的岛 + 18 塞糖
zaiy2863 + 446 (๑• . •๑)
永恒の未知数 + 66

查看全部评分

tan(pi/2)

Lv1.梦旅人

梦石
0
星屑
45
在线时间
152 小时
注册时间
2016-10-14
帖子
643
2
发表于 2016-12-23 21:42:32 | 只看该作者
请问? 这个有什么用呢.....

点评

对我来说 是用不到的.....  发表于 2016-12-24 11:22
至少反色就很有用,倒转得看情况  发表于 2016-12-24 10:47
QaQ  发表于 2016-12-23 22:58
最近学习列表 1:ps 2:脚本 3:即时战斗脚本 4:剧情 5:.... 我还是什么都不会 QAQ 回复
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
129
在线时间
124 小时
注册时间
2011-9-12
帖子
76
3
发表于 2016-12-23 22:10:13 | 只看该作者
图像旋转和缩放,要想没黑点的话建议用插值算法。
常用的双线性插值,取目标点周围四点,根据距离远近定为权值直接平均。

评分

参与人数 2星屑 +67 收起 理由
浮云半仙 + 15 塞糖
zaiy2863 + 52 学习了

查看全部评分

本帳號已經作廢。新ID是「湖中神劍」。
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12289
在线时间
21817 小时
注册时间
2010-10-24
帖子
308
4
发表于 2016-12-23 22:24:01 | 只看该作者
如果能写一个高效率的旋转图片的方法就很棒
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
45
在线时间
152 小时
注册时间
2016-10-14
帖子
643
5
发表于 2016-12-23 23:05:20 | 只看该作者
可以做恐怖游戏吗.........
最近学习列表 1:ps 2:脚本 3:即时战斗脚本 4:剧情 5:.... 我还是什么都不会 QAQ 回复
回复 支持 0 反对 1

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1789
在线时间
951 小时
注册时间
2012-7-5
帖子
245
6
 楼主| 发表于 2016-12-24 08:37:21 | 只看该作者
UDP:12.24更新,解决旋转出现黑点的问题。已编辑1L。
tan(pi/2)
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12587
在线时间
906 小时
注册时间
2014-10-24
帖子
321
7
发表于 2016-12-24 11:29:51 | 只看该作者
图片似乎会糊?

点评

计算精度的锅,本来方法就简单,而且从ruby到c之间传递浮点数用的是c语言float的精度所以....  发表于 2016-12-24 11:46
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7921
在线时间
1049 小时
注册时间
2012-4-3
帖子
1271

开拓者

8
发表于 2016-12-25 19:58:10 手机端发表。 | 只看该作者
画面旋转之后,操作按键是保存原状?还是跟着变换?这种效果挺不错的,我觉得为了颠倒世界的代入感,就需要这功能,话说楼主会有XP版本吗?
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1789
在线时间
951 小时
注册时间
2012-7-5
帖子
245
9
 楼主| 发表于 2016-12-25 21:42:51 | 只看该作者
Im剑侠客 发表于 2016-12-25 19:58
画面旋转之后,操作按键是保存原状?还是跟着变换?这种效果挺不错的,我觉得为了颠倒世界的代入感,就需要 ...

应该还会有更新的,旋转之后能够按旋转后的地图行走这个已经能做到了(几乎就是个伪3d脚本了)但是在我的电脑上很卡.....还要优化
在xp上...应该只需要实现个Graphics.snap_to_bitmap就好了》。。

点评

静候佳音了。  发表于 2016-12-26 13:50
tan(pi/2)
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42387
在线时间
7601 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

10
发表于 2016-12-25 22:56:36 | 只看该作者
直接矩阵旋转的吗,全是黑点……这样旋转根本不可能用啊。

----------------------------
原来今天解决了黑点问题,但感觉算法似乎还没有sprite自带的旋转优?
总之反色和倒转比较有用,相比之下旋转就鸡肋了。
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-22 01:13

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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