跳转至

简介

自 2.0.0

Materials 系统 为粒子系统中的渲染材质提供了一个灵活且可扩展的框架。 它提供了多种具有不同渲染功能的材质类型,从简单的纹理到具有 HDR 支持和高级效果的复杂自定义着色器:


通用配置

Image title

所有材质共享以下设置:

属性 类型 描述 默认值
material IMaterial 特定的材质实现 内置圆形纹理
blendMode BlendMode 控制粒子与背景的混合方式 -
cull boolean 启用/禁用面剔除 true
depthTest boolean 启用/禁用深度测试 true
depthMask boolean 启用/禁用深度缓冲区写入 false

Texture Material 是最常见的类型,专为基于纹理的渲染设计。 它支持自定义纹理HDR 颜色处理像素画模式等功能。 这使其成为粒子系统中最通用的材质选择。

配置参数:

属性 类型 描述
Texture ResourceLocation 纹理文件的路径
Discard Threshold float Alpha 剔除阈值
HDR Vector4f HDR 颜色向量
HDR Mode HDRMode HDR 混合模式
Pixel Art.bits int 像素画位深度

Sprite Material 允许你访问 Minecraft 已注册的粒子纹理

强大的材质类型,允许你完全控制渲染, 设置自定义采样器/Uniform,甚至访问粒子数据。 事实上,所有材质类型都可以通过自定义着色器来实现。

更多信息,请参见 Custom Shader Material


特殊材质:block_atlas

什么是 Block Atlas?

参见官方 Wiki:Block Atlas Blocks Atlas

Image title

内置的 block_atlas 材质本质上是一种 Texture Material,它允许 FX 访问 Minecraft 的 Block Atlas 纹理。

它在以模型模式渲染粒子并启用 useBlockUV 时特别有用—— UV 可以直接从 Atlas 中访问所需的 Block 纹理。

你也可以将 Block Atlas 作为采样器传递给 Custom Shader Material(详情请参见 sampler 页面)。