作者GoodTauSo (Do live Loop)
看板GameDesign
标题[程式] 如何做到真正的透明色 by vb.net?
时间Mon Apr 19 15:53:58 2010
歹势,我在把问题描述详细一点,
这次我google了一只玛莉欧,
首先我用photoimpact存成gif,并设定透明色,如下图
http://www.wretch.cc/album/show.php?i=kensirom&b=11&f=1208290598&p=5
接着我用了两个picturebox分别代表两个角色,
使用transparent属性分别将两个控制项背景变成透明,语法如下
PictureBox1.BackColor = System.Drawing.Color.Transparent
PictureBox2.BackColor = System.Drawing.Color.Transparent
执行效果如下,两只玛莉欧的背景变透明了
http://www.wretch.cc/album/show.php?i=kensirom&b=11&f=1208290597&p=4
後来发现,其实它的透明只是去截取背景图来补欲透明的颜色,不是真正透明
只要两个角色一接近,就破功了
http://www.wretch.cc/album/show.php?i=kensirom&b=11&f=1208290595&p=2
实际上我想要的效果应该是这样
http://www.wretch.cc/album/show.php?i=kensirom&b=11&f=1208290596&p=3
这样角色之间才能互动(攻击,聊天,交易等...)
要如何做到真正的透明呢?
工具:VB.NET 2008
--
test
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.53.194
1F:→ Splash5:直接把你的图用png档存成带alpha的图就好了吧.. 04/19 16:27
2F:→ Splash5:不过奇怪的是你的图如果原本不带alpha.. 就算picturebox 04/19 16:27
3F:→ Splash5:的backcolor设成透明色也不应该会有透明效果才对.. 04/19 16:28
4F:→ Splash5:如果你的图有带alpha.. 那就把另一个picturebox的 04/19 16:29
5F:→ Splash5:backcolor也设成透明色不就好了orz.. 04/19 16:29
6F:推 ferretwind:你把先到的用paintpicrute画到背景上好了 一3一 04/19 16:34
7F:→ GoodTauSo:我用的是gif透明索引,无效= =" 04/19 16:46
8F:→ chenglap:不要用 control, 就算做到也会很慢. 04/19 16:50
※ 编辑: GoodTauSo 来自: 140.114.53.194 (04/19 17:17)
9F:推 F23ko:开gdi直接上! 不要用picturebox! 04/19 17:18
10F:→ Splash5:我是觉得先求有(picturebox) 再求好(gdi+) XD.. 04/19 20:26
11F:→ Splash5:不过话说.net画图後面其实最後也会call gdi.. 04/19 20:37