这个截图是在原文件里,可以看到两个桥墩的桩材质是一样的
这个截图是发布imodle后的,可以看到左侧的桥墩的桩材质正常没有改变,右侧的桥墩的桩材质显示变化了,失去了PBR的特性。
发布IModel材质测试.dgn发布IModel材质测试.i.dgn
我分析了一下您的这两种桥墩的组成,左侧双立柱的是一个参数化单元,右侧单立柱的是单独的几个智能实体组成的。最下部这个圆柱体不是基本的Cylinder元素类型而是一个SmartSolid,我手绘了一个Cylinder后赋以Concrete07材质,发布iModel后材质没有变化。不知道这个圆柱形的SmartSolid有什么问题。
所以,变通方法是,用基本实体Cylinder来取代您这个SmartSolid。其实我们在建模时对于规范的简单三维实体(如圆柱体、长方体、圆锥体等)应该首选基本实体,这样不仅能节省存储空间,而且还能提高模型显示速度。有关几种实体的区别,请看如下文章:
Solid、SmartSolid、FeatureSolid和ParametricSolid的区别
经过黄工提醒,发现在同一个文件的不同材质板(Pallete)中带有相同名称的材质Concrete_7,可能发布iModel的程序找到材质的顺序问题。找到一个就采用了。
所以,最好不要加载多个含有相同材质名称的材质板
OBM定制库文件的时候定制了一个与bentley软件通用材质库里相同名字的材质,这样是不便于管理的,所以建议OBM软件去掉该同名材质,或改名。
那是否意味着使用OBM时并不建议我们使用通用材质库,而要改用OBM定制库呢?
不是,obm用的全都是通用材质库和civil的材质库,obm没有自己的材质库,但是在非材质库的dgnlib文件里设了这个ps的材质,同名的这个材质贴图其实还是用的是通用库文件夹里面的,所以应该是某个版本定义的时候错误定义了,然后就一直延续下来