![]() I understand that a lot of importers are tied to the editor, so this likely needs a rewrite/refactor, or adding a build option to allow those importers to be available in `release` builds, at the very least. for *external* resources (outside of `res://`), we know that they are not imported, so import a file first using the same mechanism as in the editor, and then `load()` it normally.Īlternatively, perhaps `ResourceImporter` and corresponding `import()` GDScript method could be added (or exposed), to allow users to import external resources at run-time first, if this proves to be easier to implement and/or maintain. If yes, then just fetch the resource with `load()`. for *imported* resources (inside `res://`), look whether a particular file was previously imported. # Describe how your proposal will work, with code, pseudocode, mockups, and/or diagrams: ![]() I suggest to add a way to seamlessly `load()` external resources by first importing them if they are outside of the `res://` path, like `user://` or any other system path. # Describe the feature / enhancement and how it helps to overcome the problem or limitation: See also related issues and other proposals: This in turn leads to various confusions and misuse like with `Image.load()` and `ResourceLoader.load()`. Loading non-imported, external resources require you to ***replicate the import process at run-time first*** (which is already done in the editor), and then store a reference to the loaded resource somewhere for it to be accessed later, so it's not possible to use `load()` for those resources, because they were not actually imported, but created at run-time instead. Loading imported resources requires you to use `load()` or `ResourceLoader.load()`. The problem comes when you want to give a player an ability to load external assets which are not part of the original game, ***without*** creating additional tools to make `*.pck` files to be used by a player, because players are not developers, and there has to be an intuitive way to load external assets within a game itself. The export process involves packing all of the previously *imported* assets into a special `*.pck` file which is then unpacked upon running a particular game. Godot requires that most files must be () (converted from various file formats to `Resource`s, such as `*.png` to `Texture`) before they can be used in a game, and this works well for games which don't require dynamic loading of assets. See very useful discussion which illustrates the problem at godotengine/godot#17748. # Describe the problem or limitation you are having in your project: Mostly related to godotengine/godot#17848.Īlso () - Godot Engine extension, where some stuff gets exposed in non-editor builds. # Describe the project you are working on:Ī game with ***user-generated co … ntent*** (and less of a modding support).
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |