CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Frontières

VivaFidel
VivaFidel
Niveau 10
11 août 2014 à 15:36:38

Yo tout le monde,
Je viens de me lancer dans la création d'un jeu style eu4.
Mais dés les premières lignes, je me heurte à un problème : les frontières.
Le problème est de trouver quelle pays est sélectionné lorsqu'on clique dessus. J'ai testé de faire une couleur par pays et en suit glReadPixels la ou est la souris, ça fonctionne mais c'est un peu moche d'avoir un pays de chaque couleur et surtout galère si on conquiers des territoires.
Quelqu'un à une solution ?

Merci

P.S: je programme en Java avec lwjgl :)

Guim6
Guim6
Niveau 10
11 août 2014 à 16:00:27

Tu peux pas faire que chaque pays ait une propriété et que le curseur récupére la propriété du pays au dessus duquel il est ? ou un truc dans le genre :noel:

adn59
adn59
Niveau 7
11 août 2014 à 16:07:00

Une solution serait d'avoir une image ( que tu n'affiche pas ) avec chaque pays d'une seule couleur. ( ton image peut etre d'une taille inférieur si tu veux économiser de l'espace au détriment de la précision du clique)

Paulop
Paulop
Niveau 12
11 août 2014 à 16:07:43

Une bouding box sur chaque pays.

VivaFidel
VivaFidel
Niveau 10
11 août 2014 à 16:28:06

adn59 :d) je vais essayer de faire un truc du style, merci

_Toastation_
_Toastation_
Niveau 9
11 août 2014 à 16:53:30

La proposition de Paulop est plus judiccieuse pourtant

Paulop
Paulop
Niveau 12
11 août 2014 à 17:09:02

Le plus difficile c'est de définir les bouding box.

hexabeast
hexabeast
Niveau 9
11 août 2014 à 17:26:26

Lol une bounding box sur une frontière c'est pas vraiment envisageable, la solution d'adn59 est bien plus simple et précise.

VivaFidel
VivaFidel
Niveau 10
11 août 2014 à 17:49:41

le truc avec la soluce de paulop c'est qui si le mec clique par exemple au sud de l'allemagne, sa va être et le sud de l'allemagne et le nord de la suisse... Ou alors j'ai mal compris l'idée.

Paulop
Paulop
Niveau 12
11 août 2014 à 18:05:09

Excuse moi je me suis mal exprimé, effectivement si ton pays est pas un carré tu vas devoir utiliser des polygones pour définir la boite de collision de ton pays.

Après c'est un algo de point dans polygone.

florent6262100
florent6262100
Niveau 9
11 août 2014 à 18:36:42

sa dépend, ta carte est un model 3D ou est un GUI ?, car si c'est un GUI c'est hyper simple de faire quelque chose de beau et précis

Dharxy
Dharxy
Niveau 6
11 août 2014 à 18:43:29

Faire un image comme mask de collision sa va lui prendre 10min et avoir une précision niquel.

VivaFidel
VivaFidel
Niveau 10
11 août 2014 à 20:05:30

florent :d) non pas de 3d juste une image. Quelle est ta solution

Arkwolf
Arkwolf
Niveau 30
11 août 2014 à 20:09:22

J'aurais fait pareil que Paulop, des polygones pour calculer les collisions des avec le point du curseur

caelacanthe
caelacanthe
Niveau 10
11 août 2014 à 20:12:38

"et surtout galère si on conquiers des territoires. "

:d) Oui enfin tu peux utiliser une autre texture, elle spécialement dédiée aux sélections de continents, et qui n'a rien à voir avec celle chargée de l'affichage. Et ça te laisse deux cent cinquante régions différenciables, plus si tu utilises plusieurs canaux de couleurs. :oui:

Paulop
Paulop
Niveau 12
11 août 2014 à 20:22:53

Le mask est très bien, mais pour une map du monde détaillé ça va prendre beaucoup de place.

florent6262100
florent6262100
Niveau 9
11 août 2014 à 20:25:06

Tout simplement, comme c'est du java, tu fait une reconaissance de GUI, tu a cas me donner ta ligne pour l'affichage de la carte

caelacanthe
caelacanthe
Niveau 10
11 août 2014 à 21:57:02
  • Paulop Voir le profil de Paulop

* Posté le 11 août 2014 à 20:22:53 Avertir un administrateur
* Le mask est très bien, mais pour une map du monde détaillé ça va prendre beaucoup de place.

:d) Si elle n'est pas très détaillée? L'idée n'est pas de suivre exactement les contours des régions, juste que les pixels de la texture de référence recouvrent vaguement les bords de celle-ci. Il n'est pas forcément besoin d'avoir une précision parfaite. :pf:

Paulop
Paulop
Niveau 12
11 août 2014 à 23:05:40

Ca reste une texture qui prend beaucoup de place :p

caelacanthe
caelacanthe
Niveau 10
11 août 2014 à 23:09:34

2014, la facilité de déploiement au sacrifice des performances que posséderait une hitbox à polygones, etc...

wtf, c'est moi qui écrit ça? :-(

Au pire, il n'utilise qu'un seul canal de couleur, ou au pire, il couple les solutions de la hitbox rectangulaire et de la texture de lookup, en refilant une image de la région en blanc sur noir monochrome, et quand il teste quels rectangles sont recouverts, il s'en va aussi repérer lequel, car il sera unique, dispose d'un pixel blanc à l'endroit du clic. :oui:

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Internet
  • Macintosh
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware
La vidéo du moment