¿Cuáles son algunos ejemplos de algoritmos gráficos utilizados en el desarrollo real de aplicaciones de Android?

No estoy seguro de querer saber sobre algoritmos en gráficos y UI o algoritmos gráficos (en sentido literal) . Estoy respondiendo por lo primero. Veamos algunos de los algoritmos debajo del capó,

  1. Inflado y análisis del diseño: todos los elementos de la interfaz de usuario se colocan en un árbol de diseño que se infla en tiempo de ejecución. Por supuesto, reduce la sobrecarga durante el desarrollo en gran medida, pero hay un compromiso significativo en el rendimiento. Los redibujos y los costos de retransmisión son bastante altos a pesar de las optimizaciones realizadas por los ingenieros de Google. Algún día saldremos de este desastre, espero.
  2. 60 fps = cumplir con la fecha límite de 16.6 ms, cortesía de la cola de mensajes y el bucle del hilo principal, mostrar el búfer y los ciclos de dibujo. Esta es la verdad más tácita en el mundo de la interfaz de usuario de Android. Y cuidado, su desarrollador de SoC podría haberlo arruinado fácilmente y, como desarrollador de aplicaciones, no hay nada que pueda hacer al respecto.
  3. Renderscript: para su dibujo de alto rendimiento con menos molestias en lugar de escribir un código nativo para hacer lo mismo. Útil para trucos rápidos como desenfoque y demás. No es adecuado para un desarrollo completo del juego.
  4. RendererThread: para resolver el cuello de botella mencionado en el punto 2, Google ha creado un hilo de renderizador para descargar el trabajo del hilo principal. La cantidad de ganancia es algo de lo que aún no estoy al tanto, pero cualitativamente parece mucho mejor.
  5. Vistas personalizadas: para abordar las deficiencias del punto 1, siempre puede dibujar sus propias cosas en el lienzo directamente. Tenga cuidado, no querría otro analizador de diseño dentro de su código. Por lo tanto, la medida en que personalizará debe decidirse conscientemente.

Actualizaré la respuesta si se me ocurre otra cosa.