Cityengine教程建筑物贴纹理

Cityengine教程建筑物贴纹理

ID:37723613

大小:282.50 KB

页数:5页

时间:2019-05-29

Cityengine教程建筑物贴纹理_第1页
Cityengine教程建筑物贴纹理_第2页
Cityengine教程建筑物贴纹理_第3页
Cityengine教程建筑物贴纹理_第4页
Cityengine教程建筑物贴纹理_第5页
资源描述:

《Cityengine教程建筑物贴纹理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、[Cityengine教程]CityEngine建模示例教程6:BasicShapeGrammar之Part2:简单建筑物贴纹理(有图)本节内容开始对之前构建的建筑贴上纹理。使用的规则是在上一节的基础上进行修改。作者也是在学习中,内容中如有不对的地方,欢迎大家指正。1.开始贴纹理之前,先在规则的最前面对要使用的纹理进行定义。//texturesfrontdoor_tex="facade/shopdoor.tif"wall_tex="facade/brickwall2.tif"dirt_tex="facade/dirtmap.15.tif"roof_tex="roof

2、/roof.tif"由于要使用的窗户的纹理有9种不同的纹理,这些纹理存放在assets/façade文件夹中。在使用的时候,我们这里定义随机获取其中一个窗户纹理,这样窗户的纹理就是随机的了。randomWindowTexture=fileRandom("*facades/textures/window.*.tif")2.为建筑物的正面和侧面定义纹理Frontfacade-->setupProjection(0,scope.xy1.5,1,1)setupProjection(2,scope.xy,scope.sx,scope.sy)split(y){groundflo

3、or_height:Groundfloor

4、{~floor_height:Floor}*}Sidefacade-->setupProjection(0,scope.xy,1.5,1,1)setupProjection(2,scope.xy,scope.sx,scope.sy)split(y){groundfloor_height:Floor

5、{~floor_height:Floor}*}添加红色部分的代码,setupProjection()定义面在scope的xy平面使用color和dirt图片(由通道0和通道2代表)。在使用colormap时,纹理图片将以1.5m

6、×1m进行重复贴模。而使用dirtmap时,将会在scope的x、y方向平铺。其中setupProjection()命令有以下几种:setupProjection(uvSet,axesSelector,texWidth,texHeight)setupProjection(uvSet,axesSelector,texWidth,texHeight,widthOrigin,heightOrigin)setupProjection(uvSet,axesSelector,texWidth,texHeight,widthOrigin,heightOrigin,uwFactor

7、)(1)uvset代表的是不同的纹理图层:uv-set    TextureLayer0    colormap1    bumpmap2    dirtmap3    specularmap4    opacitymap5    normalmap(2)axesSelector定义哪个轴分别代表u和v轴,可选的参数有:scope.xy,scope.xz,scope.yx,scope.yz,scope.zx,scope.zy以scope的轴定义world.xy,world.xz,world.yx,world.yz,world.zx,world.zy以world的轴定

8、义(3)texWidth和texHeight分别代表纹理的宽度和长度。如果值小于0,则认为可以对纹理做镜像显示,~符号表示值大小可以浮动,‘符号表示相对值。(4)widthOrigin和heightOrigin分别代表距离u方向和v方向的偏移(5)uwFactor设置w轴值相对于u轴的系数,默认为03.添加Roof规则Roof-->setupProjection(0,scope.xy,scope.sx,scope.sy)texture(roof_tex)projectUV(0)其中projectUV()命令含义如下:命令:projectUV(uvSet)指定纹理应用

9、于哪个uvset。4.为窗户和门指定纹理:Window-->s('1,'1,0.4)t(0,0,-0.25)texture(randomWindowTexture)i(window_asset)Door-->s('1,'1,0.1)t(0,0,-0.5)texture(frontdoor_tex)i("builtin:cube")5.定义Wall和SolidWall的纹理Wall-->color(wallColor)texture(wall_tex)set(material.dirtmap,dirt_tex)projectUV(0)projectUV(2)Sol

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。