RGB(r,v,b)
RGB12(r,v,b)
RGB15(r,v,b)
RGB16(r,v,b)
Crée une couleur dont on spécifie les composantes rouge, vert et bleu. L'alpha retourné est automatiquement à 1, selon le pixelformat, c'est à dire 15 pour du 4444 (RGB12), 1 pour du 5551 (RGB15), 0 pour du 5650 (RGB16) et 255 pour le mode 8888 (RGB).
RGBA(r,v,b)
RGBA12(r,v,b)
RGBA15(r,v,b)
Crée une couleur à partir des composantes rouge, vert, bleu et alpha spécifiées. L'alpha permet de définir le niveau de transparence de la couleur. Cela peut être utilisé pour n'importe quel objet, c'est-à-dire que si vous voulez dessiner du texte semi-transparent par exemple, vous pouvez faire oslSetTextColor(RGBA(255,0,0,128)). Chaque pixel d'une image ou chaque couleur de palette peut ainsi avoir son niveau de transparence. Une valeur d'alpha de zéro signifie la transparence complète tandis que la valeur maximale signifie qu'elle est opaque.
oslImageRotMoveX(img,x)
oslImageRotMoveY(img,y)
Définit les coordonnées d'une image de manière à ce qu'avec un angle de 0 le haut-gauche de l'image se trouve à la position x,y indiquée.
oslGetImageLine(img,y)
oslGetImagePixelAdr(img,x,y)
Retourne un pointeur vers les données de l'image, depuis la ligne ou le pixel spécifié. Voir le chapitre sur les images pour plus d'informations.
oslGetUncachedPtr(adr)
Retourne un pointeur hors cache CPU.
oslDrawImageXY(img,px,py)
Dessine une image aux coordonnées x,y spécifiées.
oslDrawImageSimpleXY(img,px,py)
Idem mais appelle oslDrawImageSimple à la place.
oslAbs(x)
Retourne la valeur absolue du nombre passé en paramètre.
oslSetImageTileSize(img,x0,y0,largeur,hauteur)
Définit la partie de l'image que l'on va dessiner ensuite lors d'un appel à oslDrawImage. Par exemple, si votre image contient en fait plusieurs "sprites" (petites images) de 16x16 placés les uns à côté des autres, vous pouvez dessiner le troisième (qui est situé à partir des positions 32,0) ainsi:
oslSetImageTileSize(img, 32,0, 16,16); oslDrawImage(img);
oslSetImageTile(img,x0,y0,x1,y1)
Idem, mais vous spécifiez les coordonnées du rectangle à l'intérieur de l'image qui sera dessiné.
oslResetImageTile(img)
Appelez ceci et l'image retrouvera sa taille initiale (complète).
oslMirrorImageH(img)
oslMirrorImageV(img)
Retourne l'image horizontalement (H) ou verticalement (V). Vous pouvez ensuite la dessiner avec oslDrawImage.
Note: Pour les utilisateurs expérimentés, l'image n'est pas réellement retournée, ce sont juste ses coordonnées internes qui sont
modifiées, c'est donc très rapide.
oslCorrectImageHalfBorder(img)
Corrige le problème qui fait qu'une image étirée avec le filtre bilinéaire apparaît entourée d'un carré. A n'exécuter que dans ce cas, sinon votre image apparaîtra floue ou déformée!
oslResetImageHalfBorder(img)
Annule la correction de la bordure de l'image.
oslGetDrawBuffer()
Retourne le drawbuffer actif (l'image sur laquelle on dessine).
oslPrintf(format...)
Printf standard sur l'écran. Lisez le chapitre sur la console pour plus d'informations.
oslCls()
Efface l'écran (tout noir) et remet le curseur à zéro pour oslPrintf.
oslMoveTo(x,y)
Déplace le curseur aux positions spécifiées. Le prochain oslPrintf se fera à cet endroit.
Note: Les positions sont définies au caractère près, et non au pixel près, ce qui signifie que si vous mettez oslMoveTo(100,100),
vous serez probablement en dehors de l'écran, à moins que la police que vous utilisez vous permette de placer plus de 100 caractères
horizontalement et verticalement sur l'écran.
oslPrintf_xy(x,y, str, format...)
Dessine du texte aux positions spécifiées. Cette fois, les coordonnées sont spécifiées au pixel près.
oslAssert(cond)
C'est un utilitaire de débogage seulement. Il permet de s'assurer qu'une condition est vraie avant de continuer. Dans le cas contraire, il affiche une boîte de dialogue indiquant l'erreur, ainsi que le fichier et le n° de ligne de code où cela s'est produit.
oslDebug(format...)
Affiche un message avec l'équivalent d'un printf. Très utile pour déboguer votre code. Exemple: oslDebug("str = %s", str);
oslMake3Buttons(b1,a1,b2,a2,b3,a3)
oslWarning(format...)
oslFatalError(format...)
Affiche divers messages d'erreur, basés sur oslMessageBox.
oslSetMaxFrameskip(val)
oslSetVSync(val)
oslSetFrameskip(val)
Règle les paramètres de la synchronisation avec oslSyncFrame. Voyez la description de oslSyncFrameEx pour plus d'informations sur ces paramtères.
oslSetKeyAutorepeat(keys,init,interval)
oslSetKeyAutorepeatMask(mask)
oslSetKeyAutorepeatInit(value)
oslSetKeyAutorepeatInterval(value)
Règle les paramètres globaux à utiliser avec oslReadKeys. Revient à régler directement les membres de osl_keys. Utile si vous utilisez exclusivement osl_keys et oslReadKeys sans vous soucier du reste.
oslSetSoundEndCallback(s, fct)
Permet de définir une fonction qui sera exécutée lorsque le son sera terminé. Vous pouvez à ce moment là rejouer le même son en boucle par exemple, ou en lancer un autre. La fonction retourne un entier (int) et prend deux arguments: int oslAudioEndCallback(OSL_SOUND *s, int no_voie); La fonction doit renvoyer 1 s'il y a un autre son à jouer ou 0 si c'est terminé pour cette voie (elle sera alors libre pour un autre son). Voici un exemple qui rejoue le même son sur la même voie en boucle:
int rejoue(OSL_SOUND *s, int voice) { oslPlaySound(s, voice); return 1; } [...] music = oslLoadSoundFile("test.bgm", OSL_FMT_STREAM); oslSetSoundEndCallback(music, rejoue);