Crunchez vos adresses URL
|
Rejoignez notre discord
|
Hébergez vos photos
Affichage des résultats 1 à 17 sur 17
  1. #1
    Bonsoir les canards,

    J'apprends à coder depuis quelques mois, principalement en python. Je commence à bien me débrouiller, j'ai déjà recodé quelques petits jeux pour le fun.

    J'ai commencé un projet un peu plus ambitieux. J'ai envie de tout coder par moi même, sans utiliser de moteur à la unity. Le. but étant de me former en plus de sortir mon petit jeu.
    Cependant, une fonctionnalité de ces moteurs me fait baver : la possibilité d'exporter le jeu en natif sur Android, ios, Windows...

    Y a-t-il des plates-formes ou des bibliothèques qui permettent d'arriver à un tel résultat en codant tout par soi même ? Que ce soit en python, c, Java...

    Merci beaucoup !

  2. #2
    Non, si tu veux tout coder par toi même il faudra tout coder par toi même
    Sinon, un peu HS, mais si tu es débutant je sais que c'est tentant de tout coder soi-même, mais tu devrais vraiment songer à utiliser un moteur ou framework existant. Les avantages sont immenses.

  3. #3
    Citation Envoyé par Noospray Voir le message
    J'apprends à coder depuis quelques mois, principalement en python.


    Tu peux aussi demander ici : http://forum.canardpc.com/threads/56...r-et-compagnie

  4. #4
    Citation Envoyé par schouffy Voir le message
    Non, si tu veux tout coder par toi même il faudra tout coder par toi même
    Sinon, un peu HS, mais si tu es débutant je sais que c'est tentant de tout coder soi-même, mais tu devrais vraiment songer à utiliser un moteur ou framework existant. Les avantages sont immenses.
    En fait c'est surtout pour me former que je me lance là dedans, je ne sais que les proba sont élevées que je ne le finisse jamais... Je suis pas fermé aux framework, je souhaite juste coder un petit moteur moi même.

    Citation Envoyé par Frypolar Voir le message
    Pourquoi ces pleurs ? Que conseillerai tu ?
    Objectivement, Python c'est super facile. J'avais déjà tenté plusieurs fois d'apprendre à coder avec le c ou le java et j'ai toujours décroché. Après c'est sûr que je vais en apprendre un autre d'ici peu.
    Je vais poster aussi là bas ;-)

  5. #5
    Tu te lances dans un projet assez conséquent et qui demande plusieurs années à des développeurs chevronnées ! Demande a OldSnake pour voir (le dev de Dangerous Rays qui est sur le fofo).

    La raison des pleurs, c'est probablement parce que python n'est pas vraiment le langage à choisir (après théoriquement on peut tout faire avec tout) pour développer ce genre de soft.
    Pourquoi (Arrêtez moi si je dis une connerie) ? Parce que python est un langage "haut niveau", c'est a dire qu'il se rapproche le plus possible du langage parlé par nous les humains. Plus on descend dans les langages "bas niveau" plus on se rapproche du langage machine (L'assembleur par exemple est très bas niveau).
    L'avantage de travailler avec ces langages bas niveau c'est d'avoir plus de contrôle sur ce que l'on fait, notamment au niveau de la mémoire pour optimiser son programme (très important dans un moteur graphique), avec des éléments comme les pointeurs dont tu as peut être entendu parlé en C/C++ qui permettent de travailler directement avec les adresses mémoire.

    Tout ça pour dire que ça ne s'invente pas, le python c'est bien mais ce n'est qu'un langage parmi tant d'autres et qui figure parmi les plus "simplifiés". Attention, je ne cherche pas à rabaisser le python ni ce que tu sais faire hein, mais avant de coder ton moteur graphique, apprend a utiliser d'autres langages et des bibliothèques graphiques sur des langage comme le C/C++ avec OpenGL ou SDL. Ca te permettra de passer au niveau supérieur de la programmation et de la 3D/2D mais sans te lancer un défi "impossible". Ensuite, une fois que tu auras dompté ces outils, tu auras déjà une bonne idée de ce qui est nécessaire pour faire une bibliothèque graphique.

    Prends ton temps et ne te lance pas tout de suite dans un projet qui risque de te dégoutter de la programmation

    PS: Après si tout ce que tu veux c'est faire tourner tes jeux sur le plus de plateforme possible, regarde du coté de JAVA ou des techno Microsoft qui mise pas mal sur ça aujourd'hui.
    Dernière modification par Hideo ; 21/10/2015 à 14h50.

  6. #6
    C’est pas vraiment une question de langage bas niveau. Le python laisse beaucoup de libertés, trop pour un débutant non-encadré. C’est le meilleur moyen de sortir du code dégueulasse et de prendre de mauvaises habitudes. De plus il n’est pas adapté aux gros projets (oui on trouve des gros trucs faits en Python, ça ne veut pas dire que c’était un choix judicieux) et ce n’est pas vraiment le plus performant. Vu qu’un jeu vidéo c’est pas un truc qui se fait avec 3 classes et demie et que les performances sont relativement importantes ce n’est pas le choix idéal.

    Si tu veux faire un jeu vraiment de A à Z tu es, je pense, obligé de passer par la case C++ comme dit dans le topic de la programmation. Après si tu fais quelque chose de vraiment peu gourmand tu dois pouvoir te permettre d’utiliser un autre langage et de passer par des intermédiaires pour causer avec le hardware. Ceci dit il vaut peut-être mieux commencer plus raisonnablement en utilisant un moteur sympa pour se faire la main et ne pas se démotiver face à une tâche trop importante. Unity ne me parait pas être un mauvais choix, le C# me semble moins violent que le C++ en première approche et il y a certaines passerelles entre les deux langages. Tant que tu restes dans l’environnement .NET tu as aussi des possibilités d’export vers diverses plate-formes mais je ne sais pas si ça correspond bien au domaine jv.

  7. #7
    Citation Envoyé par Hideo Voir le message
    Tu te lances dans un projet assez conséquent et qui demande plusieurs années à des développeurs chevronnées ! Demande a OldSnake pour voir (le dev de Dangerous Rays qui est sur le fofo).
    Houlà non, je me suis mal fait comprendre ! Je ne vise pas quelque chose de l'envergure de Dangerous Rays. Plutôt des choses genre Ludum Dare 48h. Ou superroger qui poste dans cette section. Des "petits" jeux pour me faire la main, développer mes connaissances, apprendre des patterns...

    Citation Envoyé par Hideo Voir le message
    La raison des pleurs, c'est probablement parce que python n'est pas vraiment le langage à choisir (après théoriquement on peut tout faire avec tout) pour développer ce genre de soft.
    Pourquoi (Arrêtez moi si je dis une connerie) ? Parce que python est un langage "haut niveau", c'est a dire qu'il se rapproche le plus possible du langage parlé par nous les humains. Plus on descend dans les langages "bas niveau" plus on se rapproche du langage machine (L'assembleur par exemple est très bas niveau).
    L'avantage de travailler avec ces langages bas niveau c'est d'avoir plus de contrôle sur ce que l'on fait, notamment au niveau de la mémoire pour optimiser son programme (très important dans un moteur graphique), avec des éléments comme les pointeurs dont tu as peut être entendu parlé en C/C++ qui permettent de travailler directement avec les adresses mémoire.

    Tout ça pour dire que ça ne s'invente pas, le python c'est bien mais ce n'est qu'un langage parmi tant d'autres et qui figure parmi les plus "simplifiés". Attention, je ne cherche pas à rabaisser le python ni ce que tu sais faire hein, mais avant de coder ton moteur graphique, apprend a utiliser d'autres langages et des bibliothèques graphiques sur des langage comme le C/C++ avec OpenGL ou SDL. Ca te permettra de passer au niveau supérieur de la programmation et de la 3D/2D mais sans te lancer un défi "impossible". Ensuite, une fois que tu auras dompté ces outils, tu auras déjà une bonne idée de ce qui est nécessaire pour faire une bibliothèque graphique.

    Prends ton temps et ne te lance pas tout de suite dans un projet qui risque de te dégoutter de la programmation

    PS: Après si tout ce que tu veux c'est faire tourner tes jeux sur le plus de plateforme possible, regarde du coté de JAVA ou des techno Microsoft qui mise pas mal sur ça aujourd'hui.
    Je suis tout à fait d'accord avec toi. Mon but n'est pas (pour l'instant du moins) d'avoir des projets très aboutis, je ne compte même pas les diffuser "officiellement". Je suis juste dans une démarche d'apprentissage. Avec pour finalité ultime de pouvoir participer à des ludum dare ou "Make something ducky"
    Pour l'instant je joue avec Python et Pygame (SDL), mais je ne suis pas du tout fermé à me lancer dans un autre langage maintenant que j'ai le pied à l'étrier, bien au contraire.

    Citation Envoyé par Frypolar Voir le message
    C’est pas vraiment une question de langage bas niveau. Le python laisse beaucoup de libertés, trop pour un débutant non-encadré. C’est le meilleur moyen de sortir du code dégueulasse et de prendre de mauvaises habitudes. De plus il n’est pas adapté aux gros projets (oui on trouve des gros trucs faits en Python, ça ne veut pas dire que c’était un choix judicieux) et ce n’est pas vraiment le plus performant. Vu qu’un jeu vidéo c’est pas un truc qui se fait avec 3 classes et demie et que les performances sont relativement importantes ce n’est pas le choix idéal.

    Si tu veux faire un jeu vraiment de A à Z tu es, je pense, obligé de passer par la case C++ comme dit dans le topic de la programmation. Après si tu fais quelque chose de vraiment peu gourmand tu dois pouvoir te permettre d’utiliser un autre langage et de passer par des intermédiaires pour causer avec le hardware. Ceci dit il vaut peut-être mieux commencer plus raisonnablement en utilisant un moteur sympa pour se faire la main et ne pas se démotiver face à une tâche trop importante. Unity ne me parait pas être un mauvais choix, le C# me semble moins violent que le C++ en première approche et il y a certaines passerelles entre les deux langages. Tant que tu restes dans l’environnement .NET tu as aussi des possibilités d’export vers diverses plate-formes mais je ne sais pas si ça correspond bien au domaine jv.
    Je prend de plus en plus conscience que je vais devoir quitter Python pour avancer dans ce projet. Par contre Unity et consort ça ne m'attire pas vraiment. Je n'ai pas envie d'apprendre à me servir d'un outil aussi élaboré, juste de pouvoir faire mon petit jeu. Par contre le coté "code une fois, joue partout" m'attire terriblement.

    Justement, j'ai regardé les stats dispo sur le ludum dare (me demandez pas pourquoi, c'est un peu ma référence ; certainement parce que c'est la qualité que je pense pouvoir viser à court terme) ICI et LA. On voit effectivement que les moteurs de jeu sont bien placés (Unity for the win ?), de même que javascript et flash pour leur côté universel j'imagine.
    Mais dans le top 10 des lib utilisées, on trouve des choses comme libGDX ou MonoGame.
    Ca semble correspondre à ce que je recherche (pas un moteur tout fait mais un framework, et cross-plateforme). Vous en pensez quoi ?

  8. #8
    Unity c'est pas du .net sinon le c# c'est du bon mangez-en!

  9. #9

  10. #10
    Pour un petit jeu tu n'as de loin pas besoin d'apprendre à utiliser tout Unity. J'ai déjà eu le cas de 2 gamejam ou des gens sans aucune expérience d'Unity ont pu directement bosser sur le projet. Finalement tu fais assez peu de chose dans le soft en lui même et beaucoup passe par le code.

  11. #11
    Merci !
    J'avoue que je suis un peu perdu là ; je ne sais plus vers quoi me diriger...
    Je vais penser à tout ça.

  12. #12
    Il y a vraiment peu de désavantages à utiliser un moteur de jeu. La taille du binaire exporté est le principal.
    Sinon tu feras plus de choses, mieux et plus rapidement, ce sera plus gratifiant et tu auras plus envie de continuer que si coder un truc minuscule te prend des semaines.

  13. #13
    Citation Envoyé par Noospray Voir le message
    Bonsoir les canards,

    J'apprends à coder depuis quelques mois, principalement en python. Je commence à bien me débrouiller, j'ai déjà recodé quelques petits jeux pour le fun.

    J'ai commencé un projet un peu plus ambitieux. J'ai envie de tout coder par moi même, sans utiliser de moteur à la unity. Le. but étant de me former en plus de sortir mon petit jeu.
    Cependant, une fonctionnalité de ces moteurs me fait baver : la possibilité d'exporter le jeu en natif sur Android, ios, Windows...

    Y a-t-il des plates-formes ou des bibliothèques qui permettent d'arriver à un tel résultat en codant tout par soi même ? Que ce soit en python, c, Java...

    Merci beaucoup !
    Ogre GL est très sympa avec python.

  14. #14
    Merci beaucoup, je ne connaissais pas !
    Je vais étudier ça :-)

    J'ai posé cette question sur reddit également et on m'y a fortement conseillé c#, comme ici !

  15. #15
    Citation Envoyé par Noospray Voir le message
    Merci beaucoup, je ne connaissais pas !
    Je vais étudier ça :-)

    J'ai posé cette question sur reddit également et on m'y a fortement conseillé c#, comme ici !
    C# en général pour du multiplateforme, bof.

    Mais c# via Unity, oui, cent fois oui.

  16. #16
    Citation Envoyé par Noospray Voir le message
    J'ai commencé un projet un peu plus ambitieux. J'ai envie de tout coder par moi même, sans utiliser de moteur à la unity. Le. but étant de me former en plus de sortir mon petit jeu.
    Cependant, une fonctionnalité de ces moteurs me fait baver : la possibilité d'exporter le jeu en natif sur Android, ios, Windows...

    Y a-t-il des plates-formes ou des bibliothèques qui permettent d'arriver à un tel résultat en codant tout par soi même ? Que ce soit en python, c, Java...
    Si tu ne veux pas utiliser d'outils comme Unity, il y a des bibliothèques qui permettent de faire du multiplateforme. On parle plutôt de framework, vu que ce sont généralement des regroupement de bibliothèques.

    LibGDX (Java) : Windows, Linux, Mac, Android et IOS. C'est le framework que j'utilise personnellement, essentiellement parce que j'aime bien le Java. C'est très complet et il y a une solide documentation. Il y a pas mal de jeu Android qui ont été fait avec ça, comme Uniwar.

    MonoGame (C#) : Je connais moins, ça vise surtout les plateformes Microsoft, mais il y a visiblement moyen de porter sur un peu toutes les autres plateformes. C'est basé sur feu XNA, un très bon framework d'où pas mal de jeux indés comme Fez ou Bastion.

    Par contre, si tu ne connais pas ces langages, ça peut être compliqué d'apprendre à utiliser un framework tout en débutant sur le langage.
    -- Voltrek --

  17. #17
    Merci pour le feedback ! J'avoue que j'hésite pas mal encore... Du coup je continue en python en attendant de me me décider :-)

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •