您当前的位置: 首页 > 

开发游戏的老王

暂无认证

  • 2浏览

    0关注

    803博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Godot Shader:无需建模用一张图片在Godot中生成一座山

开发游戏的老王 发布时间:2019-12-10 20:00:16 ,浏览量:2

原理类似置换贴图,只不过还想借助生成的高度区分出海面山体以及山顶的树木 效果不理想。没有办法像Blender那样在材质层次混合,要实现PBR效果只能靠引入大量的材质贴图。下面简述一下制作的思路

效果图

在这里插入图片描述

1. 在Godot中新建一个PlaneMeshInstance

在这里插入图片描述

在这里插入图片描述 增加细分 在这里插入图片描述

在这里插入图片描述

2.贴图制作

一张Perlin Noise 在这里插入图片描述 一张遮罩

在这里插入图片描述 把噪声和遮罩以类似相乘的方式叠加一下

在这里插入图片描述

3.着色器代码
shader_type spatial;
uniform sampler2D height_map : hint_white; 
uniform float height_scale = 1.0;
uniform float uv_scale : hint_range(0.1,2.0) = 1.0;
uniform vec4 water_color : hint_color;
uniform vec4 stone_color : hint_color;
uniform vec4 tree_color : hint_color;

varying float height;



void vertex(){
	VERTEX.y = height = texture(height_map,UV * uv_scale).y * height_scale;
}

void fragment(){
	if(height             
关注
打赏
1656935939
查看更多评论
0.0405s