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

Est-ce qu'un PC est assez puissant...

[R]Viper
[R]Viper
Niveau 10
24 juillet 2005 à 19:26:13

pour gérer une ville avec une voiture qui se promène ( la mienne)? Plus précisément, ce que je voudrais faire, c´est un peu comme des " tiles" mais en 3D.

Prenons comme exemple que ceci est ma ville vue de dessu. http://img64.imageshack.us/img64/9986/ville4qs.jpg

La ville fait 100*100 pixels, divisé en case de 10*10 pixels.

Je voudrais remplir chaque case par une petite partie de ville, exemple, une rue, un virage, un batîment, etc. Bien sur le tout sera beaucoup plus grand que 100*100 pixels, je crois essayer de commencer par au moins 20*20 cases, et peut-être grandir de plus en plus.

Bon, ma question est : est-ce que ceci prendra un ultra-méga-super gros PC viril? Ou bien si c´est possible d´être joué sur un PC de 500 MHz par exemple?

Pour info, le tout est fait sous BlitzBasic.

Merci d´avance.

fil_razorback
fil_razorback
Niveau 10
24 juillet 2005 à 19:34:25

Presque tous les jeux sont faits comme ca, c´est possible :)

Ptival
Ptival
Niveau 10
24 juillet 2005 à 19:51:01

C´est pas le concept mais la mise en application qui détermine la puissance nécessaire...

Si tu fais des High Poly, avec un code mal optimisé ça passera pas...

Si tes Polys sont raisonnables, que le code est bien optimisé...ya pas trop de problème :)

[R]Viper
[R]Viper
Niveau 10
24 juillet 2005 à 20:09:13

Bah, pour les polygones, seul ma voiture aura beaucoup de polygone, car c´est quand même le plus important, et les batîments, ca risque d´être simplement un primse à base rectangulaire, avec les 4 textures de chaque côté.

Les routes, ce sera la même chose, les coins de trottoir seront assez rond, ( environ 10 côtés max).

Y´aurais aussi un problème de code, je l´expliquerais après dîner.

tomtomclancy
tomtomclancy
Niveau 9
25 juillet 2005 à 08:06:35

c´est surtout au niveau optimisation d´affichage et stockage des données, qu´il va falloir bosser, Arbre BSP, quadtree, octree etc...

si t´as l´intention d´afficher toute ta ville a chaque fois, oui il va te falloir une GROSSE config.

JeanYvesYves
JeanYvesYves
Niveau 10
25 juillet 2005 à 09:39:53

Pas d´accord avec TomtomClancy, dans le acs du tiling, tu n´as pas besoin de quadtrees.
Un petit calcul pourrait permettre de te prouver que ton PC est assez puissant :

tu ramenes ta ville a un tableau à dimensions dans lequel tu stockes le " type" de tile :)

Imaginons que pour chaque tile, tu gardes 4 octets ( ce qui pourrait te permettre d´énumérer + de 4 milliards de tiles différents) ( on tape super large)
Si ta carte fait 20*20 comme tu dis, on calcule l´espace de mémoire nécessaire :
20*20*4 = 1600 octets = 1,6 Ko.
( Est ce que ton PC a 1.6 Ko de RAM disponible ? Largement :) tu le sais surement, mais les PC actuels ont bien 512 Mo de RAM. Meme les vieux PC maintenant ont encore 128 Mo de RAM,
ce qui pourrait permmettre de stocker + de 100 000 fois un terrain 20*20 :lol:

Si tu fais une carte de 1000*1000 tiles, ça fait 4 Mo d´alloués, ce qui se gere encore tres bien !
Et oui, c´est a ça que ça sert, la RAM dans les PC ! apres la puissance du processeur ne sert pas pour le stockage du monde sous cette forme.

Apres, j´explique pourquoi le quadtree n´est pas nécessaire ici : comme la structure est tres réguliere, calculer les tiles mis en jeu pour un x/y donné revient a faire
divisions uniquement : c´est la méthdoe la plus rapide qui soit :)

tomtomclancy
tomtomclancy
Niveau 9
25 juillet 2005 à 12:55:23

ah ben j´avais pas bien compris le probleme alors, je pensais qu´il voulais afficher en 3D.

bon ben j´aurais raison une autre fois :honte:

Lapintade
Lapintade
Niveau 30
25 juillet 2005 à 13:32:31

Si si c´est en 3D sont truc.

Mais bon peu importe, la discussion porte sur la facon de stocker des données et non la nature de ces données.

Donc diviser le monde en grille, c´est la methode la plus bourrine et la plus simple.

