Project1

标题: illusion动画合并 + 大地图自动分割[重传1.0] [打印本页]

作者: hoverstar    时间: 2009-3-30 12:47
标题: illusion动画合并 + 大地图自动分割[重传1.0]
程序打包下载:
http://sites.google.com/site/hov ... .rar?attredirects=0
(已经过kav检查无毒,程序解压后即可运行,因为是console程序,那个dos黑框不用管,主界面菜单无用,就只用两个输入框和两个按钮)
程序重新打包上传,希望能用了

illusion的动画合并成单张图片:

1、选择illusion文件夹

建议直接复制地址栏,如下

2、点“Go”运行
3、等待提示完成信息

4、到程序当前文件夹下找“illusion.jpg”


说明:
1、原图片数必须是5的倍数,不然最后几张图片加不进去
2、只考虑 jpg 图片输入/出,自己试了下不同格式生成大小就是它最小


大地图自动分割
1、选择大地图文件夹

建议直接复制地址栏,同上
2、点“Go”运行(程序会把大地图文件夹所有的jpg图片进行分割)
3、等待提示完成信息

4、到程序当前文件夹下找“cut_<源文件>.jpg”
1.jpg(来自《仙剑客栈》)

cut_1.jpg


2.jpg(来自vista自带桌面,后来发现RMXP中根本不能建这么大的地图)
点这里http://rpg.blue/upload_program/d/hoverstar_2_118897929.jpg查看原图
cut_2.jpg
太长了,点这里http://rpg.blue/upload_program/d/hoverstar_cut_2_118897219.jpg看效果
5、把分割后的图片导入RMXP,画地图(以cut_1为例)
程序默认分割时加入一些空行(红圈圈出),自我感觉画地图时好分辨些


说明:
1、原图片像素宽度必须是32的倍数,不然最后几列到RMXP选不上
2、只考虑 jpg 图片输入/出,自己试了下不同格式生成大小就是它最小

这些图怎么用不用说了吧...

最后说明:
1、希望有更多华丽的游戏出现,本人没有做游戏的艺术细胞,只好捣鼓这些体力活,真心希望对某些人有帮助。
2、我把算的过程用matlab{/gg}表示如下,要改要用随便。
3、感觉不妥的地方不妨喷上几句,力所能及的范围内我会改的。


///// 大地图自动分割 ///////
  1. folder='..\';
  2. files=dir([folder '*.jpg']);

  3. for i=1:length(files)
  4.     %I=imread([folder files((i-1)*5+j,:)]);
  5.     file=files(i);
  6.     I=imread([folder file.name]);

  7.     [h,w,z]=size(I); % w | unitW = 0

  8.     col=w/256;
  9.     unitW=256/8;

  10.     J=zeros(h*ceil(col)+col*unitW,256,z);
  11.     for i=0:col-1
  12.         J(((unitW+h)*i+1):((unitW+h)*i+unitW+1),:,:)=0;
  13.         J(((unitW+h)*i+unitW+1):((unitW+h)*i+h+unitW),:,:)=I(:,(1+256*i):256*(i+1),:);
  14.     end

  15.     if(ceil(col)~=col)
  16.         i=ceil(col)-1;
  17.         J(((unitW+h)*i+unitW+1):((unitW+h)*i+h+unitW),1:(w-256*i),:)=I(:,(1+256*i):w,:);
  18.     end

  19.     imwrite(uint8(J),['../GeneratedImage/cut_' file.name]);

  20. end
复制代码


////////////////////////////////////////////////// 旧帖
没事用matlab写了个,不知道有用不(原图片数必须是5的倍数,不然最后几张图片加不进去)

  1. folder='f:/tmp/';
  2. files=ls([folder '*.jpg']);

  3. for i=1:length(files)/5
  4.    
  5.     for j=1:5
  6.         I=imread([folder files((i-1)*5+j,:)]);
  7.         if j==1
  8.             row=I;
  9.         else
  10.             row=[row I];
  11.         end
  12.     end
  13.    
  14.     if i==1
  15.         image=row;
  16.     else
  17.         image=[image;row];
  18.     end
  19. end

  20. imwrite(image,'F:\game\Projects\test\Graphics\Animations\test.jpg')
复制代码

作者: tommay    时间: 2009-3-30 20:50
LZ挺有意思,难道让所有用你程序的人都先装上matlab吗?还不如用Ruby编个来得实惠。
作者: hoverstar    时间: 2009-3-31 01:45
这本来就是自己用的,改天有空放个独立的可执行文件上来就方便了
作者: 木葬枫    时间: 2009-3-31 01:57
「望天」要是有自动拼动画的软件就好了啊~~「喂!怎么可能!」
作者: tommay    时间: 2009-3-31 18:40
回LZ:程序打开不能{/pz}

作者: hoverstar    时间: 2009-4-1 02:20
以下引用tommay于2009-3-31 10:40:39的发言:
<br><script language="javascript">
<!--
strCont="回LZ:程序打开不能{/pz}\r\n";
document.write(ubb.spbShowTopic(strCont,1));
//-->
</script>回LZ:程序打开不能<img src="expression/pz.gif" height="20" width="20"><br>
<img src="http://rpg.blue/upload_program/d/tommay_error_118924787.jpg" style="" onload="if(this.width>document.getElementById('main').style.pixelWidth-310){this.width=document.getElementById('main').style.pixelWidth-310;}" onmousewheel="return imgZoom(this)" onclick="window.open(this.src,null,'')" border="0">


Delete msvcrt.dll in the folder and try again, please
作者: tommay    时间: 2009-4-1 02:25
依旧不行
作者: hoverstar    时间: 2009-4-1 03:02
以下引用tommay于2009-3-31 18:25:02的发言:

依旧不行


那先等一下了,应该是dll不兼容的问题,我上网找找原因。
对不住了{/bz}
作者: hoverstar    时间: 2009-4-1 03:54
原因可能是因为我在vista上编译的,所以xp不能用,除非在xp上安装过.net运行环境,所以我得先找太xp的机器重新试着编译一遍,再看能解决不。马上想用的可以安装.net后试下
microsoft下载:http://www.microsoft.com/downloa ... d-8edd-aab15c5e04f5
太平洋下载:http://dl.pconline.com.cn/html_2/1/82/id=10637&pn=0.html
[LINE]1,#dddddd[/LINE]版主对此帖的评论:『请善用编辑功能减少连帖』,积分『-0』。这些被扣积分的一半会用于对本帖正确答案的悬赏。




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