Colorir o mostrador de Pebble Time: a batalha por recursos



Então chegou aquele belo dia em que decidi que deveria pintar meu mostrador no Pebble Time. Bom querido beliakovdescrito em detalhes suficientes como fazer isso, e há informações oficiais suficientes. Mas mesmo aqui não foi sem um pandeiro ...

Colorir os gráficos não demorou muito tempo e adicioná-lo ao projeto no CloudPebble ficou ainda mais fácil do que eu esperava: você também pode baixar a versão colorida diretamente na página do recurso gráfico. Ambas as versões da imagem têm um ID e o compilador escolhe qual usar quando.



Infelizmente, ao compilar, fiquei sem recursos de memória. Nesse caso, o mostrador "trava" no relógio, mas funciona bem no emulador, apenas os gráficos para os quais não havia memória suficiente não são exibidos. Em seguida foram medições e experimentos que me levaram mais de dois dias. Em poucas palavras, carreguei diferentes recursos (fotos e fontes) e a memória do tabuleiro de papel que eles ocupavam. A seguir, darei as conclusões feitas por mim com base nesses testes e algumas no nível de conjecturas.

  • png -
  • , «» (, tinypng.com),
  • ,
  • 14 , ,




Com as fontes, tudo ficou ainda mais interessante. Aparentemente, ao compilar a fonte, isso se traduz em uma espécie de gráfico de bitmap. A favor disso, em primeiro lugar, ele diz que ao adicionar uma fonte personalizada ao projeto, você deve especificar imediatamente o tamanho dos caracteres e ele estará disponível nesse formulário. Se você precisar usar uma fonte duas vezes em tamanhos diferentes, precisará adicioná-la ao projeto duas vezes e, consequentemente, ela consumirá a memória por duas. Em geral, as fontes usam muita memória. Por exemplo, uma fonte Bernard MT Condensed (apenas números) com um tamanho de caractere de 38 pixels. ocupa 1,8 KB e um tamanho de 42 pixels. - já 2 Kbytes. Vale ressaltar que uma imagem em png com os mesmos números (tamanho 38) "pesa" apenas 450 bytes. Por outro lado, a fonte do ícone se justificou e eu a deixei.

O que se segue de tudo isso:
  • otimize seus gráficos o máximo possível. Por exemplo, remova quaisquer elementos idênticos dos sprites e coloque-os em um arquivo separado.
  • trabalhar com fontes é conveniente (você pode alterar o tamanho simplesmente alterando o ID), mas em termos de uso de memória, eles estão longe de ser sempre justificados.


Estas são as canetas de feltro ...

Referência de discagem:


All Articles