IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement 2D, 3D et Jeux Discussion :

Disney rend public le code de Jedi Outcast et Jedi Academy


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    mai 2008
    Messages
    26 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : mai 2008
    Messages : 26 002
    Points : 207 921
    Points
    207 921
    Billets dans le blog
    85
    Par défaut Disney rend public le code de Jedi Outcast et Jedi Academy
    Disney rend public le code de Jedi Outcast et Jedi Academy
    Retrouvez le code sur SourceForge sous licence GNU GPLv2

    Disney ayant racheté la licence Star Wars, il était normal que le cas des jeux vidéo basés sur l'univers soit considéré par l'acquéreur. C'est maintenant chose faite avec deux nouvelles. Tout d'abord, le studio de développement LucasArts ferme. Les titres sont toujours en cours d'évaluation donc rien ne dit que StarWars 1313 est annulé.
    Les jeux basés sur la guerre des étoiles ne sont pas nécessairement en voie de disparition : la licence pourra être revendue à différents développeurs externes.

    La seconde nouvelle est plus réjouissante. Les jeux Jedi Outcast (2002) et Jedi Academy (2003) sont maintenant disponibles sur SourceForge.
    Le commentaire accompagnant les projets est le suivant :
    Activision and Raven are releasing this code for people to learn from and play with. This code is copyright Activision 2003. This source is released under GNU GPLv2.
    Que l'on peut traduire par :
    Activision et Raven ont rendu public ce code pour les gens souhaitant apprendre et jouer avec. Le code est sous copyright d'Activision 2003. Ce code source est disponible sous la licence GNU GPLv2.

    Code source de Jedi Outcast.
    Code source de Jedi Academy.


    Votre opinion


    Avez-vous jeté un coup d’œil sur le code ? Qu'en pensez-vous ?
    Avez-vous joué à ces jeux ?


    Source

    http://www.develop-online.net/news/4...oses-LucasArts
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  2. #2
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    décembre 2011
    Messages
    9 014
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : décembre 2011
    Messages : 9 014
    Points : 22 976
    Points
    22 976
    Par défaut
    Bonjour,

    Citation Envoyé par LittleWhite Voir le message
    Avez-vous jeté un coup d’œil sur le code ? Qu'en pensez-vous ?
    J'ai regardé vite fait les sources, à mon étonnement, elles sont assez propre.

    Par contre, je pense qu'ils ne connaissaient pas fread et htonl
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    	byte	b1, b2, b3, b4;
    b1 = fgetc(f);
    b2 = fgetc(f);
    b3 = fgetc(f);
    b4 = fgetc(f);
    return b1 + (b2<<8) + (b3<<16) + (b4<<24);
    J'ai aussi trouvé des fonctions qui me semblent un peu trop longues (200 lignes).

  3. #3
    Membre éclairé
    Ingénieur de recherche
    Inscrit en
    novembre 2008
    Messages
    227
    Détails du profil
    Informations professionnelles :
    Activité : Ingénieur de recherche

    Informations forums :
    Inscription : novembre 2008
    Messages : 227
    Points : 822
    Points
    822
    Par défaut
    Enfin, c'est surtout Raven qui publie le code, justement parce qu'ils n'apprécient pas la décision de Disney de fermer LucasArt. Evitons de donner trop de crédit à Disney ^^

  4. #4
    Membre éclairé
    Inscrit en
    décembre 2010
    Messages
    290
    Détails du profil
    Informations forums :
    Inscription : décembre 2010
    Messages : 290
    Points : 719
    Points
    719
    Par défaut
    J'ai aussi trouvé des fonctions qui me semblent un peu trop longues (200 lignes).
    ça c'est typique du source d'id Software. Beaucoup de fonctions sont interminables dans Quake 1, 2 ou 3. Pour les jeux d'après je ne sais pas.

  5. #5
    Modérateur
    Avatar de Gugelhupf
    Homme Profil pro
    Analyste Programmeur
    Inscrit en
    décembre 2011
    Messages
    1 309
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste Programmeur

    Informations forums :
    Inscription : décembre 2011
    Messages : 1 309
    Points : 3 646
    Points
    3 646
    Billets dans le blog
    12
    Par défaut
    J'ai trouvé que le code était bien indenté et commenté.
    Je crois qu'ils se sont servi de Visual Studio pour développer leur programme mais la source est plus codé en C qu'en C++.
    N'hésitez pas à consulter la FAQ Java, lire les cours et tutoriels Java, et à poser vos questions sur les forums d'entraide Java

    Ma page Developpez | Mon profil Linkedin | Vous souhaitez me contacter ? Contacter Gokan EKINCI

  6. #6
    Expert éminent
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    mai 2010
    Messages
    3 090
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : mai 2010
    Messages : 3 090
    Points : 9 688
    Points
    9 688
    Par défaut
    J'ai regardé que le code de Jedi Academy. , oui le Code est en C , enfin effectivement le code est plutôt correct , je trouve juste que les fichier sont énorme (au moins 4000 lignes chacune).
    J'ai vu quelque utilisation de goto (mais bon sur des petites distances).


    Par contre, je pense qu'ils ne connaissaient pas fread et htonl
    Personnellement je fais comme eux, surtout si on lit d'octet en octet (en faite j'utilise exclusivement fgetc pour dire).
    Exemple montré je le trouve concis et clair tous de même =P

  7. #7
    Modérateur
    Avatar de Gugelhupf
    Homme Profil pro
    Analyste Programmeur
    Inscrit en
    décembre 2011
    Messages
    1 309
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste Programmeur

    Informations forums :
    Inscription : décembre 2011
    Messages : 1 309
    Points : 3 646
    Points
    3 646
    Billets dans le blog
    12
    Par défaut
    Il y a aussi quelques fichiers en Assembleur.
    N'hésitez pas à consulter la FAQ Java, lire les cours et tutoriels Java, et à poser vos questions sur les forums d'entraide Java

    Ma page Developpez | Mon profil Linkedin | Vous souhaitez me contacter ? Contacter Gokan EKINCI

  8. #8
    Expert éminent sénior
    Profil pro
    Inscrit en
    décembre 2007
    Messages
    6 664
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : décembre 2007
    Messages : 6 664
    Points : 30 892
    Points
    30 892
    Par défaut
    C'est Star Wars Rebellion que j'attends plutôt... Mais ça n'est pas Raven, hélas.
    Les 4 règles d'airain du développement informatique sont, d'après Michael C. Kasten :
    1)on ne peut pas établir un chiffrage tant qu'on a pas finalisé la conception
    2)on ne peut pas finaliser la conception tant qu'on a pas complètement compris toutes les exigences
    3)le temps de comprendre toutes les exigences, le projet est terminé
    4)le temps de terminer le projet, les exigences ont changé
    Et le serment de non-allégiance :
    Je promets de n’exclure aucune idée sur la base de sa source mais de donner toute la considération nécessaire aux idées de toutes les écoles ou lignes de pensées afin de trouver celle qui est la mieux adaptée à une situation donnée.

  9. #9
    Inactif  

    Homme Profil pro
    Développeur multimédia
    Inscrit en
    mars 2013
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : mars 2013
    Messages : 162
    Points : 193
    Points
    193
    Par défaut
    Le moteur utilisé pour ces jeux c'est quake 3... donc c'est la même source avec quelques modifications.

  10. #10
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    octobre 2008
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Meuse (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : octobre 2008
    Messages : 33
    Points : 135
    Points
    135
    Par défaut
    Quand j'ai appris pour LucasArts j'ai vraiment été déçu par Disney, c'était un bon studio et ils avaient un paquet de jeux à leur actif, dont deux encore en développement il me semble (Star Wars 1313, et un autre sur l'univers Star Wars je crois). J'espère sincèrement que Star Wars 1313 sera terminé, j'ai regardé une vidéo sur le gameplay et ça avait l'air assez sympa (Bon après, rien que l'univers m'aurait fait acheter le jeu...).
    Concernant la libération du code de Jedi Outcast et Jedi Academy ça ne peut être qu'une bonne chose, avec un peu de chance des développeurs vont jeter sérieusement un oeil aux sources et améliorer/nettoyer le code du jeu.

    [Edit]
    Visiblement les deux jeux ont déjà des forks, une bonne nouvelle donc.

  11. #11
    Expert confirmé
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    avril 2005
    Messages
    2 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : avril 2005
    Messages : 2 430
    Points : 4 860
    Points
    4 860
    Par défaut
    Citation Envoyé par Neckara Voir le message
    J'ai aussi trouvé des fonctions qui me semblent un peu trop longues (200 lignes).
    à partir de combien de lignes faut-il scinder une fonction en 2 ?

    plus sérieusement, en quoi sont-elles trop longues ?
    leur lisibilité ?
    leur temps d’exécution ?
    un appel de fonction a un coût, et quand le temps d'exécution est critique, je préfère une longue méthode que plusieurs appels

    Citation Envoyé par MightyJean Voir le message
    Quand j'ai appris pour LucasArts j'ai vraiment été déçu par Disney, c'était un bon studio
    en même temps, Disney n'a pas sèchement mis tout le monde à la porte
    ils veulent externaliser, une partie des équipes a donc rejoint le pôle licences
    une autre partie des équipes va bosser en interne (Disney Interactive)
    d'après l'article en fin de news

    edit : les liens sourceforge sont "morts"... bizarre
    Tutoriels OpenGL
    Je ne répondrai à aucune question en MP
    - Si c'est simple tu dis que c'est compliqué et tu le fait
    - Si c'est compliqué tu dis que c'est simple et tu le sous-traite ou le fait faire par un stagiaire.

  12. #12
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    décembre 2011
    Messages
    9 014
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : décembre 2011
    Messages : 9 014
    Points : 22 976
    Points
    22 976
    Par défaut
    Citation Envoyé par shenron666 Voir le message
    à partir de combien de lignes faut-il scinder une fonction en 2 ?

    plus sérieusement, en quoi sont-elles trop longues ?
    leur lisibilité ?
    leur temps d’exécution ?
    un appel de fonction a un coût, et quand le temps d'exécution est critique, je préfère une longue méthode que plusieurs appels
    Je n'ai jamais dit qu'elles étaient trop longues mais qu'elle me semblaient trop longues. J'ai lu le code vite fait en diagonal et je ne me suis pas vraiment attaché à lire plus en détail.

    Après, personnellement, mes fonctions font généralement au maximum la "hauteur de l'écran" (je n'ai pas compté le nombre de lignes dernièrement ).
    Si j'ai une fonction plus grande je suis presque sûr qu'il y a un peu de code à factoriser.

    Ceci permet d'augmenter la lisibilité du code, sa maintenabilité et peut même augmenter les performances (en réduisant la taille du code, etc... ).

    Après, le gain de performances se fera en priorité sur l'algorithme.
    Il vaut mieux aussi ne pas faire trop d'optimisations prématurées et n'optimiser qu'une fois qu'on a repéré les zones qui sont réellements critiques grâce à des tests (pour voir aussi si on a réellement besoin de ces optimisations).

    Mais si une fonction doit faire 100 lignes, elle fera 100 lignes. On ne va pas la diviser en plusieurs fonctions au hasard juste pour faire des "petites fonctions".
    Mais bon, 200 lignes ça me paraît quand même beaucoup.

  13. #13
    Inactif  

    Homme Profil pro
    Développeur multimédia
    Inscrit en
    mars 2013
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : mars 2013
    Messages : 162
    Points : 193
    Points
    193
    Par défaut
    C'est tout à fait possible d'avoir une fonction de 200 lignes quand on se trouve dans une routine de calcul cpu-critical qu'il faut optimiser au maximum... pour les algo de rendu ou de collisions par exemple tu peux vite te retrouver avec des fonctions de plusieurs centaines de lignes. J'ai aussi vu des pages constituées d'une seule fonction main() de plusieurs milliers de lignes: la page d'entrée du programme n'était pas structurée en fonctions mais en switch case, c'était plus lisible comme ça. Bref les grosses fonctions y'a des cas où ça sert.

    Sinon méfiance avec les open-source AAA... là en l'occurrence puisque ces deux sources utilisent le moteur de quake3, leur intérêt pédagogique est d'apprendre le moteur de quake3 au cas où vous travaillez dans un studio AAA qui bosse avec le moteur de quake3... mais sinon ça sert pas à grand chose à part pour la culture.

Discussions similaires

  1. [MySQL] Sécurité et publication du code PHP et SQL sur le forum
    Par redoran dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 25/11/2012, 22h26
  2. [MySQL] le exit(); ne rend pas le code valide avec w3c
    Par titirigole dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 02/02/2009, 15h56
  3. Réponses: 2
    Dernier message: 29/10/2008, 13h33
  4. Récupérer le dossier de publication par le code
    Par Stephanie79 dans le forum C#
    Réponses: 8
    Dernier message: 30/09/2008, 18h26
  5. le code d'une clé public
    Par sara.nh dans le forum Développement
    Réponses: 1
    Dernier message: 29/11/2007, 00h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo