Blender Git Statistics -> Branches -> tmp-ocio-v2
"Tmp-ocio-v2" branch
Total commits : 8
Total committers : 2
First Commit : February 1, 2021
Latest Commit : February 3, 2021
Commits by Date
Date | Number of Commits | |
---|---|---|
February 3, 2021 | 1 | |
February 2, 2021 | 0 | |
February 1, 2021 | 7 |
Committers
Author | Number of Commits |
---|---|
Brecht Van Lommel | 7 |
Ray molenkamp | 1 |
Popular Files
Filename | Total Edits |
---|---|
ocio_impl.cc | 5 |
ocio_capi.cc | 4 |
ocio_capi.h | 4 |
ocio_impl.h | 4 |
colormanagement.c | 4 |
fallback_impl.cc | 3 |
shader.cpp | 2 |
platform_win32.cmake | 2 |
opencolorio.cmake | 2 |
config.ocio | 1 |
Latest commits
February 3, 2021, 14:12 (GMT) |
OpenColorIO: address review comments |
February 1, 2021, 17:47 (GMT) |
Windows: OCIO2 build fixes Nothing too interesting here, the static imports define changed as did some of the library names/locations |
February 1, 2021, 14:42 (GMT) |
OpenColorIO: remove default display workaround A fix for this is in 2.0 (and recent 1.1.x versions), no need for this anymore. |
February 1, 2021, 14:42 (GMT) |
OpenColorIO: update GPU display shader for version 2.0 To avoid baking exposure and gamma into the GLSL shader and requiring slow recompiles when tweaking, we manually apply them in the shader. This leads to some logic duplicaton between the CPU and GPU display processor, but it seems unavoidable. Caching was also changed. Previously this was done both on the imbuf and opencolorio module levels. Now it's all done in the opencolorio module by simply matching color space names. We no longer use cacheIDs from OpenColorIO since computing them is expensive, and they are unlikely to match now that more is baked into the shader code. Shaders can now use multiple 2D textures, 3D textures and uniforms, rather than a single 3D texture. So allocating and binding those adds some code. Color space conversions for blending with overlays is now hardcoded in the shader. This was using harcoded numbers anyway, if this every becomes a general OpenColorIO transform it can be changed, but for now there is no point to add code complexity. |
February 1, 2021, 14:42 (GMT) |
OpenColorIO: use aces_interchange role to detect CIE XYZ values We need standard CIE XYZ values for rendering effects like blackbody emission. The relation to the scene linear role is based on OpenColorIO configuration. In OpenColorIO 2.0 configs roles can no longer have the same name as color spaces, which means our XYZ role and colorspace in the configuration give an error. Instead use the new standard aces_interchange role, which relates scene linear to a known scene referred color space. Compatibility with the old XYZ role is preserved, if the configuration file has no conflicting names. Also includes a non-functional change to the configuraton file to use an XYZ-to-ACES matrix instead of REC709-to-ACES, makes debugging a little easier since the matrix is the same one we have in the code now and that is also found easily in the ACES specs. There is a new cie_xyz_d65_interchange role that we should add support for, for interchange of display referred colorspace (as opposed to scene referred). I couldn't immediately understand how that is supposed to be defined, will probably leave that for another patch unless someone knows how. |
February 1, 2021, 14:42 (GMT) |
OpenColorIO: update display transforms for version 2.0 Needs a bit more manual work constructing the transform. LegacyViewingPipeline could also have been used, but isn't really any simpler and since it's legacy we better not rely on it. This moves more logic into the opencolorio module, to simplify the API. There is no need to wrap a dozen functions just to be able to do this in C rather than C++. It's also tightly coupled to the GPU shader logic, and so should be in the same module. |
February 1, 2021, 13:46 (GMT) |
OpenColorIO: update processors and transforms for version 2.0 CPU processors now need to be created to do CPU processing. These are cached internally, but the cache lookup is not fast enough to execute per pixel or texture sample, so for performance these are now also exposed in the C API. The C API for transform will no longer be needed afer all changes, so remove it to simplify the API and fallback implementation. |
February 1, 2021, 13:46 (GMT) |
Build: OpenColorIO 2.0.0 support for make deps and install_deps.sh * Tinyxml was replaced with Expat, adding a new dependency. * Yaml-cpp is now built as a dependency on Unix, as was already done on Windows. * Removed currently unused LCMS code, couldn't be bothered to update and test it. * Pystring remains built as part of OCIO itself, since it has no good build system. We currently require OpenColorIO 2.0.0 and the upcoming code changes have no compatibility with 1.x. Compatibility could be added, but it's rather complicated and I only want to do the work if it's really needed. The install_deps.sh support was implemented by Jeroen, I have no tested it myself. The Windows code was updated, but I have not tested if it actually works, it almost certainly will not. |
MiikaHweb - Blender Git Statistics v1.06