AcademySoftwareFoundation / AcademySoftwareFoundation/OpenColorIO

Remove Imath and Pystring from nanoColor

Abierto
#2,002 3 comentarios 0 reacciones 0 asignados Ver en GitHub
Feature Request
Lenguaje dominante
C++
Estrellas
2.1k
Forks
503
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

One of the requirements for nanoColor is that it have no external dependencies. Most of the dependencies have already been removed, via optional CMake flags. However, code from Imath and Pystring was temporarily moved to the ext folder (i.e. the required code from those projects was copied in, strictly as a temporary prototyping measure).

For Pystring, the proposal is to reimplement any functions currently needed by OCIO (there are not many).

For Imath, the only thing that is used by OCIO is the half class. The proposal is that a half class be created specifically for OCIO, based on the Imath code but with some simplifications. Given that most hardware these days has specific instructions for half-floats, those would be used if available. For other machines, the code from Imath that does not use the LUT would be used.

For simplicity, these changes would apply to both nanoColor and full OCIO. If people would like to continue to be able to use the full Imath or Pystring as an optional dependency with full OCIO, please note that as a comment below.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza inspeccionando la carpeta ext y los flags de CMake que actualmente hacen que Imath y Pystring sean opcionales o estén integrados. Rastrea qué funciones de Pystring y qué clase half de Imath utilizan nanoColor y el OCIO completo; se considera terminado cuando ambas compilaciones funcionan sin dependencias externas y se han abordado las dependencias opcionales de la biblioteca completa según sea necesario.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
cmake, cpp
Área
build-system, tooling
Tipo de issue
Refactorización
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.