• 07 Juin 2026, 06:16:41


Auteur Sujet: Discussion sur les streamers  (Lu 5294 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Discussion sur les streamers
« le: 06 Décembre 2010, 18:56:30 »
Discussion sur les streamers

Je vous invite tous à partager vos idées sur les méthodes que l'on pourrait utiliser dans un streamer, le tout dans le but de créer de nouveaux streamers plus efficaces et qui effectuent mieux le travaille de point de vue du joueur. Soyez imaginatifs. Le but? très simple: créer une nouvelle génération de streamer plus efficaces, plus propres, qui seraient pratiquement invisibles aux yeux des joueurs, sans pour autant monopoliser la machine sur laquelle ils sont exécutés.

Si vous ne savez pas ce qu'est un streamer, veuillez vous abstenir de poster. Ce fil de discussion s'adresse principalement aux scripteurs avancés.

Avant toute chose, la plupart des idées que je vais donner ici proviennent de ce topic: Two Topic by Y_LESS

Tout comme Y_LESS, je pense qu'il faut séparer le sujet en 3 sous-sujets.

  • 1. Algorithme de gestion des objets. C'est à dire l'idée principale de la méthode de calcul, exemple simple calcul de distance, utilisation de zones...
  • 2. Implantation de l'algorithme. Certains algorithmes représentes des défis à implantés, pour éviter les limites principalement et que le code soit propre.
  • 3. Gestion de l'interaction avec les scripts. Comment on s'arrange pour que ce soit très simple à utiliser et que tous les scripts y aient accès.


1. Algorithme

L'algorithme, c'est le principe de fonctionnement du streamer. L'idée derrière le script. Par exemple, on peut simplement tester la distance entre un joueur et un objet et décider ainsi si l'on affiche ou non l'objet. On peut aussi regarder la distance de plein d'objets et choisir les objets les plus proches parmi la liste.

Je vais ci dessous présenter quelques algorithmes relativement connus.

Distance de vue simple:

Cet algorithme consiste simplement à regarder si un objets est dans un certains rayon autour d'un joueur. Les streamer utilisant ce principe sont: xobjects, midostream, ...
Ces streamer sont les plus simple, les plus limités et ceux qui comportent le plus de problèmes potentiels quant à ne pas voir certains objets proches quand la densité d'objet d'une zone est grande.
Le code est, à la base, à peu près structuré ainsi:
Stream(playerid)
{
    for(new o = 0; o < MAX_STREAM_OBJECTS; o++)
    {
        if(IsPlayerInRangeOfPoint(playerid, MAX_VIEW_DIST, obj[o][x], obj[o][y], obj[o][z]))
        {
             on affiche l'objet
        }
        else
        {
             on cache l'objet
        }
    }
}

Le principal avantage de cet algorithme, c'est qu'il est simple à coder.

Distance, les plus proches:

Cet algorithme affiche les objets les plus proches d'un joueur, un peu plus difficile à implanter que l'algorithme précédant, il demande un peu plus de calcul mais évite le problème d'objets très proches qui peuvent ne pas apparaitre. De plus la distance de vue n'est plus un paramètre, elle varie en fonction de la densité d'objet de la zone dans laquelle se trouve le joueur. Un exemple de streamer utilisant cette méthode est SuperStream.
Le code est à peu près structuré comme ceci:
Stream(playerid, Float:X, Float:Y, Float:Z)
{
    new array_objects[MAX_STREAM_OBJECTS][2];//on va stocké dans cet array les distances et les ID des objets pour pouvoir les ordonner selon la distance ensuite
    for(new o = 0; o < MAX_STREAM_OBJECTS; o++)
    {
         array_objects[o][0] = o;
         array_objects[o][1] = GetDistance(X, Y, Z, obj[o][x], obj[o][y], obj[o][z]);
    }
    order(array_object);//fonction qui place les objets du plus proche au plus loin
    for(new o = MAX_STREAM_OBJECTS; o >= MAX_OBJETS_VUS; o--)
    {
         on efface les objets qui ne doivent pas être vus  
    }
    for(new o = 0; o < MAX_OBJETS_VUS; o++)
    {
         on crée les objets qui doivent être vus  
    }
}

Cet algorithme, bien que plus difficile à implanter, permet une bonne amélioration de la qualité de l'illusion générée par le streamer et ne comporte pas de problème majeur. Toutefois, il faut faire attention car cette méthode demande plus de calcul et peut donc gérer un moins grand nombre d'objets.

Division de l'espace en zones:

Cette méthode consiste simplement à divisé l'espace en zone, on peut ainsi ne parcourir que les objets qui sont près du joueur, ce qui permet d'augmenter grandement la limite d'objets, surtout s'ils sont bien distribués sur la carte. Cette méthode est utilisé, entre autre, par Simstream et Y_objects. D'ailleurs on peut le remarquer dans la limite du nombre d'objet. Toutefois, je dois admettre que je l'ai plutôt mal implanté dans Simstream...
Le code de ce genre de méthode demande l'ajout de quelques fonctions, comme une fonction pour ajouter/retirer un objet d'une zone, le changer de zone etc... il faut faire attention à la façon dont on les gère. Je ne donnerai pas d'exemple pour cette méthode car plus complexe et longue à coder...

Autres:

Il existe bien sur plusieurs autres méthode. D'ailleurs, c'est le but de ce topic, trouver de nouvelles méthode qui pourraient être plus efficaces que celles déjà utilisées.

Dans une autre catégorie d'algorithme, on peut aussi déterminer la position ou SERA le joueur. Il ne faut pas oublier que la position récupérer est la dernière position connue du serveur, que la position est déjà différente et que le temps que les données soient reçus, le joueurs aura bougé. On peut donc ajuster selon la position probable du joueurs quels objets il verra. C'est ici que la velocity devient utile.


2. Implantation de l'algorithme

Le second défi de la création d'un streamer, est l'implantation de l'algorithme, je ne m'éterniserai pas sur cette section, mais elle est tout de même importante.

Certaines des méthodes présentés sont relativement difficiles à implanter, par exemple, la méthode des objets les plus proches demande une fonction pour classer les objets, cette fonction, afin de la rendre efficace, nécessite l'utilisation de méthodes de classement qui peuvent être relativement compliquées.

ps. concernant la fonction de classement, je recommande d'utiliser QuickSort de Y_Less, modifiée pour un array à 2 dimensions.

En ce qui concerne l'utilisation de zones, le défi vient quant à la gestion des zones elles mêmes, les concevoir de façon à ne pas limiter l'utilisateur. Par exemple, dans SimStream on ne peut ajouter d'objets hors des zones, c'est à dire à une valeur en X ou Y supérieure à 4000 ou inférieure à -4000 (dépendant des paramètres). Une solution est de créer une zone supplémentaire dans laquelle on place tous les objets qui ne sont pas dans les zones normales. De plus, trouver une façon d'ajouter les zones sans pour autant multiplier la quantité de mémoire utilisée par le script est un défi. Je recommande ici l'utilisation de listes.

Cette section est plutôt importante dans la discussion, selon moi.


3. Gestion de l'interaction avec les scripts

Cette section est celle qui pourrait être la plus complexe, si l'on veut une intégration la plus invisible possible.
L'idéal serait de n'avoir qu'à inclure le streamer dans chacun des scripts et que tout fonctionne.
Bien sur, ceci est difficile.

Une méthode proposée par Y_LESS est l'utilisation de son master system. En gros, ce système permet de gérer l'interaction de scripts entre eux. Ils sont tous identiques, ils comportent tous les streamer et la possibilité de communiquer avec les autres, d'être client ou serveur.
Toutefois, le système désigne l'un des script comme le maitre.
Les autres font appel à lui comme serveur, et lui est le streamer.
YSI comporte cette fonction. Toutefois, c'est très difficile à implanter.
Y_LESS admet que son système était rendu très compliqué et lourd à coder, c'est l'une des raisons pourquoi il a arrêté ce projet.

Une autre méthode, qui selon moi est beaucoup plus envisageable pour le moment, est la création d'un filterscript qui sera le serveur, et tous les scripts font appel à lui avec des CallRemoteFunction. Cette méthode est l'une des plus utilisée. SuperStream, SimStream, midostream... utilisent cette méthode.

Dernière méthode et la moins intéressante, Tout mettre ses objets dans un seul filterscript qui est le streamer. Xobject utilise cette méthode.
Cci cause de nombreux inconvénient.
On ne peut mettre les objets que dans un script, limite l'interaction des autres scripts...


Ce que je vous demande


Après avoir lu tout ce texte (et au besoin le monstre de Y_LESS), je vous demande trois petites choses:
partagez vos idées pour des améliorations. Que ce soit dans n'importe quelle des sections présentées, vos idées seront toutes les bienvenues.
Soyez original, essayez d'éviter les idées déjà connus (je ne les ai pas toutes listées).
Soyez précis, donnez autant de détails que possible, afin de facilité la compréhension de votre idée.

Merci de votre attention.

Sim.
« Modifié: 06 Décembre 2010, 19:09:40 par Sim »





Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Discussion sur les streamers
« Réponse #1 le: 06 Décembre 2010, 19:04:27 »
Topic très intéressant moi je n'ai pas grand chose à dire, à par ce que je t'avais déjà dit sur MSN, comme ne pas affiché les objets à côté du joueur, mais plutôt ceux à coté de la camera et les afficher selon où la camera pointe ^^



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne D0os-Nox

  • Connais toi - toi même
  • *
  • Tueur en série
  • Retourne toi, t'es déjà mort
  • Messages: 144
    • Voir le profil
    • :.. UG - Communauté d'entraide, de production vidéo games et multigaming ..:
Re : Discussion sur les streamers
« Réponse #2 le: 06 Décembre 2010, 19:13:10 »
Bonjour, Pour répondre à sasuke les effets comme la fumée, flammes, nitro, font perdre des fps seulement quand nous la voyons (Caméra) !

Mais, si vous avez l'occasion de tourner la vue et de cacher les différents effets en positionnant la caméra de façon à ne plus voir la modélisation 3D, vous remarquerez une diminution du CPU (Processeur) et une augmentation des fps ( Certains serveur MTA permet d'afficher le nombre de fps )

