![Board logo](images/default/logo_bg.jpg)
标题: Meff里的"加深"能否改为对黑色背景有效? [打印本页]
作者:
may123 时间: 2014-6-18 00:18 标题: Meff里的"加深"能否改为对黑色背景有效?
加深(1-16):数值越小,颜色越深。
黑色/粉色均能当背景,但貌似只有粉背景才能设置(减小)加深;黑色背景设置了加深的话,黑色会显示出来。
使用黑色背景的理由,是因为它能“容忍”半透明像素,而“半透明色+粉底”就会产生近似F700FF的颜色,也就是粉边;
使用黑色背景的坏处,是半透明像素的黑底仍会被过滤,游戏中它看起来依旧是透明的,颜色显得非常浅。
能否既用黑背景,又能加深图片?
GIF镇楼:
[ 本帖最后由 may123 于 2014-6-19 15:36 编辑 ]
图片附件:
旋风_.gif (2014-6-18 00:19, 46.98 K) / 该附件被下载次数 60
http://xycq.org.cn/forum/attachment.php?aid=133597
图片附件:
浊流_.gif (2014-6-18 00:19, 26.86 K) / 该附件被下载次数 63
http://xycq.org.cn/forum/attachment.php?aid=133598
图片附件:
落石_.gif (2014-6-18 00:20, 45.15 K) / 该附件被下载次数 62
http://xycq.org.cn/forum/attachment.php?aid=133599
图片附件:
暗算_.gif (2014-6-18 00:20, 49.02 K) / 该附件被下载次数 70
http://xycq.org.cn/forum/attachment.php?aid=133600
图片附件:
毒烟_.gif (2014-6-18 00:20, 41.78 K) / 该附件被下载次数 70
http://xycq.org.cn/forum/attachment.php?aid=133601
图片附件:
小补给_.gif (2014-6-18 00:21, 37.64 K) / 该附件被下载次数 78
http://xycq.org.cn/forum/attachment.php?aid=133602
图片附件:
大补给_.gif (2014-6-18 00:21, 49.67 K) / 该附件被下载次数 69
http://xycq.org.cn/forum/attachment.php?aid=133603
图片附件:
觉醒_.gif (2014-6-18 00:21, 29.14 K) / 该附件被下载次数 69
http://xycq.org.cn/forum/attachment.php?aid=133604
图片附件:
强行_.gif (2014-6-18 00:22, 41.76 K) / 该附件被下载次数 67
http://xycq.org.cn/forum/attachment.php?aid=133605
图片附件:
能力上升(坚固)_.gif (2014-6-18 00:22, 40.04 K) / 该附件被下载次数 61
http://xycq.org.cn/forum/attachment.php?aid=133606
图片附件:
霸气_.gif (2014-6-18 00:22, 32.72 K) / 该附件被下载次数 66
http://xycq.org.cn/forum/attachment.php?aid=133607
图片附件:
未知_.gif (2014-6-18 00:23, 47.02 K) / 该附件被下载次数 62
http://xycq.org.cn/forum/attachment.php?aid=133608
附件:
Meff_.rar (2014-6-19 15:36, 531.75 K) / 该附件被下载次数 140
http://xycq.org.cn/forum/attachment.php?aid=133616
作者:
狂笑四海 时间: 2014-6-18 01:58
你用的是什么引擎?
作者:
may123 时间: 2014-6-18 09:30 标题: 回复 #2 狂笑四海 的帖子
5.9的
作者:
狂笑四海 时间: 2014-6-18 14:16
你干脆用6.0好了,6.0对真彩图片兼容性更好。
作者:
一ノ濑结爱 时间: 2014-6-18 23:10
你想多了,死有余辜、愚蠢不堪的曹操传引擎不存在半透明。所有半透明的图片,要么出现粉边,要么以图像失真的代价抠掉粉边。
用黑色背景也会出现黑色杂边。
如果使用非真彩图,调色板第一个颜色不是黑色,那么所有黑色部分都将不是背景,和加深无关。
作者:
may123 时间: 2014-6-19 12:02 标题: 回复 #5 一ノ濑结爱 的帖子
我想你误会了,上面任何一张GIF导入到Meff里,游戏里都是0杂边的,完全没有任何黑色成分(不要看预览,那个是骗人的),只不过颜色看起来略微浅了点。
小补给GIF在荒地:
[attach]133615[/attach]
不完美的解决方案:转为索引色时调色版第一个位置改成黑色(或者魔棒0容差改黑为粉),这样通过减小Meff里的加深值,来增加"黑色成分"的透明度,达到加深颜色的效果。
加深值合适的话,肉眼是感觉不出有任何黑色成分的。
[ 本帖最后由 may123 于 2014-6-19 12:03 编辑 ]
图片附件:
wwww.gif (2014-6-19 12:03, 119.39 K) / 该附件被下载次数 71
http://xycq.org.cn/forum/attachment.php?aid=133615
作者:
一ノ濑结爱 时间: 2014-6-19 13:22 标题: 回复 #6 may123 的帖子
能否附件一下meff.e5(打包比较好)。
我是从程序角度解读的,在目前所知范围内,半透明色是不允许的。但也有可能遗漏了什么,那么是我的错误。
希望能够看一下你导入的MEFF。
作者:
狂笑四海 时间: 2014-6-19 14:42
新meff动画是我一直想改的,祝LZ成功。
作者:
star175 时间: 2014-6-19 14:48 标题: 回复 #6 may123 的帖子
我记得在5.9前的版本里黑色(000000)是可以作为透明色,甚至蓝色也行,这和图本身的调色版有关,但是图片导入后,是会丢掉调色板的,而直接使用174色调色板
如果可以请上传图片的bmp格式图
作者:
may123 时间: 2014-6-19 15:38 标题: 回复 #5 一ノ濑结爱 的帖子
见1楼;
游戏里明显感觉变淡的2个策略是"暗算"、"落石"
作者:
may123 时间: 2014-6-19 15:42 标题: 回复 #9 star175 的帖子
见1楼;
其实我就是偶然发现所有的黑色元素都会被过滤,我的处理方法也只是取巧,我根本不理解混色机制。
作者:
star175 时间: 2014-6-19 17:01
测试过了,是楼主搞错了。
你的图看上去是黑色背景,但这只是我们看到表面现象;不过这个图如果用ccz的exe来解读的话,黑色不是背景,而是有效的图像信息,所以进行任何混色时,跟我们真正想处理的那部分像素°是使用一样的处理方法。
附件中我改了一下第1和第5张,你测试一下。
再好的素材转了256色以后都会有失真损失,可是在这种情况下还得使用ccz的调色版进行处理,这下就更是惨不忍睹了,这绝对是个蛋痛的东西,这也是6.0诞生的原因之一。
ps:楼主有这些图的真彩格式的原图吗?如果有可否提供几张用于测试。
附件:
Meff.rar (2014-6-19 17:01, 531.73 K) / 该附件被下载次数 86
http://xycq.org.cn/forum/attachment.php?aid=133620
作者:
may123 时间: 2014-6-19 17:35 标题: 回复 #12 star175 的帖子
发Psd吧,所有的特效都是"原色图层+黑色图层"合并来的。
NND,传个小文件都很慢。
[ 本帖最后由 may123 于 2014-6-19 17:51 编辑 ]
附件:
暗算.rar (2014-6-19 17:44, 169.76 K) / 该附件被下载次数 81
http://xycq.org.cn/forum/attachment.php?aid=133621
附件:
落石.rar (2014-6-19 17:45, 158.79 K) / 该附件被下载次数 86
http://xycq.org.cn/forum/attachment.php?aid=133622
附件:
旋风.rar (2014-6-19 17:48, 267.1 K) / 该附件被下载次数 87
http://xycq.org.cn/forum/attachment.php?aid=133623
附件:
小补给.rar (2014-6-19 17:50, 259.24 K) / 该附件被下载次数 82
http://xycq.org.cn/forum/attachment.php?aid=133624
附件:
霸气.rar (2014-6-19 17:50, 206.82 K) / 该附件被下载次数 78
http://xycq.org.cn/forum/attachment.php?aid=133625
附件:
强行.rar (2014-6-19 17:51, 284.63 K) / 该附件被下载次数 81
http://xycq.org.cn/forum/attachment.php?aid=133626
作者:
一ノ濑结爱 时间: 2014-6-19 17:45
你使用的大多数图片(比如小补给),其实并没有半透明像素,或者有也不影响整体效果。所以能正常使用。不信你打开用画图油漆桶看看便知。
[strike]因此,把图转成粉色背景就可以用了。这是非常好的素材。
不要用油漆桶转,请用PS里的颜色替换功能。[/strike]
曹操传的透明效果只是一种混色,和半透明没关系,程序确实不允许半透明像素。
强行那张图里就有半透明像素,仔细看会有点锯齿或者偏黑。
=========
再测试了一下,发现其实这个方法确实有可行之处。因为配合了曹操传的透明效果,所以把整张图一起处理了,就不明显了。
也许真可以这么做,也就是,不要背景色,全都用有效的图像信息,然后配合MEFF透明完成。
透明都设成16,如果有点淡那就处理一下原图,把它加深一点。
[ 本帖最后由 一ノ濑结爱 于 2014-6-19 17:56 编辑 ]
作者:
star175 时间: 2014-6-19 17:47 标题: 回复 #13 may123 的帖子
psd更好
作者:
may123 时间: 2014-6-19 17:56 标题: 回复 #14 一ノ濑结爱 的帖子
不信你用粉色填充看看,效果不忍直视。
作者:
一ノ濑结爱 时间: 2014-6-19 17:57 标题: 回复 #16 may123 的帖子
对,小补给其实还是可以的。强行之流不行。
这就是没办法的事,所以后面补充了,建议你就按现在这么处理。
作者:
may123 时间: 2014-6-19 18:01 标题: 回复 #15 star175 的帖子
忘记了,可能更方便一点;
小补给:25帧
霸气:27帧
旋风:30帧
落石:29帧
强行:29帧
暗算:27帧
作者:
star175 时间: 2014-6-19 18:07 标题: 回复 #18 may123 的帖子
测试后怎么样?
我觉得第5个还行,第一个差了些,不过256色也差不多就这样了。
加上一定程度的透明,也能接受
[ 本帖最后由 star175 于 2014-6-19 18:10 编辑 ]
作者:
一ノ濑结爱 时间: 2014-6-19 18:09 标题: 回复 #12 star175 的帖子
我发现这些图在6.0上是会显现出黑色的,在非真彩引擎则不是。
一直觉得6.0的策略图颜色有点不一样,偏灰暗,可能因为算法是star自己设计的,不过趁这次可以试着调整下,说不定可以兼容此类图片,利用透明兼容带半透明像素的MEFF。
作者:
star175 时间: 2014-6-19 18:14 标题: 回复 #20 一ノ濑结爱 的帖子
的确是自己设计的,我也一直觉得和原版有差异
研究原版算法就有几处不甚理解,后来没有深入研究,自己重新写过了代码
[ 本帖最后由 star175 于 2014-6-19 18:18 编辑 ]
作者:
may123 时间: 2014-6-19 18:16 标题: 回复 #19 star175 的帖子
我觉得效果跟我6楼的做法差不多,就是叠加上黑色背景然后调整加深值(调色版第1位改成黑的情况下)
作者:
jiansan 时间: 2014-6-19 19:08
好东西,马克,坐收完成版~另外,楼主还有次套的其他文件不,多做点meff~
作者:
WHITESHIP 时间: 2015-1-10 17:14
我去研究了,原版处理透明色的代码在42FD5A,超复杂。而且光荣居然专门做了一套滤色算法,专门用来滤掉MEFF里的黑色,这个可真是始料未及。
滤色的备用色板在497770,要开始进程后才能读出来。
顺便,原版的滤色机制也并不完美,虽然透明16时能完全滤掉黑色,不过原本的法术色也会亮的很厉害。
如果是STAR6.0的代码,我建议加入一个算法来滤掉黑色。算法可能很复杂。
而且如果让黑色作为透明色,那黑色的MEFF比如晕眩就不好用了。
所以建议做一个判断,判断这一帧的透明值是多少,如果是16则特殊处理。这样可能比较好。
我打算用的算法是,如果MEFF这一个点的颜色是255,那么透明度正常,越接近0,透明度越低。
目前效果:
预设透明度 50
地图背景 MEFF 实际色
80 0 40
80 255 167
改良后:实际透明度=MEFF色/255*透明度 =0/255*50=0 或 255/255*50=50
预设透明度 50
地图背景 MEFF 实际色
80 0 80
80 255 167
这样就滤掉了黑色。
这个代码在6.0的40690C里,具体代码就不放了因为我也没开始写= =
而且还要根据来源是否40246D做一个判断,表示只有释放MEFF时才滤掉黑色。或者新写一个函数,让40246D去CALL这个新函数。
这么说起来也挺麻烦的……还不如用PS把黑色处理掉,虽然很丑。
以上都是给star175看的…………
=========================
非6.0引擎则没有任何问题,可以放心使用楼主这一套MEFF,但只能用256色的MEFF。
[ 本帖最后由 WHITESHIP 于 2015-1-10 17:18 编辑 ]
作者:
WHITESHIP 时间: 2015-1-10 18:12
补充,这样还是很多问题。会导致原来的MEFF太淡,换了一种新的算法。
用RGB三个颜色的平方除以一个不大的数字(原来是765=255*3,现在我设了30000)。得出来的透明度做个控制,不大于64H。这样后效果拔群!真的效果拔群卧槽!!
===========
搞定,代码如下,很乱,可能还有错误,将就着看吧= =(STAR6.0专属):
00402459 |. 0FB650 02 MOVZX EDX,BYTE PTR DS:[EAX+2] ; |
0040245D 0FB640 03 MOVZX EAX,BYTE PTR DS:[EAX+3]
00402461 6BC0 02 IMUL EAX,EAX,2
00402464 03D0 ADD EDX,EAX ; |
00402466 |. 52 PUSH EDX ; |Arg3
00402467 |. FF75 F0 PUSH DWORD PTR SS:[EBP-10] ; |Arg2
0040246A |. FF75 F4 PUSH DWORD PTR SS:[EBP-C] ; |Arg1 这几句是加深MEFF深度的,如果觉得太深可以把那个IMUL EAX,EAX,2改成3之类的。
0040246D E8 8E4B0D00 CALL FSB2.004D7000
004D7000 55 PUSH EBP
004D7001 8BEC MOV EBP,ESP
004D7003 6A 00 PUSH 0
004D7005 6A 00 PUSH 0
004D7007 90 NOP
004D7008 90 NOP
004D7009 90 NOP
004D700A 83EC 14 SUB ESP,14
004D700D EB 03 JMP SHORT FSB2.004D7012
004D700F FF45 F8 INC DWORD PTR SS:[EBP-8]
004D7012 8B4D F8 MOV ECX,DWORD PTR SS:[EBP-8]
004D7015 3B4D 08 CMP ECX,DWORD PTR SS:[EBP+8]
004D7018 0F83 C6000000 JNB FSB2.004D70E4
004D701E 6BC9 03 IMUL ECX,ECX,3
004D7021 034D 0C ADD ECX,DWORD PTR SS:[EBP+C]
004D7024 8B11 MOV EDX,DWORD PTR DS:[ECX]
004D7026 81E2 FFFFFF00 AND EDX,0FFFFFF
004D702C 81FA FF00F700 CMP EDX,0F700FF
004D7032 ^ 74 DB JE SHORT FSB2.004D700F
004D7034 894D F4 MOV DWORD PTR SS:[EBP-C],ECX
004D7037 8B4D 14 MOV ECX,DWORD PTR SS:[EBP+14]
004D703A 83F9 02 CMP ECX,2
004D703D 75 47 JNZ SHORT FSB2.004D7086
004D703F 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004D7042 6BC0 03 IMUL EAX,EAX,3
004D7045 0345 1C ADD EAX,DWORD PTR SS:[EBP+1C]
004D7048 8B08 MOV ECX,DWORD PTR DS:[EAX]
004D704A 81E1 FFFFFF00 AND ECX,0FFFFFF
004D7050 894D F0 MOV DWORD PTR SS:[EBP-10],ECX
004D7053 8955 EC MOV DWORD PTR SS:[EBP-14],EDX
004D7056 8B45 0C MOV EAX,DWORD PTR SS:[EBP+C]
004D7059 8B4D F8 MOV ECX,DWORD PTR SS:[EBP-8]
004D705C 6BC9 03 IMUL ECX,ECX,3
004D705F 03C1 ADD EAX,ECX
004D7061 0FB608 MOVZX ECX,BYTE PTR DS:[EAX]
004D7064 0FB650 01 MOVZX EDX,BYTE PTR DS:[EAX+1]
004D7068 0FB640 02 MOVZX EAX,BYTE PTR DS:[EAX+2]
004D706C 0FAFC0 IMUL EAX,EAX
004D706F 0FAFC9 IMUL ECX,ECX
004D7072 0FAFD2 IMUL EDX,EDX
004D7075 03C1 ADD EAX,ECX
004D7077 03C2 ADD EAX,EDX
004D7079 6BC0 64 IMUL EAX,EAX,64
004D707C 33D2 XOR EDX,EDX
004D707E B9 30750000 MOV ECX,7530
004D7083 F7F1 DIV ECX
004D7085 8B4D 10 MOV ECX,DWORD PTR SS:[EBP+10]
004D7088 0FAFC1 IMUL EAX,ECX
004D708B B9 64000000 MOV ECX,64
004D7090 33D2 XOR EDX,EDX
004D7092 F7F1 DIV ECX
004D7094 83F8 55 CMP EAX,55
004D7097 76 05 JBE SHORT FSB2.004D709E
004D7099 B8 55000000 MOV EAX,55
004D709E 8945 E8 MOV DWORD PTR SS:[EBP-18],EAX
004D70A1 8B55 EC MOV EDX,DWORD PTR SS:[EBP-14]
004D70A4 8B4D F0 MOV ECX,DWORD PTR SS:[EBP-10]
004D70A7 FF75 18 PUSH DWORD PTR SS:[EBP+18]
004D70AA 8B45 E8 MOV EAX,DWORD PTR SS:[EBP-18]
004D70AD 83E8 64 SUB EAX,64
004D70B0 F7D8 NEG EAX
004D70B2 50 PUSH EAX
004D70B3 FF75 E8 PUSH DWORD PTR SS:[EBP-18]
004D70B6 52 PUSH EDX
004D70B7 51 PUSH ECX
004D70B8 8D4D FC LEA ECX,DWORD PTR SS:[EBP-4]
004D70BB E8 21FAF7FF CALL FSB2.00456AE1
004D70C0 8B55 FC MOV EDX,DWORD PTR SS:[EBP-4]
004D70C3 8B4D 1C MOV ECX,DWORD PTR SS:[EBP+1C]
004D70C6 85C9 TEST ECX,ECX
004D70C8 74 0A JE SHORT FSB2.004D70D4
004D70CA 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004D70CD 6BC0 03 IMUL EAX,EAX,3
004D70D0 03C8 ADD ECX,EAX
004D70D2 EB 03 JMP SHORT FSB2.004D70D7
004D70D4 8B4D F4 MOV ECX,DWORD PTR SS:[EBP-C]
004D70D7 8121 000000FF AND DWORD PTR DS:[ECX],FF000000
004D70DD 3111 XOR DWORD PTR DS:[ECX],EDX
004D70DF ^ E9 2BFFFFFF JMP FSB2.004D700F
004D70E4 8BE5 MOV ESP,EBP
004D70E6 5D POP EBP
004D70E7 C2 1800 RETN 18
4D7000段:
55 8B EC 6A 00 6A 00 90 90 90 83 EC 14 EB 03 FF 45 F8 8B 4D F8 3B 4D 08 0F 83 C6 00 00 00 6B C9
03 03 4D 0C 8B 11 81 E2 FF FF FF 00 81 FA FF 00 F7 00 74 DB 89 4D F4 8B 4D 14 83 F9 02 75 47 8B
45 F8 6B C0 03 03 45 1C 8B 08 81 E1 FF FF FF 00 89 4D F0 89 55 EC 8B 45 0C 8B 4D F8 6B C9 03 03
C1 0F B6 08 0F B6 50 01 0F B6 40 02 0F AF C0 0F AF C9 0F AF D2 03 C1 03 C2 6B C0 64 33 D2 B9 30
75 00 00 F7 F1 8B 4D 10 0F AF C1 B9 64 00 00 00 33 D2 F7 F1 83 F8 55 76 05 B8 55 00 00 00 89 45
E8 8B 55 EC 8B 4D F0 FF 75 18 8B 45 E8 83 E8 64 F7 D8 50 FF 75 E8 52 51 8D 4D FC E8 21 FA F7 FF
8B 55 FC 8B 4D 1C 85 C9 74 0A 8B 45 F8 6B C0 03 03 C8 EB 03 8B 4D F4 81 21 00 00 00 FF 31 11 E9
2B FF FF FF 8B E5 5D C2 18 00 00 00 00 00
效果图(封神万仙阵,水技能,用的楼主的MEFF,背景是黑的,但代码将黑色都过滤了。不过我调高了不透明度,否则会很淡):
[ 本帖最后由 WHITESHIP 于 2015-1-28 14:40 编辑 ]
图片附件:
v.png (2015-1-10 18:12, 145.65 K) / 该附件被下载次数 60
http://xycq.org.cn/forum/attachment.php?aid=136468
作者:
maomao83118 时间: 2015-1-10 21:23
看见代码就头晕的小白坐看大神们的教育……
作者:
357254320 时间: 2015-1-15 17:48
很棒的策略效果
原版效果真的是看够了
作者:
maomao83118 时间: 2015-1-23 12:05
原帖由 WHITESHIP 于 2015-1-10 18:12 发表
补充,这样还是很多问题。会导致原来的MEFF太淡,换了一种新的算法。
用RGB三个颜色的平方除以一个不大的数字(原来是765=255*3,现在我设了30000)。得出来的透明度做个控制,不大于64H。这样后效果拔群!真的 ...
用的楼主的MEFF,背景是黑的,但代码将黑色都过滤了。不过我调高了不透明度,否则会很淡
这里的不透明度指的是用PS调整图片本身的么?可是从meff里导出的图调不了啊!
作者:
WHITESHIP 时间: 2015-1-23 12:07 标题: 回复 #28 maomao83118 的帖子
= =我说的都是代码……代码里的不透明度
作者:
maomao83118 时间: 2015-1-23 12:30 标题: 回复 #29 WHITESHIP 的帖子
附件就是照抄你给出的代码的结果,为何还是好淡……
是不是增加不透明度的代码不再你给出的部分里?
求大神指教!!
P.s 使用的exe就是从封神榜2.0里偷出来的……
难道编程小白只能放弃……![](images/smilies/1008.gif)
[ 本帖最后由 maomao83118 于 2015-1-24 00:21 编辑 ]
图片附件:
[霸气]
ttt.JPG (2015-1-23 13:31, 2.7 K) / 该附件被下载次数 63
http://xycq.org.cn/forum/attachment.php?aid=136668
图片附件:
[御水]
t2.JPG (2015-1-23 16:33, 3.71 K) / 该附件被下载次数 69
http://xycq.org.cn/forum/attachment.php?aid=136669
作者:
maomao83118 时间: 2015-1-23 17:14
手抖发错,版主看见了就删吧……不好意思……
[ 本帖最后由 maomao83118 于 2015-1-23 17:16 编辑 ]
作者:
WHITESHIP 时间: 2015-1-24 12:07
我那代码是给star看的……
的确不透明度的问题我没写,因为是自用的,有很多局限性,不通用(比如一切黄色、白色、粉色的MEFF都会失真严重)……
有空微调了再放上来。
作者:
maomao83118 时间: 2015-1-24 12:48
会代码的确好多东西可以自己调整……就指望你们这帮大神了
欢迎光临 轩辕春秋文化论坛 (http://xycq.org.cn/forum/) |
Powered by Discuz! 5.0.0 |