fixed bootstrapping and asset handling
This commit is contained in:
@@ -2,4 +2,22 @@
|
||||
- Make the code work with the .hxml based workflow
|
||||
- don't use compiletime `#if lime` or `#if openfl` as this relies on the openfl and lime build system. We don't use their buildsystems but try to do the same thing they do for the hxcpp based targets. (Native Windows/ Linux compilation)
|
||||
- Adhere to the spec outlined in OpenFL_Build_Chain_Asset_System_Deep_dive.md and IMPORTANT_INSTRUCTIONS.md
|
||||
|
||||
- There is sample code in the Export/haxe directory. We want our own src/ManifestResources.hx to mirror the implementation in Export/haxe/ManifestResources.hx
|
||||
- Mirror preload logic from the Export/haxe directory into our own files.
|
||||
- We also want to preload our assets using a similar approach using the ManifestResource and doing related initialization in ApplicationMain.hx
|
||||
|
||||
# Implementation details:
|
||||
|
||||
- macros/AssetMacro.hx
|
||||
- Implement a @:assets decorator that allows specifying assets with the same parameters that openfl/lime use in project.xml
|
||||
- These assets will be defined in Assets.hx
|
||||
- Generate an asset manifest `default.json` in a folder `manifest` in the hxcpp output directory (the same path the built binary gets put into) (get the path for this from the haxe compiler at build time) as defined with the `-cpp` flag in build.hxml
|
||||
- Copy assets into the hxcpp output directory similarly to how lime and openfl do this
|
||||
- Assets.hx
|
||||
- as stated previously, the @:asset decorator will be used here to specify assets for the compiler to copy to the build output directory at compile time
|
||||
- Main.hx
|
||||
- This is the entrypoint for game specific code, no need to touch this yet.
|
||||
- ApplicationMain.hx
|
||||
- This is the actual entrypoint of the application. This sets up the lime/openfl application, window and stage. Also this is responsible for preloading assets.
|
||||
- ManifestResources.hx
|
||||
- This will be left the same as the sample in Export/haxe/ManifestResources.hx
|
||||
|
||||
Reference in New Issue
Block a user