Files
netease-modsdk-wiki/docs/mcguide/16-美术/7-材质与着色器/材质的分类.md
2025-03-17 13:24:39 +08:00

5.7 KiB
Raw Blame History

front, hard, time
front hard time
入门 分钟

材质的分类

前言

本文将介绍MC游戏中常用的材质若开发者需要修改某些对象的表现效果则可参考此文修改对应的材质和Shader。 以下材质基于data\resource_packs\vanilla\materials目录之下

天空

sky.material 材质文件

sun_moon

太阳和月亮

stars

星星

cubemap

用于渲染天空的六个面组成的天空盒

skyplane

用于渲染上方天空的颜色。游戏里面最上方会放置一个超大圆型网格,平行于地面

end_sky

用于渲染末地上方天空的颜色与贴图。游戏里面最上方会放置一个超大圆型网格,平行于地面

fancy.material 、 sad.material 材质文件

clouds

地形方块(放置在地上的方块)

terrain.material 材质文件

terrain_opaque

不透明地形方块

terrain_far

不透明地形方块在远处的时候会使用该材质进行渲染

terrain_blend

半透明地形方块材质,例如水,玻璃等

terrain_blend_far

半透明方块在远处的时候会使用该材质进行渲染

terrain_alpha

一些局部有全透明区域,而且正反面都需要渲染的方块材质,引擎中用到的有铁砧,竹子,铁轨,药水,仙人掌,珊瑚,农作物等等。

terrain_alpha_single_side

一些局部有全透明区域,但开启了背面裁剪只渲染一个面的材质,引擎中用到的有信标,胡萝卜,红石比较器,堆肥箱,门,蘑菇等等。

terrain_doubleside

目前用于渲染床

terrain_opaque_seasons

目前用于渲染上面覆盖有雪的不透明树叶

terrain_seasons_far

目前用于渲染远处上面覆盖有雪的不透明树叶

terrain_alpha_seasons

目前用于渲染上面覆盖有雪的半透明树叶

terrain_seasons_far_alpha

目前用于渲染渲染上面覆盖有雪的半透明树叶

barrier.material 材质文件

barrier

屏障方块

portal.material 材质文件

portal_base

末地传送门

非地形方块与实体(手持或者独立在场景中的)

entity.material 材质文件

entity_static

静态实体

entity_flat_color_line

用于渲染钓鱼竿的线

entity_loyalty_rope

用于渲染拴绳

opaque_block 、 opaque_block_color 、 opaque_block_color_uv2

不透明方块渲染

alpha_block 、 alpha_block_color

带透明区域的方块

map

地图渲染

entity_alphablend 、 entity_alphablend_nocolor

带透明度混合的实体对象

item_in_hand 、 item_in_hand_multicolor_tint 、 item_in_hand_entity_alphatest_color 、 item_in_hand_glint

用于各种手持物品的渲染

moving_block 、 moving_block_seasons 、 moving_block_alpha_seasons 、 moving_block_alpha_single_side 、 moving_block_alpha 、 moving_block_double_side 、 moving_block_blend

用于渲染会动态变化的方块

网易扩展 entity.material 材质文件内容

文件位于data、resource_packs、vanilla_netease、materials目录下主要是添加了骨骼模型渲染用的材质

带有vip字眼的资源

通常为会员材质中使用到的资源一般效果较好Shader实现较复杂可供学习参考

entity_for_skeleton 、 entity_for_skeleton_cpu

用于渲染普通的不透明骨骼模型

entity_for_skeleton_hide_cpu 、 entity_for_skeleton_hide

用于表现实体隐藏状态,效果是渲染纯色的半透明模型

entity_for_skeleton_alpha_cpu 、 entity_for_skeleton_alpha

用于渲染带透明度的骨骼模型

entity_for_skeleton_bright 、 entity_for_skeleton_bloom 、 entity_for_skeleton_glint、 entity_for_skeleton_bloom_glint

某些骨骼模型会使用到各种特殊效果,例如高光,辉光,扫光效果。

entity_for_skeleton_frame_ani

用于实现骨骼模型序列帧动画

粒子

particles.material 材质文件

particles_opaque

引擎原生的不透明粒子

particles_alpha

引擎原生的开启了透明度裁剪的粒子

particles_blend

引擎原生的带透明度的粒子

particles_effects

引擎原生带有特效UV变动效果的开启了透明度裁剪的粒子

common_particle、common_particle_add、common_particle_add_texture、common_particle_blend、common_particle_blend_texture

网易粒子系统,自定义粒子特效基本都是使用这些,功能与上述原生粒子相对应。

阴影

shadows.material 材质文件

阴影的渲染使用了Stencil蒙版技术

shadow_front 、 shadow_back

在蒙板标记阴影的位置,未进行实际渲染

shadow_overlay

对蒙板中被标记的位置进行真正的渲染

UI

ui3D.material 材质文件

包含场景中对象相关的一些特殊UI或者天气相关UI的材质

selection_XXX

带有selection字眼的基本上都是选中方块或者实体后这个选中效果的渲染

selection_box

开启轮廓选择后指向某个对象会显示线框

name_tag、name_tag_depth_tested

实体头顶名字背景

sign_text、name_text_depth_tested

实体头顶名字文字

rain

snow

lightning

闪电

ui.material 材质文件

UI界面上使用的UI材质

由于很多UI会使用相同的材质每个材质可能会在多处进行使用这里不一一列举每一处地方这里只举例几个常见UI界面对象使用到的材质

物品快捷栏

ui_textured_and_glcolor

摇杆,上方的菜单按钮,右上方的移动,潜行,飞行等按钮,右下角的跳跃按钮

ui_texture_and_color

背包或物品快捷栏中的物品图标

ui_item

屏幕中心的十字光标

ui_crosshair

加载场景的背景图

ui_cubemap

UI上的文字

ui_text