#include <SDL.h>
#include <stdio.h>
#include <stdlib.h>
typedef int bool;
#define true 1
#define false 0
void SDL_ExitWithError(const char *message);
int main()
{
bool run = true;
int screenWidth = 1080;
int screenHeight = 720;
SDL_Window *window = NULL;
SDL_Renderer *renderer = NULL;
if(SDL_Init(SDL_INIT_VIDEO) != 0)
SDL_ExitWithError("Initialisation SDL");
// Execution du programme
// Création de la fenêtre et du rendu
window = SDL_CreateWindow("Fenêtre SDL", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, screenWidth, screenHeight, SDL_WINDOW_SHOWN);
if (window == NULL)
SDL_ExitWithError("échec de la création de la fenêtre");
renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);
if (renderer == NULL)
SDL_ExitWithError("échec de la création du renderer");
// Changement de la couleur du pinceau
if (SDL_SetRenderDrawColor(renderer, 255, 0, 0, SDL_ALPHA_OPAQUE))
SDL_ExitWithError("Impossible de changer la couleur pour le rendu");
// On dessine la ligne
if (SDL_RenderDrawLine(renderer, 500, 0, 500, screenHeight) != 0)
SDL_ExitWithError("Impossible de dessiner la ligne");
// On affiche le rendu
SDL_RenderPresent(renderer);
// Attendre jusqu'à ce que l'utilisateur quitte le programme
SDL_Event event;
while (run) {
while (SDL_PollEvent(&event)) {
if (event.type == SDL_QUIT) {
run = false;
}
}
}
// Tout détruire
SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(window);
SDL_Quit();
return EXIT_SUCCESS;
}
void SDL_ExitWithError(const char *message)
{
SDL_Log("Erreur : %s > %s\n", message, SDL_GetError());
SDL_Quit();
exit(EXIT_FAILURE);
}
Le message qui suit est une réponse automatique activée par un membre de l'équipe de modération. Les réponses automatiques leur permettent d'éviter d'avoir à répéter de nombreuses fois la même chose, ce qui leur fait gagner du temps et leur permet de s'occuper des sujets qui méritent plus d'attention. Nous sommes néanmoins ouverts et si vous avez une question ou une remarque, n'hésitez pas à contacter la personne en question par Message Privé. Pour plus d'informations, nous vous invitons à lire les règles générales du forum
Manque de Politesse
Votre message ne comporte pas ou peu de formules de politesse (« Bonjour », « Merci », « Au revoir », etc.). Les règles du site exigent que chaque nouveau message comporte un minimum de politesse. Après tout, les gens qui répondent le font gratuitement, sur leur temps libre. Ils méritent bien un minimum de considération, n'est-ce pas ?
Manque de précisions
Vous êtes ici sur un forum d'entraide communautaire et non pas sur un forum de demande de service, le but n'est donc pas de fournir une réponse toute faite ou de directement fournir la solution à quiconque viendrait sans la moindre trace. Afin d'obtenir de l'aide et une solution à votre problème, il est fortement recommandé de présenter clairement l'état actuel du problème en nous fournissant :
Un descriptif clair et précis du problème
La tentative actuelle de résolution que vous avez effectué
Le résultat attendu et le résultat actuel
Toutes pistes de recherches pouvant aider à la résolution
Attention que pour SDL_RenderDrawLine(), x2 et y2 ne sont pas des longueurs, mais des coordonnées. Or la coordonnée (500,720) n'existe pas. Par contre, (499,719) existe.
Ayant changé de bécane il y a peu, je ne suis hélas pas en mesure de tester du code avec sdl2.
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
Bonjour, excusez-moi de répondre aussi tard, j'ai en fait résolu le problème en donnant le flag : SDL_RENDERER_SOFTWARE à la fonction SDL_CreateRenderer().
Au revoir et merci de ta réponse.
Pixels multicolores à côté de ligne dessinée
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent