17 lines
1.5 KiB
Plaintext
17 lines
1.5 KiB
Plaintext
Here is a summary of our session focused on adding OpenEXR support:
|
|
|
|
Goal:
|
|
Enable the Asset Processor Tool to reliably write .exr files for 16-bit maps, compatible with Windows executables and Docker.
|
|
|
|
Approach:
|
|
We decided to use the dedicated openexr Python library for writing EXR files, rather than compiling a custom OpenCV build. The plan involved modifying asset_processor.py to use this library, updating the Dockerfile with necessary system libraries, and outlining steps for PyInstaller on Windows.
|
|
|
|
Issues & Fixes:
|
|
|
|
Initial Changes: Modified asset_processor.py and Dockerfile.
|
|
NameError: name 'log' is not defined: Fixed by moving the logger initialization earlier in asset_processor.py.
|
|
AttributeError: module 'Imath' has no attribute 'Header' & NameError: name 'fallback_fmt' is not defined: Attempted fixes by changing Imath.Header to OpenEXR.Header and correcting one instance of fallback_fmt.
|
|
TypeError: __init__(): incompatible constructor arguments... Invoked with: HALF & NameError: name 'fallback_fmt' is not defined (again): Corrected the OpenEXR.Channel constructor call and fixed the remaining fallback_fmt typo.
|
|
concurrent.futures.process.BrokenProcessPool: The script crashed when attempting the EXR save, likely due to an internal OpenEXR library error or a Windows dependency issue.
|
|
Next Steps (when resuming):
|
|
Investigate the BrokenProcessPool error, possibly by testing EXR saving with a simple array or verifying Windows dependencies for the OpenEXR library. |