Connexion
Pour récupérer votre compte, veuillez saisir votre adresse email. Vous allez recevoir un email contenant une adresse pour récupérer votre compte.
Inscription
En vous inscrivant, vous acceptez les conditions d'utilisation du site et de nous vendre votre âme pour un euro symbolique. Amusez vous, mais pliez vous à la charte.

Un Rédacteur Factornews vous demande :

Tribune

HISTORIQUE DU Saturday 22 November 2014

MaVmAn
(23h52) MaVmAn (20h44) Seulement le premier épisode, j’avais bien aimé mais j'ai toujours pas pris le temps de continuer.
Requiem
(21h52) Requiem J'en ai vu des carlos, mais des comme ça, JAMAIS!
Ash_______
(21h45) Ash_______ Ca donne des frissons dans les fesses [youtube.com]
zouz
(20h44) zouz Quelqu'un ici a fait The Dream Machine ? Ca donne quoi ?
Echoes
(20h22) Echoes Et pour qui le C++ c'était plein de "this" caché (il adorait ce jeu de mot)
Echoes
(20h20) Echoes CBL > Non, j'avais un prof pour qui ADA c'était le Saint Graal de la prog
Ash_______
(20h11) Ash_______ Exserv de Gk, je suis vraiment client. J'adhère à tout ce qu'il dit, vraiment une bonne recrue.
CBL
(20h11) CBL [eyrolles.com] tu avais eu ce bouquin aussi ?
Echoes
(19h55) Echoes Me reparle pas d'ADA, tu vas me donner des cauchermars
CBL
(19h53) CBL Mais rien ne m'autant traumatisé que mes six mois d'ADA
CBL
(19h53) CBL Hahaha. La GUI magique qui change selon le systeme... Une idee brillante encore
Echoes
(19h47) Echoes CBL > Petit joueur, on a eu le droit à de l'AWT dans ma fac.
CBL
(19h42) CBL Le pire est quand on a commencé à faire du Swing...
CBL
(19h41) CBL En plus on bossait sur des terminaux X et les serveurs n'étaient clairement pas assez puissants pour faire tourner correctement la VM
CBL
(19h40) CBL Putain le Java... En arrivant à la fac, j'espérais qu'on allait faire du C ou du C++ mais non comme Java était à la mode j'en ai bouffé pendant deux ans
LeGreg
(19h10) LeGreg Dans les années 2000 on avait l'impression que tout le monde allait passer au java. Heureusement ça s'est inversé/freiné et on arrive toujours à embaucher des gens qui savent faire de l'arithmétique de pointeurs, opérations sur les bits..
CBL
(18h45) CBL 'est vachement amélioré. Des trucs simples comme le mot clé auto ont facilité le dev
CBL
(18h44) CBL Et puis le C++ s
CBL
(18h44) CBL attaquer les libs en C++ et ca a été effectivement le cas.
CBL
(18h44) CBL Je ne suis pas un grand du C++ mais son caractère universelle le rend incontournable. J'ai bossé sur quelques plugins pour UE 4 récemment qui devait taper dans des sdk third pary. Avant même de lire les docs, j'étais quasiment que j'allais pouvoir
noir_desir
(18h42) noir_desir [vgchartz.com] 14,4 millions de ps4, si ce qu'il dise, est vrai
noir_desir
(18h36) noir_desir Sinon il faut tout faire en assembleur ^^'. Mais bon là, le jeu n'est pas près de sortir.
MrPapillon
(18h28) MrPapillon (C++ ou plutôt C dans les exemples que j'ai vu)
MrPapillon
(18h27) MrPapillon Et surtout ils partent sur un langage neuf et ressortent la même syntaxe débile du C++. Mais ça peut se comprendre parce qu'ils font du middleware.
MrPapillon
(18h26) MrPapillon Et leur "approche du multi-threading" est l'approche classique choisie par OpenMP, CUDA, Intel, etc... Ils ont uniformisé la syntaxe en quelque sorte.
MrPapillon
(18h25) MrPapillon Ze_PilOt > Leur truc me semble plus être fait pour faire des tools ou d'autres trucs offline que du moteur semi-temps-réel comme un jeu vidéo. Leur approche du multi-threading ne me semble pas viable pour un jeu.
ZeP
(18h14) ZeP Et passage CPU/CUDA seamless, multithreading super simple,....
ZeP
(18h12) ZeP Pour la 3d, il y a des mecs qui ont résolu la quadrature du cercle niveau prog : language similaire au python, exécution rapide comme du c++, cross-platform, tout via LVM. [fabricengine.com]
noir_desir
(17h49) noir_desir Yolteotl > offre lui une photo de toi :D
Yolteotl
(17h48) Yolteotl Il faut que je trouve une peluche poney pour ma nièce.... :D
noir_desir
(17h43) noir_desir carwin > je n'ai pas d'enfant (enfin j’espère ...) et pas de tuture (là je suis sûr).
carwin
(17h38) carwin Bah j'ai la petite qui fait ses dents. Et le contrôle technique de ma 206 aussi un peu.
noir_desir
(17h32) noir_desir carwin > ca va et toi :D
carwin
(17h31) carwin Et sinon, la famille, ça va ?
MrPapillon
(17h12) MrPapillon Et c'est un truc qui se fait défoncer la tronche au moindre copier-coller, par les perforce et compagnie.
MrPapillon
(17h11) MrPapillon Un autre petit truc tout con qui m'énerve depuis de nombreuses années : pourquoi mettre le type en premier sur les déclarations ? Qui a eu cette idée débile ? Du coup on passe notre temps à aligner manuellement les noms de variables et fonctions.
MrPapillon
(17h02) MrPapillon Et tout ce caca pas à cause d'histoires de performance, simplement parce que le C++ est ultra bancal et que les compilateurs sont devenus des sacs à magouilles.
MrPapillon
(17h01) MrPapillon sont minables)
MrPapillon
(17h01) MrPapillon Ça crée un code infâme que personne ne comprendra, super lourd et qui va faire râmer encore plus les builds. Et pourtant c'est un truc qui peut être très sympa quand on veut faire des wrappers vers d'autres langages (les wrappers LUA dispo sur le net
MrPapillon
(16h59) MrPapillon de templates
MrPapillon
(16h59) MrPapillon Un truc tout con : générer des stubs de fonctions. Il faut voir les pirouettes magiques qu'il faut faire pour arriver à faire un truc pareil. En passant par des recoins obscurs du C++ comme les pointeurs de fonction (et pas les types) passés en paramètres
MrPapillon
(16h58) MrPapillon Par tous les dieux nordiques, on peut enfin faire un "decltype" ou un for each. Mais je vais éviter de lister tout ce qu'on ne peut pas faire.
MrPapillon
(16h55) MrPapillon Et je ne résume pas ma pensée aux vidéo de Blow, c'est juste un exemple amusant d'idées non triviales mais qui font sens données par un programmeur unique de toute une industrie.
MrPapillon
(16h54) MrPapillon C'est justement là le point central, c'est que le C++ n'est pas guidé par les besoins de l'industrie du jeu vidéo mais par d'autres industries. C'est pour ça qu'on se ramasse une des STL les plus ridicules qui soit (implémentation comme spécification).
MrPapillon
(16h53) MrPapillon Ttask > Sa proposition sur les scopes génériques et la possibilité de faire exécuter du code par le compilateur serait bien plus utile pour le jeu vidéo que toutes les nouveautés du C++11/14.
Ash_______
(16h46) Ash_______ De ce que j'ai retenu de mon DUT info c'est que le C++ ça reste du C en plus facile à utiliser.
Ttask
(16h26) Ttask Muchacho > J'ai vu les talks de Jon Blow, je vois de quoi tu parles. Ce sont des points de détails complètement mineurs à mon sens.
Ttask
(16h26) Ttask Muchacho > C++ est une extension de C qui conserve l'objectif principal en rajoutant de nouveaux paradigmes. Un point clé est qu'il n'y a aucun overhead runtime inutile ajouté. C'est pour ça que les règles d'initialisation semblent complexes.
Muchacho
(16h25) Muchacho pluto que d'écrire lourdement "std::unique_pointer<T> pointer", on écrit juste "T *! pointer"
Muchacho
(16h24) Muchacho Ttask > Il y a une sémantique en plus. :]
Muchacho
(16h22) Muchacho Ttask > Dans ce cas on aurait pu rester au C.
Ttask
(16h21) Ttask Et deleter un pointeur automatiquement sans avoir de sémantique additionelle (comme un smart pointer quelconque), c'est un non-sens absolu.
Ttask
(16h20) Ttask Muchacho > Absolument pas d'accord. Ca serait contraire au but premier du langage, qui est d'être un langage de systèmes. Ce que tu proposes peut être fait par du code client, ça n'a pas besoin d'être des features du langage.
Muchacho
(16h16) Muchacho ... dire de delete un pointeur automatiquement dans le destructeur plutot que de devoir réecrire delete ma_variable; ma_variable = 0;)
Muchacho
(16h15) Muchacho Ttask > N'empêche qu'il y a des choses totalement évidentes qui auraient du être fait depuis longtemps (l'initialisation par défaut des variables dans la définition, le fait de dire explicitement qu'on ne veut pas les initialiser, ...
Mimyke
(15h27) Mimyke Deux joueurs pro bannis par le VAC + disqualification de leurs équipes de la DreamHack: [cpc.cx] et [cpc.cx]
Ttask
(15h25) Ttask A nouveau, je ne suis pas un fan absolu de C++, mais je trouve le discours de Jonathan Blow un peu extrémiste et pas toujours bien fondé. Et j'apprécie énormément Haskell, mais c'est clairement un autre domaine. Le jeu vidéo a besoin d'un langage système.
Ttask
(15h23) Ttask MrPapillon > Naughty Dog trouve bien des animateurs formés à LISP. De plus, C++ n'est pas exclusivement utilisé pour du jeu, ce qui signifie qu'il sera toujours plus facile de trouver des gens formés qu'avec un langage spécifique.
noir_desir
(15h21) noir_desir MrPapillon > faut croire
MrPapillon
(15h12) MrPapillon noir_desir > Peut-être qu'ils ont codé en Eiffel à un moment donné, mais ça n'a pas perduré il semblerait.
MrPapillon
(15h12) MrPapillon trouver des gens formés au C++ pour le jeu vidéo.
MrPapillon
(15h12) MrPapillon Ttask > Et on peut aussi parler des juniors c++ tiens, vu que ce n'est plus appris dans les écoles maintenant. J'aimerais bien voir les gros boomers qui vont débarquer et foutre le dawa dans le code. Dans quelques années ça risque d'être vraiment dur de,
noir_desir
(15h11) noir_desir MrPapillon > je ne sais plus ou j'avais lu ça alors
MrPapillon
(15h10) MrPapillon noir_desir > Non Eugen ont codé en Delphi avant, et en langage custom, puis en python et maintenant en C++.
MrPapillon
(15h10) MrPapillon à cause du système d'includes de merde et qu'on mettra 20 ans à attendre pour avoir un système d'import fonctionnels dans le standard.
MrPapillon
(15h09) MrPapillon Et si on fait un unity/batch build unique, ça revient à avoir des performances de n'importe quel autre langage.
MrPapillon
(15h09) MrPapillon La seule possibilité c'est de faire du unity/batch build
MrPapillon
(15h08) MrPapillon Si on n'a pas une structure parfaite, on se mange des temps de builds de dingue.
MrPapillon
(15h08) MrPapillon Et surtout les temps de build en c++, c'est juste plus possible.
Ttask
(15h08) Ttask MrPapillon > A cause du C++, ou à cause de juniors utilisant mal C++?
noir_desir
(15h07) noir_desir Je crois que s'est les gars de eugen studio qui code en eiffel (où qui ont codé en eiffeil)
MrPapillon
(15h07) MrPapillon Ttask > Et si je veux demander au langage que la fonction soit pure mais à l'exception de l'allocateur new et delete ou n'importe quelle autre exception ?
MrPapillon
(15h06) MrPapillon Ttask > Ça fait depuis 20 ans que je bosse en c++ et sur des jeux. Si je cumule le temps perdu à cause du C++ pendant toutes ces années, je vais devenir fou.
Ttask
(15h06) Ttask Et pour ton exemple en particulier : tu peux utiliser l'attribut pure sous gcc (pas d'équivalent MSVC malheureusement), même si ça n'est pas idéal.
MrPapillon
(15h05) MrPapillon "Parce qu'il faut faire une interface avec le langage de base, que ça ne compile pas de manière performante, que c'est chiant à débuguer et surtout qu'avoir un deuxième langage parce que le premier fait les choses de manière merdique,"
Ttask
(15h05) Ttask MrPapillon > Tu n'as pas à me convaincre que C++ est imparfait. J'ai 10 ans d'expérience dans la programmation de moteurs de jeu. Il n'en reste pas moins qu'avec une équipe expérimentée et des coding standards, ce genre de choses n'est pas un problème.
MrPapillon
(15h05) MrPapillon nono_le_robot > J'ai expliqué juste avant pourquoi ça n'était pas du tout équivalent.
MrPapillon
(15h04) MrPapillon nono_le_robot > C'est bien ce que je dis, il n'y a pas à l 'heure actuelle d'alternative valable pour un langage performant pour le jeu vidéo.
nono_le_robot
(15h04) nono_le_robot MrPapillon > Et puis ça revient plus ou moins au même que d'utiliser d'un côté le c++ pour les perfs et de l'autre du script pour la logique
MrPapillon
(15h04) MrPapillon nono_le_robot > Le langage C++ est complexe pas parce qu'il est performant, mais parce que les concepts et leurs implémentations sont foireux.
nono_le_robot
(15h03) nono_le_robot MrPapillon > Ils sont intéressants mais encore trop jeunes
MrPapillon
(15h03) MrPapillon Big Apple > Un autre langage n'impose pas de se priver de libs.
MrPapillon
(15h02) MrPapillon nono_le_robot > Tu peux t'intéresser aux langages émergents, comme Rust, Go, Haskell, etc... il y a des propositions partout qui montrent des alternatives.
Big Apple
(15h01) Big Apple MrPapillon > il n'empêche qu'une librairie avec des fonctions comme déplacer_des_sprites_sans_scintillement(), sprites_collisions():List, ou plus_court_chemin(grille):List ça revient au même que du full custom from scatch, la perte de temps en moins...
MrPapillon
(15h01) MrPapillon Un exemple tout simple : c'est impossible de garantir qu'une fonction ne magouille pas avec des variables globales à la compilation.
nono_le_robot
(15h01) nono_le_robot MrPapillon > J'ai du mal à visionner l'idée. Comment tu peux avoir à la fois les perfs et la simplicité?
MrPapillon
(15h00) MrPapillon tous les concepts y sont foireux.
MrPapillon
(15h00) MrPapillon Le c++ en soi est une merde.
MrPapillon
(15h00) MrPapillon Ttask > Non, mais ça ne change rien au problème.
MrPapillon
(15h00) MrPapillon nono_le_robot > C'est juste qu'à part les jeux vidéo, ce n'est pas la cible des autres acteurs de l'industrie informatique.
Ttask
(14h59) Ttask MrPapillon > Tu utilises Recode ?
MrPapillon
(14h59) MrPapillon nono_le_robot > Si on peut, les concepts sont orthogonaux.
Ttask
(14h59) Ttask C'est un langage très riche, et imparfait, mais qui permet d'être très expressif tout en ayant tous les atouts d'un pur langage système.
MrPapillon
(14h59) MrPapillon Ttask > D'expérience, j'ai un constat différent.
nono_le_robot
(14h59) nono_le_robot On ne peut pas avoir les deux en même temps, dans un seul langage.
MrPapillon
(14h58) MrPapillon nono_le_robot > Dans les secteurs de pointe, il n'y a pas 50 000 middlewares par fonctionnalité.
Ttask
(14h58) Ttask C++ se porte très bien, et de nouveaux outils tels que Recode permettent d'avoir des temps d'itération encore meilleurs qu'avec du script.
nono_le_robot
(14h58) nono_le_robot MrPapillon > Ça c'est valable que sur du long terme
MrPapillon
(14h58) MrPapillon C'est juste que le choix actuel est merdique.
MrPapillon
(14h58) MrPapillon nono_le_robot > Oui ben c'est bien ce que je dis, on pourrait avoir les deux en même temps, c'est des concepts orthogonaux
nono_le_robot
(14h57) nono_le_robot MrPapillon > Oui, si tu choisis mal tes middlewares et que tes devs sont pas correctement formés
MrPapillon
(14h57) MrPapillon Et surtout que quand on fait tout en custom, on fait que les fonctionnalités qui nous intéressent et on connaît tous les rouages et on peut faire évoluer la techno comme on l'entend sans avoir à faire à des contraintes externes.
nono_le_robot
(14h57) nono_le_robot Ça me semble malin d'avoir un langage de script qui ne nécessite pas de compilation pour gérer la logique du jeu et d'avoir à côté du c++ pour le moteur graphique et physique pour les perfs
nono_le_robot
(14h56) nono_le_robot MrPapillon > Je suis pas d'accord, tu fais pas les mêmes choses avec les mêmes langages
MrPapillon
(14h56) MrPapillon nono_le_robot > Les middlewares font perdre aussi un temps fou. Et certains studios bossent plus vite en faisant tout en custom en interne.
nono_le_robot
(14h55) nono_le_robot Pas besoin de réinventer la roue tout le temps
MrPapillon
(14h55) MrPapillon c'est ridicule
MrPapillon
(14h55) MrPapillon nono_le_robot > Parce qu'il faut faire une interface avec le langage de base, que ça ne compile pas de manière performante, que c'est chiant à débuguer et surtout qu'avoir un deuxième langage parce que le premier fait les choses de manière merdique,
nono_le_robot
(14h55) nono_le_robot MrPapillon > Ouais, normal. C'est pour ça qu'on évite au maximum le code "custom"
Big Apple
(14h54) Big Apple avec le recul, je me dis que c'est une énorme perte de temps de réinventer la roue alors que c'est bien plus intéressant de s'attaquer au coeur du jeu : gameplay, graphisme, ambiance...
Big Apple
(14h53) Big Apple MrPapillon > Sous Delphi, je développe un Zelda like dans le monde de starwars, j'ai dû m'emmerder à tout gérer (collisions, doublebuffer, IA, bdd...) alors que je sais que tout ça existe déjà dans des librairies dans d'autres langages comme c++, c#
MrPapillon
(14h53) MrPapillon nono_le_robot > Dans un gros studio avec un moteur custom, le C++ engouffre une grosse partie du temps de production.
nono_le_robot
(14h53) nono_le_robot En quoi c'est bancal les langages de script?
MrPapillon
(14h53) MrPapillon Langage simple, langage qui compile vite et langage performant sont des concepts orthogonaux.
Ash_______
(14h52) Ash_______ GTAV hahahaha [youtube.com]
nono_le_robot
(14h52) nono_le_robot MrPapillon > Ça c'est le point de vue du programmeur qui cherche un challenge. Je suis pas sûr que ça soit compatible avec les exigences de la production de JV.
MrPapillon
(14h52) MrPapillon L'existence d'un langage de script (script textuel et pas graphique) ne tient qu'au fait que le C++ soit de la grosse bouillie infâme de pièges, de complexité ridicule, de temps de compile statique, etc...
MrPapillon
(14h51) MrPapillon Et les langages de scripts sont des solutions bancales à de vrais problèmes.
MrPapillon
(14h50) MrPapillon Si on veut vraiment faire un jeu qui se démarque techniquement, faire un moteur custom est important.
MrPapillon
(14h49) MrPapillon Si on se base que sur du moteur externe, le dev de jeux va vite devenir très morose.
nono_le_robot
(14h48) nono_le_robot Je suis pas sûr qu'on ait vraiment besoin d'encore un nouveau langage spécifique
nono_le_robot
(14h47) nono_le_robot MrPapillon > Les middlewares font plutôt bien le boulot de simplifier le développement des jeux sans bousiller les perfs…
Big Apple
(14h47) Big Apple Pas Unity, j'espère...
MrPapillon
(14h46) MrPapillon Ok
Ttask
(14h43) Ttask MrPapillon > Non.
MrPapillon
(14h41) MrPapillon On peut discuter sur les détails, mais le jeu vidéo a vraiment besoin d'un vrai langage spécifique.
MrPapillon
(14h40) MrPapillon Pour ceux qui ont une bonne expérience en C++, Jonathan Blow s'amuse à faire un prototype d'un nouveau langage dans une suite de vidéos sur Youtube : [youtube.com]
MrPapillon
(14h39) MrPapillon On ne peut pas faire de jeux performants avec un langage simple à l'heure actuelle. On peut faire des jeux performants avec un langage merdique.
MrPapillon
(14h37) MrPapillon Le C# c'est le Java de Microsoft après une tentative ridicule avec le J#.
MrPapillon
(14h36) MrPapillon Le c++ c'est pire que le poker. Le poker on apprend les règles en 10 minutes et on met toute une vie pour les maîtriser. Le C++ on apprend les règles toute sa vie et on met toute sa vie pour le maîtriser.
Big Apple
(14h35) Big Apple Laurent > Le problème de Delphi, c'est que ma version préférée (2006) ne tourne pas sous windows 8.1 à cause du .NET; les autres delphi (dont XE) ne sont même pas rétrocompatibles D2006...
MrPapillon
(14h35) MrPapillon Personne ne doit utiliser le C++, sauf ceux qui en ont vraiment besoin.
Big Apple
(14h29) Big Apple Laurent > Après des années de Delphi, le passage à C# se fait très facilement quand on recherche la même interface pour la gestion de la form, components... Le C, c'est du textuel (bon pour tester des pti algos ou la fac), et le C++ est bien plus complexe
__MaX__
(14h23) __MaX__ Big Apple > Cette phrase marche aussi pour le javascript :]
Laurent
(14h17) Laurent BeatKitano > Ca donne envie
BeatKitano
(14h13) BeatKitano Laurent > Le c# c'est le visual basic de c++ ... en un peu plus noble.
Laurent
(13h58) Laurent Big Apple > delphi est tout sauf déagréable par contre quand je vois du C et du C++, même si je comprends en gros, ça me parait dur d'y passer. le C# serait si différent des autres C ?
Big Apple
(13h45) Big Apple ce qui me semble génial avec le c#, c'est qu'on dirait quasi du delphi, mais avec la compatibilité ts windows, la puissance et les packages par milliers (3d...)
Big Apple
(13h42) Big Apple je viens de faire mon premier programme c# après 7 ans de delphi (ou de malheur)
Ash_______
(13h37) Ash_______ pyross > [issteamdown.com]
pyross
(13h36) pyross Steam est en sucette? j'arrive pas a me connecter...
ptitbgaz
(13h02) ptitbgaz Je conseille de tester "Guns, Gore & Cannoli", un bon défouloir sans prétention mais soigné (et perso la DA à la Mark Of Ninja n'est pas pour me déplaire...)
ptitbgaz
(12h59) ptitbgaz Bien sympa la nouvelle émission de GK "Des oursins dans les poches" [gamekult.com] Gautoz toujours un brin monocorde mais bien écrit et quelques trouvailles sympas
Laurent
(12h21) Laurent (08h48) Enorme !
kimo
(12h17) kimo (12h08) classe
Laurent
(12h08) Laurent Si vous voulez flinguer votre productivité, parce que vous êtes au boulot malgré vous : [0hh1.com]
Phaxan
(11h01) Phaxan Ouhlala > du fanservice à l'acide chlorhydrique, nsfw and wtf aussi, impressionnant.
Ouhlala
(08h48) Ouhlala un peu de fanservice nippon [animatorexpo.com] (nsfw)