Bonjour et merci pour les retours,
Je suis actuellement en train de définir le "game browser" justement. même si ton idée est séduisante elle va demander un gros travail d'équilibrage pour qu'un maître de donjon qui a du temps devant lui ne fasse pas une forteresse imprenable mais en contre partie qu'il ne se fasse pas dézinguer si des héros arrivent trop vite.
Je pense que dans un premier temps, une partie ne pourra se lancer que quand une partie sera "pleine" (4 héros + 1 maître)
Niveau du réseau, la couche réseau est directement intégrée dans le "Core" mais il est vrai qu'au moment de la conceptualisation de ce graphique, la couche réseau n'était pas encore écrite et donc n'apparait pas dessus.
Mon moteur s'initialise et s'utilise très facilement (possible distribution par la suite ??), par exemple :
INITIALISATION DU MOTEUR :
EYEngine = New EYEngine.CCore(Me.PictureBox1.Handle, Global.EYEngine.CSettings.Enum_LvlOfDetail.Low, MediaPath, True)
INITIALISATION DU RESEAU :
EYEngine.ConnectNetwork(Global.EYEngine.CSettings.E_TypeOfConnection.Local, "", "", Me, Nothing)
Le E_TypeOfConnection possède 3 valeurs :
- Local
- Client
- Server
Et la méthode d'initialisation ne change pas...
Ajouter un objet dans le moteur se fait comme ceci :
1 2
| NewInstance = New AREA.Instances3D(C3DObjets.EnumObjets3D.Static3DObject, MeshName, FileName, Coord3D, Rot, Scale, 0, 0, 0, 999)
EYEngine.ClsSpooler.Add(New CSpooler(NewInstance, CSpooler.EnumTypeOfActions.Add)) |
J'ai évidement une liste d'actions disponibles dans mon spooler :
Add
Delete
UpdatePosition
UpdateRotation
UpdateScale
UpdateAll
ShowBoundingBox
HideBoundingBox
Les méthodes sont elle aussi très simplifiées et j'ai développé une liste de fonctions assez conséquente. Tout ca pour dire que j'essaie vraiment d'optimiser et de construire un moteur de JEU complet et solide afin de me permettre de gagner en rapidité par la suite.
A+
Nico
Partager