1.支持图片格式:PNG 和 JPEG。spa
2.图片大小要求:必须是2的幂,例如:2,4,8,16,32,64,128,256等等。code
1
xmlns:Execution="clr-namespace:Balder.Execution;assembly=Balder"
2
xmlns:View="clr-namespace:Balder.View;assembly=Balder"
3
xmlns:Geomentry="clr-namespace:Balder.Objects.Geometries;assembly=Balder"
4
xmlns:Material="clr-namespace:Balder.Materials;assembly=Balder"
5
xmlns:Lighting="clr-namespace:Balder.Lighting;assembly=Balder"
这里,咱们主要是用到里面的DiffuseMap属性,经过它,咱们就能够实现经过引用本地图片资源来实现对3D模型的贴图操做,至于其它属性,之后再介绍,那么该怎么使用它呢?其实很简单,由于在Balder中实现了[TypeConverter(typeof(UriToImageMapTypeConverter))]
public IMap DiffuseMap { get; set; }类型转换,这样,在xaml中只要经过引用本地图片资源的Uri就能转换成Image对象,并进行贴图操做:blog
1
<
Execution:Game
Width
="640"
Height
="480"
Background
="Black"
>
2
<
Execution:Game.Camera
>
3
<
View:Camera
Position
="-10,18,-22"
Target
="0,0,0"
/>
4
</
Execution:Game.Camera
>
5
<
Lighting:OmniLight
Position
="0,-10,0"
/>
6
<
Geomentry:Box
Dimension
="20,1,20"
InteractionEnabled
="True"
>
7
<
Geomentry:Box.Material
>
8
<
Material:Material
DiffuseMap
="/MaterialDemo;component/Assets/f.png"
/>
9
</
Geomentry:Box.Material
>
10
</
Geomentry:Box
>
11
</
Execution:Game
>
很简单吧?最后看看效果怎么样: