我正在使用 Rust Amethyst 游戏引擎加载名为 的纹理ground.png
,但Loader
似乎找不到该文件:
//...
let assets_dir = format!("{}", env!("CARGO_MANIFEST_DIR"));
let mut game = Application::build(assets_dir, Example)?.build(game_data)?;
我assets_dir
是项目的根文件夹,在加载我的文件时,我追加textures/ground.png
:
let texture_handle = {
let loader = world.read_resource::<Loader>();
let texture_storage = world.read_resource::<AssetStorage<Texture>>();
loader.load(
"textures/ground.png",
PngFormat,
Default::default(),
(),
&texture_storage,
)
};
我的文件目录如下所示:
├── src
│ └── main.rs
├── Cargo.toml
└── textures
└── ground.png
我得到的错误是None
获取纹理时的一个值:
assert!(
world
.read_resource::<AssetStorage<Texture>>()
.get(&texture_handle) != None
); //panics
我正在使用紫水晶 0.8。