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

Projets Discussion :

Mon devblog, mon wiki, mes sites webs, etc.


Sujet :

Projets

  1. #41
    Invité
    Invité(e)
    Par défaut
    Bon, je viens de tester et les fbo se remettent bien à jour avant que je récupère les pixels avec mon shader.

    J'en ai profité pour supprimer les appels inutile à display ce qui augmente un peu le FPS.

    Mais j'ai vraiment besoin de chercher après un driver plus récent qui marche sur ma plateforme, car les drawcalls reste très coûteux et j'aimerai réduire le nombre de drawcall avec l'instanced rendering.

    D'ailleurs j'ai déjà commencé à écrire du code pour opengl 3.3 dans le moteur mais je n'ai pas encore trouvé de driver qui affichait bien tout ça. :/

  2. #42
    Membre éprouvé Avatar de maeiky
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2013
    Messages
    201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 201
    Points : 976
    Points
    976
    Par défaut
    Bon, je viens de tester et les fbo se remettent bien à jour avant que je récupère les pixels avec mon shader.
    ...
    Mais j'ai vraiment besoin de chercher après un driver plus récent qui marche sur ma plateforme, car les drawcalls reste très coûteux et j'aimerai réduire le nombre de drawcall avec l'instanced rendering.
    Fait attention, comme j'ai dis entre chaque draw call, le GPU dessine les pixels dans l'ordre qu'il veut, ton algo de transparence récupère le pixel déjà dessiné, le résultat ne sera pas le même si l'ordre de rendu est différent. Si tout tes éléments sont séparer par des draw call ça peut fonctionner, mais si tu tente de faire de l'instancing, la transparence ne marchera plus car entre les éléments rendu simultanément, si plusieurs se superpose, l'ordre va être totalement aléatoire. Tes images vont donc scintillé par zone plus ou moins grande selon ta carte graphique. Je te dis ça, parce que j'ai fais la même erreur et j'ai perdu beaucoup de temps avant d'en comprendre la raison.
    Linx, un nouveau langage intuitif
    Simacode IDE, auto-complétion & compilation instantané
    GZE, moteur 2d/3d multi-langage/multi-plateforme

  3. #43
    Invité
    Invité(e)
    Par défaut
    Re, j'ai essayé avec l'instanced en effectuant les transformations côté CPU dans le sprite batcher et dessiner tout d'un coup, je dois dire que ça n'augmente pas les perfs, je reste toujours entre 15-20 FPS, vu que les FBO font déjà du traitement en parallèle comme tu dis.

    Ce sont en effet, les draw calls qui détermine quand le shader doit être appliqué donc comme tu le dis si je fais de l'instanced rendering ça ne fonctionnera plus car il va dessiné tout le terrain d'un coup sans tenir compte du test sur la semi transparence pour toutes les tiles du terrain. (car je dois faire le test pour chaque instance du terrain et non sur tout le terrain uniquement)

    Et puis bon faire de l'instanced rendering avec une FBO n'augmente pas les perfs (du moins, pas avec les tests que j'ai fais), c'est plutôt, les drawcalls sur la fenêtre qui bouffent pas mal. :/

  4. #44
    Invité
    Invité(e)
    Par défaut Nouvel article : le shadow mapping.
    Nouvel article : les shadow mapping!

    http://lolilolightdevblog.wordpress....que-partie-iv/

  5. #45
    Membre expert

    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Février 2006
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2006
    Messages : 1 031
    Points : 3 092
    Points
    3 092
    Par défaut
    Une relecture s'impose, ça arrache les yeux !
    Suivez le développement de Chibis Bomba
    twitter : https://twitter.com/MoD_DiB
    DevBlog : http://moddib.blogspot.fr/

  6. #46
    Invité
    Invité(e)
    Par défaut
    J'ai ajouté un correctif pour tenir compte de l'ordre dans lequel je dessine les entités. (Pour que les ombres ne viennent pas se dessiner au dessus des objets si on les dessines après)

    Je réfléchis déjà sur comment positionner la vue ainsi que les entités pour générer des ombres en 3D, mais ce n'est pas pour cette version.
    Le plus simple serait de mettre la vue à la hauteur de la lumière et la faire regarder vers le bas, (ou bien vers le vecteur directeur de la lumière si c'est une lumière directionnelle hum...) et en mettant comme zfar le rayon de la lumière, mais je ne ferai pas cela dans cette version qui se limite à la 2D.

    J'ai pu cependant afficher des particules dans un univers 3D en faisant tourner la système de particule avec l'angle de rotation teta de la caméra, j'ai essayé de faire un billboard mais ça n'a pas marché. :/ (Ca ne s'orientait pas bien)

    Pour les lumières en 3D je pense que je vais simplement dessiner une sphere, sur la texture de rendu, et atténuer la lumière en fonction de la distance entre le centre de la sphere de lumière et le fragment de l'objet.

    Comme le driver opensource ne supporte pas encore bien l'opengl moderne, je pense que je vais simplement dessiner une sphere pour effectuer la passe seulement là ou c'est nécessaire d'effectuer un calcul pour l'atténuation, ainsi que de la composante spéculaire et tout ça.
    Ca remplacera la derefered shading.

  7. #47
    Invité
    Invité(e)
    Par défaut
    J'ai terminé le système de particule! (Pour la 2D et pour la 3D)

    Il reste juste une petite optimisation à faire pour ne pas afficher les particules qui ne sont pas dans la vue.

    En 3D les particules sont affichée à l'aide d'un arbitrary axis oriented billboard.

    Je ferai un article là dessus! (Car je me rend compte que j'ai oublier de parler des particules pour le module physique)

    Je pense que je vais me servir du billboard pour calculer la matrice de projection des ombres et pour ainsi orienté les entités vers la lumière en 3D lors de la génération de la shadow map, j'ai essayé de placer la vue à la position de la lumière et puis d'appliquer le shader mais ça ne donne pas de bon résultats. (Pas pour la 2D en tout cas)

    Mais bon je ne voudrais pas tester l'éclairage et l'ombrage maintenant pour la 3D, ça va me prendre du temps et ça semble assez compliqué. :/

  8. #48
    Invité
    Invité(e)
    Par défaut Amélioration du shader du rendu des ombres.
    J'ai amélioré les shader pour le rendu des ombres, en effet, celles-ci ne s'affichaient pas toujours très bien. :/

  9. #49
    Invité
    Invité(e)
    Par défaut Nouveau post : ne pas se faire piégé par de faux arguments.

  10. #50
    Membre éclairé

    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 393
    Points : 685
    Points
    685
    Par défaut
    J'hésitais à répondre, tu vas encore te faire passer pour un calimero que personne n'aime...

    HS : corrige la présentation de ton article, on voit mal les questions

    Le jeux est capable d’afficher n millions d’entités de manière performante sans utiliser de pointeurs.

    C’est archi faux! Pour pouvoir allouer de la mémoire et la libérer au cours de l’exécution d’un programme, il faut passer par des pointeurs, surtout à partir du moment ou il y a de l’héritage.

    Ne pas utiliser de pointeurs provoquerait des erreurs de slicing, le seul moyen d’éviter cela est de faire une référence sur une variable globale, mais comme les variables globales sont détruite à la fin de l’application, toutes la RAM sera consommée.

    Donc il n’y a pas d’autres solutions que d’allouer et de désallouer la mémoire sur le tas, à l’exécution.

    De plus dire qu’une variable qui ne garantis pas l’unicité est un singleton est une erreur.De plus il y a pas mal d’autres techniques qui permette de faire de meilleurs rendu en affichant beaucoup de choses de manière performante, un exemple sont les démos-scene.Je doute fort que un jeux arrive à afficher n millions d’entités sans utiliser de telle techniques
    Je crois que l'argument avancé est "million de triangles", pas "million d'entités" (la mesure du nombre de triangle n'est pas forcement pertinent, alors celle des entités est encore pire)

    - pointeur = permet localité du cache = perte de performances
    - allouer et libérer de la mémoire = perte de performances
    - héritage = perte de performances

    Il existe pleins de techniques pour éviter cela, ce n'est pas parce que tu ne les connais pas que les "vendeurs" mentent (ils mentent bien sûr... mais dans le monde moderne, on appelle cela du marketing )

    Ne pas utiliser les exceptions augmente les performances et facilite le déboguage et le profiling.

    Faux! C’est tout le contraire, les exceptions sont faîtes pour déboguer (ça évite les crash lorsque par exemple une resource n’est pas correctement chargée ou allouée) et ne dégradent pas les performance.Plutôt que de devoir chercher partout ou le programme plante, on sait que c’est à l’endroit à l’exception a été levée.
    Les exceptions induisent un surcoût à l'exécution (au moins lorsqu'une exception est levée). La question pertinente serait plutôt quel surcoût par rapport aux autres méthodes de gestion des erreur.

    Et surtout, comme leur nom l'indique, les exceptions doivent rester exceptionnelles. Ce qui veut dire que dans un programme, une grande partie des "erreurs" ne doivent pas être gérée par des exceptions. Et un programme qui n'utilise pas les exceptions ne devrait pas être plus difficile à débuger ou profiler qu'un programme qui les utilisent (c'est juste plus long et dur d'écrire un programme de cette façon, mais ce n'est pas un limitation technique, plus un contrainte liée à l'économie)

    Les sockets non bloquant ne fonctionnent pas sur console car, les consoles déconseilles d’utiliser les sockets locaux.

    Faux!Les socket bloquant et les sockets locaux ne sont pas la même chose!Si vous avez affaire à ce genre de trolls, ignorer les, le mieux qu’ils savent faire c’est de spamer le bouton désaccord de vos réponses sur des sites comme développez.com par exemple, et ils se tairont tout seul.
    Aucune idée, je connais pas les consoles. Si tu le dis, je vais te croire sur parole.

    Par contre, je remarque que tu ne donnes aucun argument technique pour appuyer tes propos. C'est facile de critiquer les autres en les appelant "troll", mais il faudrait commencer par ne pas troller toi même (par exemple, en restant un peu humble, plus rigoureux, plus factuel, apporter des arguments un peu plus convainquant que des "Faux!")

    J'ai l'impression que c'est un "article" en réponse à des discussions que tu as eu sur le forum de Developpez et qui ne t'ont pas plu. Si c'est le cas, ça ne serait pas un peu "petit" d'écrire ta réponse sur ton blog, plutôt que de répondre directement (et correctement, avec de vrais arguments) aux personnes qui ne sont pas d'accord avec toi ?

  11. #51
    Invité
    Invité(e)
    Par défaut
    Bon, pas la peine de vous répondre davantage, je vous ai déjà répondu.

    Cet article à pour but de ne pas se faire avoir par le marketing, et toutes ses personnes incompétentes qui affirme des choses qui ne sont pas vraie.

    Et bien évidement que ça ne m'a pas plut. (Et je ne suis pas le seul d'ailleurs à qui ça n'a pas plus)

    Bref pas la peine de continuer ce fil de discussion, on ne semble ne pas du tout être d'accord.

  12. #52
    Membre éclairé

    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 393
    Points : 685
    Points
    685
    Par défaut
    Pas d'accord sur quoi ?

    Sur le fait que le travail des entreprises est de nous vendre des choses et qu'elles n'hésitent pas à en rajouter quand elles présentent leurs produits ? Bien sûr que je suis d'accord.

    Sur le fait qu'il est important d'avoir des sources d'information indépendantes, qui vérifient les arguments marketing et rendent accessible ces informations au plus grand nombre ? Bien sûr que je suis d'accord (d'ailleurs, je conseille la chaîne YouTube UnDropDansLaMare, je suis fan).

    Sur le fait que ce soit une bonne chose d'écrire des articles sur son site et présenter ses projet ? Comme je l'ai déjà dit, je trouve que c'est une bonne chose, c'est très formateur d'avoir des retours d'autres développeurs et le travail nécessaire pour écrire un article permet d'organiser les idées dans sa tête.

    Bref, ton objectif est louable. Pas contre, ce qui pèche chez toi, c'est la réalisation.
    Je crois que le problème de base est que tu manques d'humilité. Tu ne présentes pas tes articles sous la forme "voilà ce que je pense ou fait pour mon projet, qu'est-ce que vous en pensez", mais "voilà ce qu'il faut faire". Tu vois les choses que tu sais faire (et je dénigre pas ce que tu sais faire), mais tu ne vois pas qu'il y a encore pleins de choses que tu ne connais pas.

    La majorité des personnes sur le forum sont ici parce qu'elles aiment apprendre de nouvelles choses, soient en lisant des articles, soient dans les discussions techniques. Elles ne sont pas là pour toi, pour te descendre. Mais si tu ne sais pas présenter les choses et apporter des arguments pertinents (voire pire, si tu utilises des arguments faux), les gens ne vont pas se priver de te le dire.

  13. #53
    Invité
    Invité(e)
    Par défaut
    La majorité des personnes sur le forum sont ici parce qu'elles aiment apprendre de nouvelles choses, soient en lisant des articles, soient dans les discussions techniques. Elles ne sont pas là pour toi, pour te descendre. Mais si tu ne sais pas présenter les choses et apporter des arguments pertinents (voire pire, si tu utilises des arguments faux), les gens ne vont pas se priver de te le dire.
    Bon tout ce que tu dis confirme ce que je pensais, tu dois sûrement être dans le marketing.

    Car la majorité des gens que j'ai rencontré ici ou ailleurs, n'étaient pas là pour apprendre, et savaient encore moins comment programmer, tu comprends donc bien que je ne peux pas croire ce genre d'arguments.

    Pas la peine de mettre de + à tes propres messages, cela ne te rendra pas plus crédible, surtout quand je lis ceci :

    Je crois que l'argument avancé est "million de triangles", pas "million d'entités" (la mesure du nombre de triangle n'est pas forcement pertinent, alors celle des entités est encore pire)

    - pointeur = permet localité du cache = perte de performances
    - allouer et libérer de la mémoire = perte de performances
    - héritage = perte de performances

    Il existe pleins de techniques pour éviter cela, ce n'est pas parce que tu ne les connais pas que les "vendeurs" mentent (ils mentent bien sûr... mais dans le monde moderne, on appelle cela du marketing )
    Le temps ou l'on privilégie la performance par rapport à l'orienté objet est révolu, de plus, la différence de performance est trop minimaliste pour pouvoir être prise en considération, si tu as des problèmes de performances tu dois sûrement avoir un problème avec ton code. :/

    Bref, je ne vais pas m'avancer plus longtemps, le genre d'argument ressorti est toujours le même. :/
    J'ai l'impression d'avoir affaire à une série de personnes qui ne veulent pas évoluer et qui en plus crashent sur le dos des autres. (en disant du bien sur toi ou encore que tu as raison ailleurs que sur le forum)
    Ce qui m'est arrivé un nombre incalculable de fois sur les forum et dans la vie réelle, et ce qui bien sûr, ne me plaît pas.

    Donc je pense que je ne vais plus perte mon temps à te répondre, sur ce, A+!

  14. #54
    Membre émérite Avatar de Cirrus Minor
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2014
    Messages
    953
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2014
    Messages : 953
    Points : 2 612
    Points
    2 612
    Par défaut
    Citation Envoyé par Lolilolight Voir le message
    Car la majorité des gens que j'ai rencontré ici ou ailleurs, n'étaient pas là pour apprendre, et savaient encore moins comment programmer, tu comprends donc bien que je ne peux pas croire ce genre d'arguments.

    Comment peux-tu écrire cela ?
    C'est, entre autre, un forum d'entraide, ici. Une majorité des inscrits sont là pour poser des questions à des développeurs plus compétents, donc apprendre et évoluer, d'autres sont là pour la veille technologique, débattre, etc...

    Citation Envoyé par Lolilolight Voir le message
    J'ai l'impression d'avoir affaire à une série de personnes qui ne veulent pas évoluer et qui en plus crashent sur le dos des autres (...) Ce qui m'est arrivé un nombre incalculable de fois sur les forum et dans la vie réelle, et ce qui bien sûr, ne me plaît pas.
    Le fait que ça t'arrive tout le temps, à toi, sur les forums ou dans la vie, ne devrait-il pas t'inviter à te poser des questions ?
    C'est forcément la faute des autres et pas la tienne ?

  15. #55
    Membre émérite
    Avatar de skeud
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Points : 2 724
    Points
    2 724
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Lolilolight Voir le message
    Bon tout ce que tu dis confirme ce que je pensais, tu dois sûrement être dans le marketing.

    Car la majorité des gens que j'ai rencontré ici ou ailleurs, n'étaient pas là pour apprendre, et savaient encore moins comment programmer, tu comprends donc bien que je ne peux pas croire ce genre d'arguments.
    Je veux pas paraitre méchant, loin de moi cette idée, mais pourquoi en conclure qu'il est dans le marketing?
    "Savaient encore moins comment programmer": Tu considère donc que tu sais mieux programmer que la plupart des professionnels de ce forum? C'est un peu présomptueux non?

    "croire en ce genre d'argument": on ne croit pas aux arguments, on les accepte ou non. Quand on est pas d'accord on explique pourquoi en apportant des contrargument basé sur des documents réel, pas des avis personnels etc ....

    J'ai remarqué qu'en ce moment tu postes beaucoup de message peu sympatique, contrairement à avant. Peut-être est-ce une mauvaise période pour toi, mais de là à dénigrer les membres du forum, c'est un peu vache quand même.

    Sur ton blog tu critiques ouvertement developpez.net, je peux comprendre que certaine réponses ne t'ont pas plu, de la même manière que certaine réponse ne me plaisent pas. Mais il faut savoir les accepté. Tout le monde ne peut pas être d'accord.

    Dernier point, tu parles de marketing, la plupart des article publiés sur du technique comme les pointeurs, et autres du genre ne sont pas écris par le marketing, mais par des personnes travaillant dans l'informatique, reconnu par beaucoup de professionnels. Si les discours qu'ils avaient n'était pas "vrai" comme tu sembles le penser, je pense que bon nombre de professionnels les aurait critiqué et aurait démenti leur propos, ce qui n'est pas le cas.

    Par contre je t'encourage vivement à donner ton avis et en discuter avec les autres membres, en acceptant la différence et les arguments des autres, c'est le meilleur moyen de gagner en compétence et de comprendre ses défauts .
    Pas de solution, pas de probleme

    Une réponse utile (ou +1) ->
    Une réponse inutile ou pas d'accord -> et expliquer pourquoi
    Une réponse à votre question


  16. #56
    Membre éclairé

    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 393
    Points : 685
    Points
    685
    Par défaut
    Citation Envoyé par Lolilolight Voir le message
    Bon tout ce que tu dis confirme ce que je pensais, tu dois sûrement être dans le marketing.
    Je dis dans mon précédent message que le marketing, c'est du mensonge, mais tu penses quand même que je bosse dans le marketing ?

    Désolé, je suis un simple développeur

    Citation Envoyé par Lolilolight Voir le message
    Pas la peine de mettre de + à tes propres messages
    Tu sais que ce n'est pas possible de voter pour ses propres messages ?

    Citation Envoyé par Lolilolight Voir le message
    Le temps ou l'on privilégie la performance par rapport à l'orienté objet est révolu
    Tu as presque compris le message. C'est un début. Mais en fait, l’idée qu'il fallait comprendre est que l'on ne doit pas privilégier un gain faible de performances, au détriment de la qualité logiciel (maintenabilité et évolutivité du code).
    Mais la programmation objet n'est qu'un outil qui peut intervenir pour améliorer la qualité logiciel. Ce n'est pas le seul moyen, la POO sans conception derrière ne vaut pas grand chose et ce n'est pas le seul paradigme supportée par le C++. Et faire de la POO ne veut pas forcement dire faire des hiérarchies complexes d'objets, utiliser les allocations dynamiques dans tous les sens et ne pas prendre en compte les problématiques de mémoire cache (recherche "data driven development" ou "entity component system" par exemple)

    Citation Envoyé par Lolilolight Voir le message
    J'ai l'impression d'avoir affaire à une série de personnes qui ne veulent pas évoluer et qui en plus crashent sur le dos des autres. (en disant du bien sur toi ou encore que tu as raison ailleurs que sur le forum)
    Ce qui m'est arrivé un nombre incalculable de fois sur les forum et dans la vie réelle, et ce qui bien sûr, ne me plaît pas.
    Quand je parlais de manque d’humilité...

  17. #57
    Invité
    Invité(e)
    Par défaut
    Tu sais que ce n'est pas possible de voter pour ses propres messages ?
    A moins que tu demandes à tes amis de le faire et qui eux te suivent bêtement ou bien tu as plusieurs comptes, bref.

    Tu as presque compris le message. C'est un début. Mais en fait, l’idée qu'il fallait comprendre est que l'on ne doit pas privilégier un gain faible de performances, au détriment de la qualité logiciel (maintenabilité et évolutivité du code).
    Mais la programmation objet n'est qu'un outil qui peut intervenir pour améliorer la qualité logiciel. Ce n'est pas le seul moyen, la POO sans conception derrière ne vaut pas grand chose et ce n'est pas le seul paradigme supportée par le C++. Et faire de la POO ne veut pas forcement dire faire des hiérarchies complexes d'objets, utiliser les allocations dynamiques dans tous les sens et ne pas prendre en compte les problématiques de mémoire cache (recherche "data driven development" ou "entity component system" par exemple)
    Là je suis d'accord.

    Tu considère donc que tu sais mieux programmer que la plupart des professionnels de ce forum? C'est un peu présomptueux non?
    Faux, je n'ai pas dis ça, j'ai peut être croisé un ou bien deux professionnels ici mais sans plus, les autres n'étaient que des débutants qui sont là soit pour demander de l'aide ou bien pour débattre.

    Ce n'est pas un manque d'humilité, j’appellerai plutôt ça de la maturité, juste que lorsque je remarque qu'une personne est moins compétente que moi et qui en plus essaye de me faire croire le contraire pour ensuite dire de la m**** sur mon dos en déformant ce que je ou ce qu'elle dit, ou encore en ne mettant pas toute la discution, je jette ses arguments à la poubelle.

    Quand je me tape plusieurs réponses d'affilée de plusieurs membres, là, je peux encore être pire.

    Bref je pense que je vais retourné sur un plus petit site de personnes compétentes pour débattre et éviter ainsi de débattre davantage sur ce site avec une majorité de personnes débutantes qui sont là juste pour débattre et une minorité de personnes compétentes.

    M'enfin quand je rencontre des personnes sur ce site (ou bien sur d'autres site) qui ne maîtrise pas l'orienté objet, ni même les tableaux et encore moins les fonctions, et qui savent à peine se servir de SFML, en général, je laisse tombé.
    Surtout lorsque je lis ce genre d'absurdités sur les débats, et vu le nombres de points que j'ai avec mes réponses, je me dis simplement que la majorité des gens ici ne sont pas sérieux.
    Bref je me suis fais ma propre opinion, je vais donc arrêter les débats sur ce site, la flemme de me répéter, et je n'ai pas envie de créer des débats à l’infini comme la majorité des membres de se site.
    Sur ce, je vous laisse car je n'ai pas vraiment de temps à perdre avec tout ça.

    Bonne continuation.
    Dernière modification par Invité ; 03/01/2015 à 11h21.

  18. #58
    Membre expert

    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Février 2006
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2006
    Messages : 1 031
    Points : 3 092
    Points
    3 092
    Par défaut
    Citation Envoyé par Lolilolight Voir le message
    Surtout lorsque je lis ce genre d'absurdités sur les débats, et vu le nombres de points que j'ai avec mes réponses, je me dis simplement que la majorité des gens ici ne sont pas sérieux.
    Ou alors peut être que tu n'es pas aussi bon que tu le penses et que tu ne sais absolument pas justifier quoi que ce soit.
    Les membres ont été extrémement patients avec toi.
    Personnellement lorsque je lis ton article "http://lolilolightdevblog.wordpress....aux-arguments/" le premier mot qui me vient à l'esprit c'est "puéril", puis je me demande comment une personne peut se croire aussi compétente avec une orthographe aussi catastrophique, enfin j'essais de voir tout de même le fond, et là tu n'es même pas capable de fournir une preuve quelconque ( un benchmark au moins non ? ).
    J'espère que ça t'aidera à progresser !

    PS : et pourtant tu ne dis pas que des choses inintéressantes, c'est juste que souvent le tout est noyé par des affirmations douteuses ainsi que de l'auto congratulation :/
    Suivez le développement de Chibis Bomba
    twitter : https://twitter.com/MoD_DiB
    DevBlog : http://moddib.blogspot.fr/

  19. #59
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Je me suis intéressé au personnage de Lolilolight vu l'animation sur les topics où il est passé, j'ai atterri ici et de là sur son blog que j'ai parcouru avec un certain intérêt. Le jeu vidéo m'intéresse depuis toujours même si je n'ai jamais eu suffisamment de temps pour m'y consacrer. Puis bon, j'avoue que j'aime lire le ressenti de gens qui s'attaquent à ce type d'industrie en autodidacte avec leurs propres moyens. Je suis un profane total sur le sujet, il y a juste deux points où je me permets d'exprimer quelques doutes.

    L'un est technique, c'est au sujet des threads.

    En effet, faire des locks trop souvent cela représente un peu près 30% du temps d’exécution de votre application. (J’ai testé avec un profiler)
    L'avis général sur les threads, c'est que les lock ont certes un prix, mais ce qui coûte cher c'est principalement la contention qu'ils peuvent entraîner. Le chiffre de 30% que tu avances est difficile à concevoir pour un traitement CPU bound, ce serait plutôt signe qu'il y a un gros bottleneck, ce qui est un autre problème.

    Certains langages moderne utilise des threads pour gérer les événements, update les composants, etc…, ce qui est sale et pas performant.
    Langages? des frameworks plutôt? Un exemple?

    Par exemple, afficher 12345678 en console avec un seul thread ne prendra pas plus de temps que d’afficher 1234 et 5678 avec deux thread différents.
    Au même titre que copier 5 fichiers en simultané sur un disque dur n'ira probablement pas plus vite que le faire séquentiellement, l'effet négatif sera atténué par les buffers jusqu'au moment où ça risque même de devenir pire. La raison à cela n'est pas à chercher du côté des threads mais plutôt du côté du type d'opération. Ecrire dans une console peut être considéré comme une IO, je n'ai jamais creusé en profondeur mais écrire dans une console est une opération généralement coûteuse (il suffit de faire une boucle pour s'en apercevoir). l'OS a probablement recours à de la synchronisation, il y a sans doute une question de buffering qui entre en ligne de compte sans compter le problème du rafraichissement de l'affichage. C'est clair que c'est pas le genre de traitement qu'on pourra faire aller 2 fois plus vite en créant 2 threads qui font ça en même temps.

    L'autre point est un peu plus philosophique:

    Il est écrit que le C++ est à ton sens le seul langage qui correspond au besoin du jeu vidéo. Je me demande parfois si ce n'est pas aussi tomber dans le piège technique. Lorsqu'on me demande mon avis (on le fait pas souvent heureusement ) sur un langage à apprendre pour créer des jeux, j'ai souvent tendance à dire que ce n'est pas l'important. Généralement si c'est pour créer GTA 5, Call of duty, ou <insérez ici le nom d'un jeu AAA récent> c'est clair que le C++ sera incontournable mais l'objectif en soi est irréaliste vu l'investissement et les ressources que demandent de tels jeux.
    Je pense que trop de développeurs se dégoûtent et se démotivent de par la difficulté d'apprentissage de la programmation en C++, surtout combinée à la culture générale nécessaire sur le plan technique qui exige déjà pour elle seule un investissement conséquent. Les langages à garbage collector ne sont peut être pas les bons choix pour les jeux 3A, mais je ne sais pas s'il est judicieux de dire aux débutants qu'ils ne peuvent rien faire sans C++.
    En fait je ne parle pas pour ce cas précis ici mais j'ai l'impression qu'il y a une sorte de fierté mal placée là dedans, ça fait "staïle" de programmer avec les outils des vrais pros et dire (ou se dire) que le reste c'est pour les gamins... On voit des jeux tout à fait intéressants en C# par exemple, Bastion, ou encore Magicka. Ca montre qu'on peut déjà y aller un bon bout avant que le langage devienne la limitation, ce serait super si tous les indés et hobbyistes arrivaient déjà des jeux comparables à ceux-ci avant de se poser la question. C'est pas parce que C++ permet de faire un "unreal engine" qu'automatiquement mon jeu sera mieux si j'utilise ça, est-ce que je peux jouer au tennis si je n'ai pas la même raquette de Roger Federer? Ce dernier exemple est particulièrement croustillant car beaucoup de joueurs de bon niveau disent que c'est très difficile de jouer avec cette raquette, enfin tout comme skier sur Atomic ne fait pas de vous Bode Miller. Perso je dirais que mieux vaut un projet raisonnable en C#, java, python qui aura une chance d'exister plutôt qu'un truc super ambitieux en C++ qui finira à coup sûr abandonné.

    Bref ça serait tout un débat. Même si je vais au fond de ma pensée, je trouve que c'est très courageux d'essayer de partir de feuille blanche et de coder son moteur. Perso j'aurai plus tendance à m'appuyer sur de l'existant pour pouvoir plus me concentrer sur mon jeu et ne pas me noyer sous la masse des éléments techniques. Cela dit, si le but est effectivement de proposer un outil open source pour faciliter le job aux autres, c'est plutôt honorable.

  20. #60
    Invité
    Invité(e)
    Par défaut
    Salut,

    je voulais parler de jeux plus conséquents, pas des jeux qui ne requiert pas autant de performances qu'un jeux de type 3A.

    Pour apprendre il y a des autres langages qui sont intéressant sûrement comme par exemple la java et le C#. (j'ai commencé avec du java)

    Malheureusement, pour les projets plus complexe, je conseillerai quand même aux débutants (surtout si ils ne veulent pas avoir à changer de langage si par chance leur projet s'agrandi et se perdre dans les différents frameworks et libs proposées) de commencer par le c++14.

    Auparavant il faut savoir que le c++14 n'existait pas lorsque j'ai commencé le java, donc, le c++ était plus compliqué que maintenant, ou je le trouve vraiment plus simple à appréhender.

    Lorsque j'ai commencé à apprendre le c++ il faut savoir que std::unique_ptr et std::shared_ptr ça n'existait pas, std::function et les lambdas expressions non plus, et les tuples ainsi que les templates variadique non plus. (cette notion est sans doute un peu plus difficile à aborder mais ce n'est pas le bout du monde je trouve)
    Le c++ était beaucoup plus compliqué à apprendre auparavant avec la gestion de la mémoire couplée avec l'orienté objet, maintenant avec les nouvelles notions de propriétaires, je trouve que c'est déjà nettement mieux.

    Il y a sûrement encore d'autre améliorations à faire comme par exemple, le système d'inclusion et les problèmes des références cyclique et d'interdépendances de modules, mais à part cela..., le c++14 est devenu plus simple à appréhendé je trouve.

Discussions similaires

  1. Réponses: 4
    Dernier message: 15/12/2014, 11h19
  2. Impossible d'acceder à un de mes sites web
    Par torrgovin dans le forum Réseau
    Réponses: 4
    Dernier message: 07/01/2014, 09h04
  3. comment bloquer mes sites web
    Par webamies dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 05/07/2012, 11h49
  4. Connaitre l'etat de mes site web
    Par G4uthier dans le forum Général Conception Web
    Réponses: 0
    Dernier message: 12/07/2010, 10h52
  5. Communication entre mon appli et un site web
    Par Neilos dans le forum C++Builder
    Réponses: 5
    Dernier message: 17/05/2005, 07h53

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