当前位置:编程学习 > C#/ASP.NET >>

关于 wpf 3D 显示透明问题

我在做一个wpf3D程序,3D空间有两个平面(暂时叫做plane1和plane2),透明度都为0.5,plane1是比plane2先生成的,可是如果plane1在plane2上面的话(即plane2部分被plane1覆盖,则plane2被遮住的部分就显示不出来,

而如果plane2在上面的话,则plane1被遮住的部分能够显示出来(因为plane2的透明度为0.5),

这与我想要的不管哪个平面在上面都应该有透明效果(即被遮住的部分可以透过上面的平面显示出来)不符合啊!!!
    我对wpf这样的机理的理解是它先画的plane1,然后画plane2,如果发现后画的plane2被plane1遮住部分的话,它就为了提高效率将被遮住的部分干脆不画了,可惜这样就与我设置透明度的初衷相违背了,不知道怎么弄,疯了。。。懂得大侠们请指教! --------------------编程问答-------------------- 怎么都没有回答。。。 --------------------编程问答-------------------- 这本身就是WPF 3D的机制。

在WPF中,3D的透视效果的实现必须遵循一个原则,透明的物体必须在不透明的物体生成之后生成。不管在xaml还是code behind中都必须遵守这个原则,否则无法实现透明效果。
--------------------编程问答-------------------- 我也遇到与你同样的问题,对于你2个面的问题到还是好解决的,按照次序显示,如果你想要互相能透明看到话,可以生成2个面后,再逆序生成这个2个面的副本,按照WPF 3D原理能出来,问题我做3D树贴图(png贴图),总不能树都是一个个面吧,起码要十字交叉的纸片,所以就麻烦了,希望各位三维爱好者多多交流
qq:334542263,注明WPF
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,