Bonjour,
Je lance un appel ; je cherche un tout petit projet, tout prêt utilisant la SDL2 (image, ttf) sous Xcode ou Eclipse. Je rame :bug: pour configurer les ide.
Merci d'avance.
Version imprimable
Bonjour,
Je lance un appel ; je cherche un tout petit projet, tout prêt utilisant la SDL2 (image, ttf) sous Xcode ou Eclipse. Je rame :bug: pour configurer les ide.
Merci d'avance.
Bonjour,
C'est une chose que je souhaite faire depuis longtemps. Mais n'ayant pas de Mac, cela était difficile. De plus, l'installation d'une machine virtuelle n'est pas des plus simples. Mais par chance, ce weekend, j'ai trouvé une méthode très simple à base de QEMU/KVM.
En bref, maintenant, j'ai une VM macOS sous Linux.
Et je peux enfin faire des choses, comme aider les gens avec XCode.
Voici une petite archive, d'un premier projet SDL2 (uniquement), pour XCode (11.3).
Aucune idée si cela peut marcher si une autre machine que la mienne (même avec l'expérience de faire ce genre de template, Apple rend la chose compliquée).
À vous de tester (s'il vous plaît). Aussi, je ne sais pas si c'est la manière la plus propre de faire, notamment car j'embarque la SDL2 dans l'exécutable.
Note : le code du programme n'ouvre pas de fenêtre. Enfin, si, mais pas visible sur macos. Puis il attends trois secondes, ensuite il s'arrête.
Bonjour LittleWhite,
Génial je vais tester en ce moment je synthétise plusieurs tuto pour codeblock, je vais essayer aussi avec codewarrior.
Merci
Bonjour,
Ton projet fonctionne, mais Xcode est très 'space'.. il exécute ton projet sans message d'erreur pour te dire une fois la fenêtre fermée qui ne trouve pas SDL2 avec l'include :mouarf:
de plus il ne supporte pas SDL2.framework mais l'alias SDL2. Et il a fallu changer aussi la 'cible de déploiement' en 10.12 (l'Os).
ensuite j'ai rajouté du code pour essayer SDL2 image, mais même avec ou sans chemin du fichier image.png et avec le fichier bien évidement dans le dossier j'ai toujours un pointeur null sur mon 'SDL_Surface'... :D :zen:
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 #include <SDL2/SDL.h> #include <stdlib.h> #include <stdio.h> #include <OpenGL/gl3.h> #include <SDL2_image/SDL_image.h> #include <SDL_ttf/SDL_ttf.h> int main(int argc, char** argv) { //SDL_Surface * ws = NULL; SDL_Surface * is = NULL,*texte = NULL; SDL_DisplayMode dpm; SDL_GetDesktopDisplayMode(0, &dpm); SDL_Renderer *renderer = NULL; TTF_Font *fonts; SDL_Color ct ={ 255, 255, 255, 255 }; SDL_Rect pt; int quit = 0; TTF_Init(); if (TTF_Init() != 0){ SDL_Quit(); return 1; } fonts = TTF_OpenFont("Cochin.ttf",15); SDL_Event event;IMG_Init(IMG_INIT_PNG); /* Initialisation simple */ if (SDL_Init(SDL_INIT_VIDEO) != 0 ) { fprintf(stdout,"Échec de l'initialisation de la SDL (%s)\n",SDL_GetError()); return -1; } /* Création de la fenêtre */ SDL_Window* pWindow = NULL; pWindow = SDL_CreateWindow("Ma première application SDL2",SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 800, 600, SDL_WINDOW_RESIZABLE); renderer = SDL_CreateRenderer(pWindow, -1, SDL_RENDERER_ACCELERATED|SDL_RENDERER_PRESENTVSYNC); SDL_Surface * image = SDL_LoadBMP("image.png"); SDL_Texture * texture = SDL_CreateTextureFromSurface(renderer, image);
J'ai eu le même soucis avec SDL2.h et je ne comprends absolument pas la raison (surprise ! ...).
J'ai un template avec SDL2 SDL2image et SDL2TTF de lier, mais il ne vous aidera pas plus que cela.
Vous ne vérifiez pas si la fonction retourne un pointeur NULL. C'est dommage, ça pourrait aider (pour afficher un message d'erreur clair). Pareil pour l'image (dont le nom contient des caractères étranges :koi:). Autrement, le piège étant dans l'emplacement où le programme est lancé. Deux possibilités logiques :Code:fonts = TTF_OpenFont("Cochin.ttf",15);
- soit dans le dossier du projet XCode ;
- soit dans le dossier de l'exécutable généré (un dossier généré à la compilation).
Dans le second cas, ce sera galère. Dans le premier cas, il faut donc mettre vos ressources à côté du projet XCode.
Oui je sais que 'fonts' me renvoie aussi un pointeur 'null'.
Le problème est le même, il faut que je trouve où il veut les fichiers images ou fonte de caractère, surtout que j'ai déjà réussi a affichée une image mais un magnifique bug m'avait foutue en l'air le projet.
j'y retourne...
ps; les caractères étranges dans le nom du fichier image provient uniquement de l'insertion du code dans le message.
la suite... ce qui marche avec codeblock sur Pc, fonctionne pas avec Xcode et cela ne vient pas du fichier image, j'avais réussi avec une ancienne version d'Xcode, mais bon... :D