Si, On reprend m'a supposition, sa pourrai être une idée pour le streamer ?

 :-X D0os-Nox  ;)

« Modifié: 06 Décembre 2010, 19:22:36 par D0os-Nox »




Citer
La vrai paix n'existe pas, nous somme le reflet de l'ignorance d'un monde détruit par la guerre ![/glow]
Citer
Chaque jours, la haine nous renferme dans l'obscurité ![/glow]
(Citations par D0os)

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Re : Discussion sur les streamers
« Réponse #3 le: 06 Décembre 2010, 19:36:36 »
Salut,

Bonjour, Pour répondre à sasuke les effets comme la fumée, flammes, nitro, font perdre des fps seulement quand nous la voyons (Caméra) !

Mais, si vous avez l'occasion de tourner la vue et de cacher les différents effets en positionnant la caméra de façon à ne plus voir la modélisation 3D, vous remarquerez une diminution du CPU (Processeur) et une augmentation des fps ( Certains serveur MTA permet d'afficher le nombre de fps )

Si, On reprend m'a supposition, sa pourrai être une idée pour le streamer ?

 :-X D0os-Nox  ;)




malheureusement non, ceci est un effet côté client, le serveur n'as pas à toucher aux modèles.

++Sim++





Hors ligne chneubeul

  • *
  • Gangster
  • GTA Online Addict :)
  • Messages: 1132
    • Voir le profil
Re : Discussion sur les streamers
« Réponse #4 le: 06 Décembre 2010, 19:47:47 »
Bonsoir,

Tout d'abord merci Sim, d'avoir accepter de parler de ça. :)

Je pense comme Sasuke, il faudrait détecter les objets, en fonction de l'angle de la camera. Le problème c'est que si par exemple on bouge vite la camera avec plus de 400 objets autour de soit, on risques d'avoir de petit problème. Cette idée serais en compléments donc pour dire '' d'actualiser " ou d'initialiser les objets pour ensuite détecter les variations de la caméra.

Pour l'idée avec les zones, ça pourrais être pas mal pour preload les objets en fonction de la distance et du nombre d'objet dans celle ci, puis ensuite de validée les objets en fonction de l'angle de la camera.

Sam. :cheers

Hors ligne chneubeul

  • *
  • Gangster
  • GTA Online Addict :)
  • Messages: 1132
    • Voir le profil
Re : Discussion sur les streamers
« Réponse #5 le: 06 Décembre 2010, 20:04:18 »
Voila je t'ai fait un petit dessin :)

(( Remarquez la qualité HD de mon oeuvre réalisé sur l'onéreux logiciel " Paint " de WinDaub :D))


Après réflexion, le dessin n'est pas tout à faire correct, il faudrait prendre en compte la distance de la camera au joueur. Et donc reculer la camera derrière le joueur.
« Modifié: 06 Décembre 2010, 20:07:20 par chneubeul »

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : Discussion sur les streamers
« Réponse #6 le: 06 Décembre 2010, 20:18:12 »
moi je penser a une chose peu etre infaisable

Mais voila ce serais de faire comme un .exe (comme pour les npc  par exemple) qui s'execute en meme temps que le server les object serais precharger via un fichier situer dans le meme repertoir et de la il prendrais la fonction non pas par zone mais par section

Enfin voila je pense que on serais obliger de modder le client ce qui est interdit enfin je dit ceci mais j'en sais rien en faite :p
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici

Hors ligne chneubeul

  • *
  • Gangster
  • GTA Online Addict :)
  • Messages: 1132
    • Voir le profil
Re : Discussion sur les streamers
« Réponse #7 le: 06 Décembre 2010, 20:28:19 »
Ça pourrais être pas mal cristab :)
Je sais que via l'audio plugin les fichiers audio tu dois les mettres à la racine de ton serveur et non dans les scriptfiles. Donc pourquoi pas ? ^^

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Discussion sur les streamers
« Réponse #8 le: 06 Décembre 2010, 20:44:43 »
Salut,

mais il faudrait à ce moment aller chercher les adresses dans le serveur etc... Donc avec un .exe à part, je ne pense pas. Mais ton idée est un peu le principe des plugins.

Pour l'idée de la caméra, avec Sasuke on en a parlé un peu l'autre jour (je ne me rappelle pas la date exacte), la méthode que j'ai pensé la meilleur, c,est de s'en servir pour déplacer la position autour de laquelle on fais le calcul. je vous explique avec du code du streamer que j'ai commencé en intégrant ces idées:

new Float:pl_cam_X, Float:pl_cam_Y, Float:pl_cam_Z;
new Float:pl_adjust_X, Float:pl_adjust_Y, Float:pl_adjust_Z;
new pl_vehicleid, pl_interior, pl_vw;
for(new i = timerid; i < MAX_PLAYERS; i += STREAM_SPLIT_AMOUNT)
{
    if(IsPlayerConnected(i))
    {
        GetPlayerCameraPos(i, pl_cam_X, pl_cam_Y, pl_cam_Z);
        GetPlayerCameraFrontVector(i, pl_adjust_X, pl_adjust_Y, pl_adjust_Z);
        pl_cam_X += pl_adjust_X * CAM_ADJUST_SCALE;
        pl_cam_Y += pl_adjust_Y * CAM_ADJUST_SCALE;
        pl_cam_Z += pl_adjust_Z * CAM_ADJUST_SCALE;
        if((pl_vehicleid = GetPlayerVehicleID(i)))
        {
            GetVehicleVelocity(pl_vehicleid, pl_adjust_X, pl_adjust_Y, pl_adjust_Z);
        }
        else
        {
            GetPlayerVelocity(i, pl_adjust_X, pl_adjust_Y, pl_adjust_Z);
        }
        pl_cam_X += pl_adjust_X * VELOCITY_ADJUST_SCALE;
        pl_cam_Y += pl_adjust_Y * VELOCITY_ADJUST_SCALE;
        pl_cam_Z += pl_adjust_Z * VELOCITY_ADJUST_SCALE;
        pl_interior = GetPlayerInterior(i);
        pl_vw = GetPlayerVirtualWorld(i);
StreamPlayer(i, pl_cam_X, pl_cam_Y, pl_cam_Z, pl_interior, pl_vw);
}
}

En gros, au lieu de streamer où est le joueur, on va chercher un peu plus loin, en fonction d'où il regarde et de la direction de sa vitesse. Toutefois, on aura toujours des objets derrière, par contre il y en aura moins, donc il verra plus loin devant lui, mais s'il se retourne rapidement, il y a tout de même des objets.

PS. les noms des variables c'est pour éviter des incompatibilités

++Sim++





Hors ligne chneubeul

  • *
  • Gangster
  • GTA Online Addict :)
  • Messages: 1132
    • Voir le profil
Re : Discussion sur les streamers
« Réponse #9 le: 06 Décembre 2010, 21:08:02 »
Ah oui je comprend, donc enfaite il faut réduire le radius de détection, et rajoute la surface enlevé devant le joueur.. Pas mal :)

Une chose me turlupine  :happy

Citer
De plus, trouver une façon d'ajouter les zones sans pour autant multiplier la quantité de mémoire utilisée par le script est un défi. Je recommande ici l'utilisation de listes.

Tu entend quoi parler par '' listes " ? :)

Bonne nuit, Sam.

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Discussion sur les streamers
« Réponse #10 le: 06 Décembre 2010, 21:38:07 »
Salut,

je vais te donner une petite explication, s'appliquant au cas dont on discute:

Disons que tu crée des zones:
new meszones[zones_X][zones_Y];où:
 - zones_X est le nombre de zones en X
 - zones_Y est le nombre de zones en Y

Ensuite, c'est bien beau un tableau comme ça, mais il faut y insérer des objets. On peut tous les lister directement dans la variable ainsi:
new meszones[zones_X][zones_Y][MAX_OBJETS_PAR_ZONES];où chaque emplacement du tableau contient un objet.
Exemple:
(meszones[2][3][0]) est l'ID du premier objet de la zone 2 en X et 3 en Y (en fait c'est la 3e en X et 4e en Y comme on commence à 0)

C'est ainsi que j'ai procédé dans SimStream.
Cette méthode à 2 désavantages importants:

 - elle limite le nombre d'objet dans chaque zone
 - elle utilise beaucoup de mémoire (car on a beaucoup de zones, et on veut pouvoir mettre un bon nombre d'objet dans chaque zone, si tu as 20 zones par 20 zones, ça fait 400 zones, disons avec la
   possibilité de 250 objets par zones, on monte à 100 000 emplacements à créer)

Donc, cette méthode n'est pas très intéressante, possible, permet d'améliorer l'efficacité du streamer, mais elle est entraine un problème de limitation. La séparation en zones est donc moins intéressante que l'on aurais voulu...

C'est ici que les listes interviennent, elles vont nous permettre de connaitre aisément les objets d'une zone, sans utilisation excessive de mémoire ni limitation.

Il faut par contre ajouter 2 informations pour chaque objet. Niveau mémoire, ça va, la limite globale est facilement ajustable à nos besoin, même si on ajoute 8 octets par objet, on en aura pas un grand nombre inutilisé.

Donc un exemple de code avant d'aller plus loin:
enum enum_objets
{
    ....//les infos de l'objet, les trucs normaux
    obj_precedant,
    obj_suivant
};

new objets[MAX_STREAM_OBJETS][enum_objets];//on utilise donc 8 octets * MAX_STREAM_OBJETS en plus

new zones[zones_X][zones_Y];//ceci peut être suffisant
Comme tu peut voir, on n'a très peu de variable de zone. On ajoute une petite quantité de mémoire que l'on peut ajuster avec le nombre total d'objet, facile à faire varier.

Maintenant le principe des listes: la variable zones[2][3] indique l'ID de l'objet qui a été le premier ajouté dans cette zone.
Avec cette valeur, on peut facilement aller trouver cet objet.
Une fois que l'on as cet objet, grâce à la donnée obj_suivant, on retrouve le prochain objet. Ainsi de suite, il est donc facile de parcourir tous les éléments dans la zone, du premier au dernier.

Il faut noter certaines petites particularités, l'utilisation de obj_precedant n'est pas essentiel, mais simplifie grandement le retrait d'un objet au milieu de la liste.
On peut aussi ajouter une valeur indiquant le dernier objet de la zone, pour ajouter un nouvel objet plus facilement.
Comme tu le devine sans doute, cette méthode demande un peu plus de travail. Toutefois, rien ne nous empêche de mettre le nombre d'objet que l'on veut dans chaque zone, ce qui est un très gros avantage.

Suggestion d'optimisation niveau mémoire:
Au lieu d'utiliser 2 variables pour les ID des objets, utiliser la moitié de la variable pour chaque valeur. Toutefois, ceci entraine une limite de 65535 objets (non pas 65536 car on a besoin d'une valeur pour indiquer un objet invalide) et ajoute une petite quantité de calcul. Vu la mémoire dont disposent la majorité des ordinateurs d'aujourd'hui, ce n'est pas quelques ko qui feront une différence...

Si certains points demeurent flous, n'hésite pas à demander des précisions.

++Sim++





Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Discussion sur les streamers
« Réponse #11 le: 06 Décembre 2010, 22:11:52 »
Je trouve tes idées pas mal Sim, mais je déconseille fortement l'utilisation du pawn pour ce genre de chose, le C++ est plus adapté pour ça car tu gère parfaitement la mémoire, par exemple ici pour stocker l'id d'un objet tu utilise 4 octets or on sait très bien que l'on ne dépassera pas les 60 000 objets autant les stocké sur 2 octets, etc ... sans parler de l'avantage de rapidité d'exécution de code ^^

++Sasuke78200



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Re : Discussion sur les streamers
« Réponse #12 le: 06 Décembre 2010, 22:39:45 »
Salut,

Je trouve tes idées pas mal Sim, mais je déconseille fortement l'utilisation du pawn pour ce genre de chose, le C++ est plus adapté pour ça car tu gère parfaitement la mémoire, par exemple ici pour stocker l'id d'un objet tu utilise 4 octets or on sait très bien que l'on ne dépassera pas les 60 000 objets autant les stocké sur 2 octets, etc ... sans parler de l'avantage de rapidité d'exécution de code ^^

++Sasuke78200

Je regrette, mais il est possible de dépasser le 65 535 objets, surtout si on commence à mettre des objets dans différents mondes virtuels, seulement pour 1 joueur etc...
enfin, quand on fait des tests c'est très facile à dépasser.

Enfin, le point du topic est plutôt de trouver de bonnes façon de faire. Avec les bonnes méthodes, on pourrait faire un streamer en PAWN plus efficace qu'un streamer en C++. Malgré le fait que le langage soit plus limité.

EDIT:
La dernière partie de mon message ne me parait pas clair après relecture, je vais donc ajouter ceci:
Ce que j'entends par un streamer plus efficace en PAWN qu'en C++, ce n'est pas que le streamer effectue le même calcul plus rapidement, je serais idiot de penser cela, cependant, les interactions avec sa-mp sont plus efficace directement du PAWN, en trouvant de bonnes solutions pour réduire le volume de calcul, je pense que l'on peut faire un streamer en PAWN qui est plus beau en jeu que ceux qui existent, et même que ceux qui existent en C++ (en l'occurrence, xStreamer et streamer).

++Sim++
« Modifié: 07 Décembre 2010, 01:39:51 par Sim »





Hors ligne scott1

  • *
  • Gangster
  • Messages: 1440
    • Voir le profil
Re : Discussion sur les streamers
« Réponse #13 le: 07 Décembre 2010, 02:42:54 »
Bon niveau streamer, je ne serais pas d'une grande utilité, mais bon, juste pour dire, que si on faisait un streamer par rapport a l'angle ce serait la mort, imaginez sur un serveur de stunt, avec un bon gros nombre d'objet, quand on tourne la camera pour voir au alentour, les objet disparaitrons, et boom on se retrouverais la tête a terre ^^
Refait un Game mode a partir d'une page blanche



Mes partages:

Systeme de Radio avec Frequence Création

Ajouter des véhicule dans le LARP - Godfather Tuto

Anti Cheat "JunkBuster" traduit en FR Traduction

LARP Traduit FR, V0.3 Traduction

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Discussion sur les streamers
« Réponse #14 le: 07 Décembre 2010, 03:54:25 »
Salut,

concernant la méthode que j'ai utilisé pour créer les objets dans un endroit, selon moi, plus intéressant, le résultat des modifications devrait être approximativement l'image en pièce jointe.

++Sim++