
O TIGR é uma pequena biblioteca gráfica de plataforma cruzada, fornecendo uma API unificada para Windows, MacOS, Linux, iOS e Android.
O núcleo do TIGR é uma biblioteca de quadros simples. Além disso, fornecemos alguns ajudantes para as tarefas comuns que os programas 2D geralmente precisam:
O TIGR foi projetado para ser pequeno e independente. O exemplo do 'Hello World' é inferior a 100kb:
| Plataforma | Tamanho |
|---|---|
| Windows x86_64 | 48K |
| Linux x86_64 | 43k |
| MacOS Arm64 | 90K |
| MacOS x86_64 | 74K |
Não há bibliotecas adicionais para incluir; Tudo está assado diretamente no seu programa.
O TIGR está livre para copiar sem restrições; ver tigr.h.

Aqui está um exemplo do Hello World Program. Para mais informações, basta ler o Tigr.h para ver as APIs disponíveis.
#include "tigr.h"
int main ( int argc , char * argv [])
{
Tigr * screen = tigrWindow ( 320 , 240 , "Hello" , 0 );
while (! tigrClosed ( screen ))
{
tigrClear ( screen , tigrRGB ( 0x80 , 0x90 , 0xa0 ));
tigrPrint ( screen , tfont , 120 , 110 , tigrRGB ( 0xff , 0xff , 0xff ), "Hello, world." );
tigrUpdate ( screen );
}
tigrFree ( screen );
return 0 ;
}O TIGR é fornecido como um único .C e arquivo .H correspondente.
Para usá -lo, basta soltá -los diretamente no seu projeto.
Devido ao complexo ciclo de vida e embalagem dos aplicativos Android (não existe um único aplicativo de arquivo de arquivo de origem único), é necessário um pequeno invólucro em torno do TIGR. Ainda assim - a API do TIGR permanece a mesma!
Para manter o TIGR tão pequeno e focado quanto é, o invólucro do Android vive em um repositório separado.
Para começar no Android, vá até o repositório Timog e continue lá.
No iOS, o TIGR é implementado como um delegado de aplicativo, que pode ser usado em seu aplicativo com apenas algumas linhas de código.
Construir um aplicativo iOS geralmente requer um pouco de ajuste no Xcode apenas para subir e correr. Para subir e funcionar rapidamente , existe um projeto inicial do iOS com uma cadeia de ferramentas com base em linha de comando e configurações de código VS para depuração.
Para começar no iOS, vá até o repositório Timogrios e continue lá.
NOTA: O TIGR está incluído no Timog e Timogrios, não há necessidade de instalar o TIGR separadamente.
O TIGR vem com uma fonte de bitmap embutida, acessada pela variável tfont . As fontes personalizadas podem ser carregadas a partir de bitmaps usando tigrLoadFont . Um bitmap de fonte contém linhas de caracteres separados por fronteiras da mesma cor. O TIGR pressupõe que as fronteiras usam a mesma cor que o pixel superior esquerdo no bitmap. Presume -se que cada caractere seja desenhado em branco em um fundo transparente para fazer com que a tonalidade funcionasse.
Use a ferramenta Tigrfont para criar suas próprias fontes de bitmap a partir de arquivos de fonte TTF ou BDF.
Desde que o TIGR versão 3.1, as folhas de fonte codificadas por Unicode são suportadas, possibilitando renderizar qualquer glifo em suas fontes. O texto ainda é apenas renderizado a LTR, no entanto.
O TIGR usa um shader de pixel embutido que fornece alguns efeitos de estoque, conforme controlado pelo tigrSetPostFX . Esses efeitos de estoque podem ser substituídos chamando tigrSetPostShader por um shader personalizado. O shader personalizado está na forma de uma função do shader: void fxShader(out vec4 color, in vec2 uv) e tem acesso aos quatro parâmetros do tigrSetPostFX como um uniform vec4 chamado parameters .
Veja o exemplo do shader para obter mais detalhes.
No MacOS, aparentemente dependendo da versão SDK e se você usar o TIGR em um projeto Xcode, precisará definir OBJC_OLD_DISPATCH_PROTOTYPES para evitar problemas com protótipos objc_msgSend .