Est 1024x1024 largement pris en charge OpenGL maximum la taille de la texture sur le bureau?

Je suis entrain de créer un sprite moteur qui utilise le concept de "graphiques banques" pour accélérer le rendu à l'aide de lots. Je me demandais si quelqu'un sait si 1024x1024 les textures sont largement pris en charge assez de ces jours à compter, et/ou si il y a un moyen de savoir combien de temps il a été un soutien pour 1024x0124 en termes de puces graphiques /cartes, comme un graphique ou quelque chose, et de décider en fonction de l'estimation de la compatibilité %, si je doit aller avec 1024x1024 ou de limiter les banques à 512x512 (j'ai un sentiment est le plus largement pris en charge, si vous comptez intégrée des accélérateurs)

  • Vous pourriez soutenir à la fois. Vérifier GL_MAX_TEXTURE_SIZE et l'échelle de l'textures vers le bas par programmation avant de les télécharger. La division de la résolution de la moitié est très facile si vous utilisez une puissance de deux largeurs et hauteurs, le nouveau pixel dans l'image plus petite est la moyenne de quatre pixels dans l'image d'origine.
  • Oui, j'ai pensé à ce sujet. Mise à l'échelle vers le bas dispose de deux grands chefs d'accusation contre elle; 1) Mon sprite moteur de 4 bits palette graphique, avec 4 palettes pré-calculées à l'intérieur de chaque banque (chaque quadrant utilise une autre palette, pour éviter d'avoir à compter sur le pixel shader) de sorte que le style pixélisé sera ruiné par le filtrage; 2) il ne peut être vaut le coût dans le code de la complexité et de l'entretien; je préfère le garder simple et dépendent de la taille plus petite (ou laisser le conducteur n'importe quel downscaling) - ou carrément refuser de l'exécuter si la max la taille de la texture n'est pas pris en charge. vous ne voulez pas perdre ma vie à écrire de la colle...
  • Oui, 1024 est une commune de la taille du bureau. OpenGL 3.0 implémentations sont nécessaires pour soutenir cette résolution au minimum. Un saut énorme à partir d'OpenGL 2.0, qui a uniquement requis 64x64 texel textures 🙂 la Plupart des Gpu pour pc de bureau de support de 4096-16384, et avec peu de textures en 4.x, le maximum pris en charge texture dimensions seront presque dénuée de sens.
  • Merci pour la réponse. Je ne dirais pas que la taille maximale de texture sera à peu près, ou même presque vide de sens. Je viens de la lire et clairsemée textures seront floues quand il y a un cache miss
  • Ce que je voulais dire par la c'est que le adressable texel gamme sera si grand que vous n'aurez pas à vous inquiéter. Éparses les textures ne sont pas sur le cache de l'efficacité, ils sont sur la définition de comportement lorsqu'une partie de la texture qui n'est pas encore chargé, sont chargés pour la première fois. Pensez à la situation, comme une défaillance de page dans traditionnelle de la mémoire virtuelle, le temps de latence doit être mise au service de la faute, mais vous pouvez avoir une application qui utilise des ressources beaucoup plus grande que ne pourrait jamais tenir en mémoire à la fois. T
InformationsquelleAutor Roger Levy | 2013-10-24