JeanYvesYves
JeanYvesYves
Niveau 10
25 juillet 2005 à 14:22:54

Dans TombRider, on a un merveilleux exemple de grille 3D ( voxel)
--> tout n´est que cubes de la meme taille :)
Cependant, vu la taille des stages ( et sachant qu´en dimenesion 3, ça monte bien + vite, a mon avis, il devait y avoir une compression quelquonque ( surtout pour les zones sans briques... RLE ?

[R]Viper
[R]Viper
Niveau 10
25 juillet 2005 à 18:25:10

JeanYvesYves
Posté le 25 juillet 2005 à 09:39:53
Pas d´accord avec TomtomClancy, dans le acs du tiling, tu n´as pas besoin de quadtrees.
Un petit calcul pourrait permettre de te prouver que ton PC est assez puissant :

tu ramenes ta ville a un tableau à dimensions dans lequel tu stockes le " type" de tile

Imaginons que pour chaque tile, tu gardes 4 octets ( ce qui pourrait te permettre d´énumérer + de 4 milliards de tiles différents) ( on tape super large)
Si ta carte fait 20*20 comme tu dis, on calcule l´espace de mémoire nécessaire :
20*20*4 = 1600 octets = 1,6 Ko.
( Est ce que ton PC a 1.6 Ko de RAM disponible ? Largement tu le sais surement, mais les PC actuels ont bien 512 Mo de RAM. Meme les vieux PC maintenant ont encore 128 Mo de RAM,
ce qui pourrait permmettre de stocker + de 100 000 fois un terrain 20*20

Si tu fais une carte de 1000*1000 tiles, ça fait 4 Mo d´alloués, ce qui se gere encore tres bien !
Et oui, c´est a ça que ça sert, la RAM dans les PC ! apres la puissance du processeur ne sert pas pour le stockage du monde sous cette forme.

Apres, j´explique pourquoi le quadtree n´est pas nécessaire ici : comme la structure est tres réguliere, calculer les tiles mis en jeu pour un x/y donné revient a faire
divisions uniquement : c´est la méthdoe la plus rapide qui soit
:d) Excellent, mais comment je fais pour savoir combien d´octect prendra chaque morceau? Est-ce la taille des fichiers? Par exemple, " maison.x" ?

fracart
fracart
Niveau 5
25 juillet 2005 à 18:33:19

ta maison.x ne va etre chargée qu´une seule fois... puis affichée a chaque fois que tu l´appelles ( c´est a ca que servent les listes d´affichage en opengl par exemple)

en fait pour résumer, chaque case de ton monde ne contiendra que des pointeurs vers des listes d´affichage

vectoriel
vectoriel
Niveau 7
25 juillet 2005 à 18:35:21

combien d´octect prendra chaque morceau >

Alors. Au niveau de ta map, on a dit, maximum 4 octets par tile : tu stocke juste le type de tile a mettre :)

Bon maintenant, apres, il faut aussi stocker, pour chaque type, le tile lui meme !
C´est a dire l´image, le bitmap.
En non-compressé, c´est simple, en haute résolution tu comptes 4 octets par pixels. Pour chaque tile, tu multiplie donc X*Y*4 pour avoir la taille en otcte d´un tile.

L´avantage, c´est que tu ne stockes un tile qu´une fois en mémoire : c´est a dire que si dans ton monde, tu as une grande foret, tu as donc un grand bloc de tiles qui sont de type 12 par exemple ( tu dis que 12, c´est un tile d´arbre)
mais le tile darbre, lui, tu ne l´as qu´une fois en mémoire, tu vois? :)

JeanYvesYves
JeanYvesYves
Niveau 10
25 juillet 2005 à 18:39:59

tout a fait :oui:

Extra-terrestre
Extra-terrestre
Niveau 10
25 juillet 2005 à 18:44:20

mais il faut quand même définir les positions des tiles, et ça peut prendre pas mal de place en mémoire, non? ou y´a une façon d´optimiser le positionnement?

JeanYvesYves
JeanYvesYves
Niveau 10
25 juillet 2005 à 19:46:28

Ben la position des tiles, c´est les 2 ou 4 octets qui définissent, pour chaque case, le type :)

la position est implicite, puisque tu definis une grille :) et chaque élément de cette grille est le type du tile qui se trouve a cette position ! donc CQFD :)

Apres, si tu veux gagner en mémoire, tu peux compresser , mais bon, apres tu perds en puissance...

Extra-terrestre
Extra-terrestre
Niveau 10
25 juillet 2005 à 19:52:18

oki :)

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