Project1

标题: 才发现RMXP的bitmap连90度角都无法精确旋转 [打印本页]

作者: 熊的选民    时间: 2016-3-17 10:11
标题: 才发现RMXP的bitmap连90度角都无法精确旋转
正常行走图旋转后会丢掉一行像素,算法简直太烂了。
作者: 刺夜之枪    时间: 2016-3-17 11:05
你真的在意这1排像素吗。。

作者: MeowSnow    时间: 2016-3-17 12:20
听起来在策划横向重力的特殊关卡吗。
作者: RyanBern    时间: 2016-3-17 13:59
Bitmap类居然有旋转功能,我怎么没发现?
作者: taroxd    时间: 2016-3-17 18:42
本帖最后由 taroxd 于 2016-3-17 18:49 编辑

不在意效率的话可以手工 set_pixel...

或者一个比较蠢的办法:事先准备好一张旋转好的图片文件
作者: fux2    时间: 2016-3-17 18:45
在内存里搞搞吧,没什么好的方法
作者: 冷峻逸    时间: 2016-3-17 21:33
提示: 作者被禁止或删除 内容自动屏蔽
作者: gonglinyuan    时间: 2016-4-9 23:07
Sprite的旋转应该是乘以[[cos,-sin],[sin,cos]],如果它内部实现的代码使用了一些比较过分的优化,容易使得三角函数丢失精度,出现这种情况。其实对于90度和180度这种特殊情况,可以直接乘以特殊的矩阵更好一些。
手动写显然是不现实的,因为Ruby这种脚本语言甚至无法通过指令集层面进行并行,更不要说硬件加速了,一个一个像素枚举过来慢得吓死人。。。我曾今写过手动高斯模糊,因为XP不自带模糊算法,写完后果断放弃,模糊640*480的地图要卡一秒。。只好借助外部DLL。
所以说还是再准备一张图比较靠谱,最多浪费一点位图缓存。。
作者: zl52wcl66rpg001    时间: 2016-4-10 06:35
再弄个图就完事了




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