![]() |
|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Ouvrir sur le forum | Recherche | Messages du jour | Marquer les forums comme lus |
Aide au développement Aide sur l'utilisation d'OSLib |
Publicité |
![]() |
|
Outils de la discussion | Modes d'affichage |
![]() |
#1 |
Administrateur
Date d'inscription: 09/11/2005
Messages: 3 750
|
![]() Cf ma signature pour quelques tutos
![]() |
![]() |
![]() |
Publicité |
![]() |
#2 | |
Membre confirmé
|
![]() Citation:
Je les ai déjà tous lus, et c'est en partie ce qui m'a fait choisir oslib! merci! Par contre je crois pas que ca parle de "swizzling", qui est un concept que je n'ai pas totalement compris (qu'est ce qu'on peut pas faire exactement)? Faudrait aussi un tuto sur la VRAM, j'ai pas tout compris non plus à ce niveau. Mais bon je débute avec tout ca et je me perd un peu dans la masse d'info à digérer. [edit] pardon pour le double post je pensais qu'il y avait un auto-merge. Dernière modification par Bobby Sixkilla ; 24/05/2007 à 16h56. |
|
![]() |
![]() |
![]() |
#3 |
Administrateur
Date d'inscription: 09/11/2005
Messages: 3 750
|
![]() Pour faire simple, "swizzler" une image, c'est l'optimiser. Son affichage sera plus rapide, ca accelerera également des manipulations comme la rotation.
Mais du coup l'image ne sera plus modifiable après ![]() D'après des sources sûres ( ![]() Mais si tu utilise toujours la version 1.00, regarde la doc ainsi que les sources de mon tuto maps pour la syntaxe. La VRAM aussi c'est pour aller plus vite : une image en VRAM s'affiche plus vite, bla bla bla... mais c'est délicat à manier car faute de gestionnaire, la gestion des images en VRAM doit etre réfléchie (plus d'explications dans la doc) Avec oslib 1.00 tu doit obligatoirement choisir dès le chargement l'emplacement choisi, mais avec la 2.00 on peut faire le transfert à tout moment ![]() Enfin, tu dit que tu débute, donc à mon avis c'est pas trop urgent de maitriser tout ca tout de suite, met la priorité sur les fonctions de base avant de penser optimisation (enfin c'est comme ca que je vois les choses ![]() |
![]() |
![]() |
![]() |
#4 |
Super Modérateur
Date d'inscription: 10/11/2005
Localisation: Un pays avec beaucoup de banques
Messages: 3 229
|
![]() Petite précision au niveau de la VRAM: la version 2.00 a un gestionnaire donc plus de souci, par contre le problème c'est que la VRAM est beaucoup plus petite que la RAM (2 Mo, dont plus du quart à plus de la moitié utilisée rien que pour l'écran lui même - donc pas dispo).
En fait il faut utiliser la VRAM dans les cas suivants: - la VRAM a l'avantage d'être plus rapide sur les images non swizzlées (donc uniquement des images que vous devez modifier fréquemment, sinon c'est mieux de les swizzler et les laisser en RAM) - il est uniquement possbile de faire un oslSetDrawBuffer sur des images en VRAM. Sinon par défaut c'est mieux d'utiliser la RAM et laisser cette précieuse VRAM pour des cas bien particuliers ![]() |
![]() |
![]() |
![]() |
#5 | ||||
Membre confirmé
|
![]() Citation:
Citation:
Citation:
![]() ![]() ![]() ![]() Citation:
Je verrais tout ca à tête reposée dès que j'aurais du temps pour tester. Merci pour toutes les infos. |
||||
![]() |
![]() |
![]() |
#6 |
Super Modérateur
Date d'inscription: 10/11/2005
Localisation: Un pays avec beaucoup de banques
Messages: 3 229
|
![]() Non, par modifier on parle de modifier les données de l'image. Par exemple si tu prends une feuille de papier tu peux la tourner, la déplacer, etc. sans la modifier (la feuille reste pareille, où qu'elle soit). La modifier ça veut dire dessiner dessus, pareil pour l'image.
Il y a deux moyens de dessiner sur une image (les deux sont impossibles si elle est swizzlée): - Utiliser oslSetDrawBuffer(image) puis faire ses opérations de dessin comme sur l'écran, ça dessinera juste sur l'image à la place. Il faut pour cela qu'elle soit en VRAM. - Modifier directement les données de l'image (c'est simplement un gros tableau de pixels), dont un pointeur est donné par image->data (mais c'est assez avancé, il faut savoir ce qu'on fait). Ca ça marche même si l'image est en RAM, et ça inclut le fait de faire un oslSetImagePixel sur l'image (donc impossible si swizzlée). Note que dans ce cas il ne faut pas oublier de locker l'image (oslLockImage, oslUnlockImage).
__________________
[10.12.2018] PatrickBoy: codez vos jeux avec la puissance d'une borne d'arcade 16 bits! [21.01.2010] Emu Game Boy et GUI pour la coloration de jeux GB Partagez vos meilleures musiques de jeu vidéo! ![]() ![]() ![]() Dernière modification par Brunni ; 24/05/2007 à 19h44. |
![]() |
![]() |
![]() |
#7 |
Membre confirmé
|
![]() Merci pour l'explication
![]() ![]() Au fait tu as réparé la fonction screenshot? t'as fait une release? c'est juste pour savoir, évidemment ca ne presse pas. Dernière modification par daaa57150 ; 25/05/2007 à 09h58. Motif: question |
![]() |
![]() |
![]() |
Liens sociaux |
Publicité |
Utilisateurs regardant la discussion actuelle : 1 (0 membre(s) et 1 invité(s)) | |
Outils de la discussion | |
Modes d'affichage | |
|
|