Aujourd'hui, je reviens de la cérémonie de crémation d'un de mes élèves de l'année dernière...
On a appris jeudi dernier qu'il s'était suicidé la veille au soir avec l'arme à feu de son grand-père.
Sous le choc, nous avons tous été extrêmement perturbés et profondément touchés par sa mort... je me souviens d'un môme attachant et discret, au sourire complice quand je faisais des blagues en espagnol, qui passait me voir en fin de journée avant de partir. Un gamin pas méchant pour deux sous, dépourvu de duplicité ou de mauvais sentiments, un garçon qui faisait des efforts en classe mais attendait l'interclasse pour échanger quelques mots avec moi.
Aujourd'hui, on a brûlé son corps en regardant des photos de lui défiler sur un écran et j'ai pleuré comme si c'était le mien... Les photos ressemblaient à celles que j'ai prises de mes mômes depuis 19 ans... et j'ai pas tenu.
Quand un enfant meurt, ce sont tous les parents du monde qui pleurent.
Comme prévu, on s'aperçoit qu'il y a peut-être de l'intox dans l'info qui prétend que des écolos ont empoisonné une rivière pour faire un genre de happening.
En même temps, c'est un peu gros quand même, hein: les Zécolos Gauchiss' idiots qui polluent toute une rivière pour lutter contre la pollution comme le plus con des américains qui pollue une rivière pour un gender reveal party.
un patch pour Starfield corrigera certaines des bethesdouilles les plus flagrantes du jeu. Seront ainsi rajoutés le support du DLSS, un réglage du FOV, un menu de calibration pour le HDR et des curseurs permettant de modifier le contraste et la luminosité de l'image.
Bon, je crois me rappeler que le DLSS est un genre d'upscaling mais j'en sais pas plus, donc je cherche un peu:
Comme son nom l’indique, le DLSS est une technologie d’upscaling reposant sur l’intelligence artificielle. Il existe en effet 4 techniques d’upscaling [...] Formulé plus simplement, le DLSS permet à un PC équipé d’une carte graphique et d’un processeur vieillissant d’afficher un jeu en 4K/60 FPS. Le DLSS est donc un cadeau tombé du ciel pour les joueurs ne pouvant pas se permettre de mettre régulièrement à jour leur setup pour profiter des derniers composants en date (https://www.phonandroid.com/dlss-tout-comprendre-sur-la-technologie-de-nvidia-qui-revolutionne-le-jeu-video.html)
Ha, bonne nouvelle alors ?! Regardons la liste des cartes compatibles sur la même page (j'ai pas cherché plus loin):
RTX 4060
RTX 4060 Ti
RTX 4070
RTX 4070 Ti
RTX 4080
RTX 4090
Donc des cartes allant de 350€ à 2000€...
Bon ben je vais continuer à jouer en mode potato, alors... Parce que même 350€, ça reste cher pour du matos qu'on associe déjà à des composants «vieillissants», en tout cas pour moi. Mon téléphone est explosé et ne fait plus de photos, mon tracteur de pelouse ne démarre plus sans starter extérieur, mes pneus commencent à être justes, on a les loyers de mes deux grands en ville etc etc. Comme tous les gens normaux, je peux pas me payer du matos tous les deux ans. Surtout qu'après, faut stocker... Quand on voit comment c'est dans mon bureau... (et je vous parle pas de chez Liandri )
Sans compter que s'il faut que je change mon compteur électrique et mon alim de PC pour installer une carte graphique qui coûte le PIB du Luxembourg en électricité... une carte qui ne rentrera probablement pas dans mon PC de toutes façons... et qui chauffera tellement que je devrai aussi changer les ventilos...
Bref, merci beaucoup Bethesda pour ce meeeeeerveilleux cadeau.
EDIT : petite annonce
Liandri en profite pour me dire via Signal qu'il vend sa config Gamer, donc je passe l'info
i7 9700k, 64go ram, rtx2080, bonne alim, boitier fractal design R6 silencieux et 4x SSD de 480go : 600€ .
Si ça vous intéresse, passez par moi ou contactez-le directement sur le mammouth
Deuxième épisode de mes notes perso sur la bibliothèque Image magic pour évoquer la classe ImagickDraw qui, comme son nom l'indique, permet de dessiner avec Imagick. ( 1er épisode )
On va se limiter à des usages basiques parce que la lecture du sommaire suffit à imaginer des possibilités certes alléchantes mais totalement hors de propos en ce qui me concerne (courbes de bézier etc)
Spoiler: c'est nettement moins intuitif et simple que pour le traitement d'image... l'écart entre Imagick et GD dans le domaine du tracé n'est plus si évident: ça mériterait de faire un classe pour simplifier tout ça... ( /me se jette sur son bujo pour griffonner spasmodiquement)
Préambule
Cette classe crée un objet servant d'instructions à appliquer ensuite à un objet Imagick.
On partira du principe que vous avez fait des instances des classes comme suit:
$im=new Imagick(); # l'image dans laquelle vous allez appliquer l'objet ImagickDraw
$draw=new ImagikDraw();
Ajouter un texte
Fixer les caractéristiques
$draw->setFont(fonte); : sélectionne la fonte à utiliser
$draw->setFontSize(taille); : définit la taille en pixels
$draw->setFillColor(couleur);: définit la couleur de fond (normalement, couleur est un objet ImagickPixel, voir 1er épisode mais on peut passer une chaîne au format de couleur CSS )
$draw->setTextAlignment(alignement); : une des constantes d'alignement imagick::ALIGN_LEFT imagick::ALIGN_CENTER Imagick::ALIGN_RIGHT
$draw->setTextDecoration(decoration): une des constantes de décorationimagick::DECORATION_UNDERLINE imagick::DECORATION_OVERLINE imagick::DECORATION_LINETROUGH et bien d'autres (comme du... bruit ?!).
$draw->setTextAntialias(true);: ajouter de l'antialias
l'espacement :
entre les mots : $draw->setTextInterwordSpacing(taille)
entre les lignes : $draw->setTextInterlineSpacing(taille)
Tracer le texte
$draw->annotation(x,y,texte) : trace un texte dans la police sélectionnée
$im->annotateImage( $draw, 0, 0, 0, $fontName ); : ajoute le texte à l'image.
Obtenir des infos utiles
obtenir la liste des polices disponibles: $im->queryFonts($pattern = "*") 🆒 on peut filtrer avec une pattern à la façon de glob().
obtenir les infos fixées par setXXX : getXXX ... ainsi on a getFont(), getFontSize() etc...
obtenir les dimensions de la boîte de texte: $im->queryFontMetrics($draw, text); on récupère un tableau comme ci-dessous
Array
(
[characterWidth] => 9
[characterHeight] => 9
[ascender] => 9 # la taille au-dessus de la baseline
[descender] => -2 # la taille sous la baseline
[textWidth] => 71
[textHeight] => 10
[maxHorizontalAdvance] => 12
[boundingBox] => Array
(
[x1] => 0
[y1] => -2
[x2] => 6.890625
[y2] => 7
)
[originX] => 70
[originY] => 0
)
Dessiner des formes
Fixer les caractéristiques
opacité du trait : $draw->setStrokeOpacity(0-1);
couleur du trait : $draw->setStrokeColor(couleur);
épaisseur du trait : $draw->setStrokewidth(nb);
type de trait : $draw->setStrokeDashArray() Le motif semble être plein de possibilités car on peut le définir très spécifiquement et même utiliser une image comme motif (->setStrokePatternURL)
couleur de remplissage : $draw->setFillColor(couleur);
Allez, pour une fois, j'ai un peu de temps devant moi, je vais éplucher un peu la lib Image magick dont je parlais il n'y à guère...
La base
charger UNE image
Simple: pas besoin de plusieurs fonctions selon le format, il suffit de $images = new Imagick('image.jpg');
charger DES images (et là c'est fort)
Même pas nécessaire de passer par un foreach, on fournit le tableau des fichiers voire directement un glob: $images = new Imagick(glob('images/*.JPG'));
Sauver une image
$im->writeImage('image.jpg');
Faire une miniature
Si on laisse une dimension à 0, les proportions sont conservées (quand tu vois la merde que c'est avec GD !)
$image->thumbnailImage(100, 0);
Output une image
header('Content-type: image/jpeg');
$image = new Imagick('image.jpg');
# ici on effectue un traitement puis on sort le résultat
echo $image;
Récupération d'infos sur les images
taille $im->getImageWidth() $im->getImageHeight()
format $im->getImageFormat()
🆒 ⮕ pour fixer le format de l'image, c'est juste $im->setImageFormat('png'); ! 😍
Comme pour GD, il faut créer un objet couleur dans les traitements d'image, mais c'est plus simple qu'avec GD (et plus complet): il suffit de passer une couleur selon les normes CSS. Du coup, la transparence n'est pas gérée par une connerie de paramètre «alpha» mais simplement par ... rgba()... 💖
🆒 ⮕ Ça peut paraître compliqué, mais en fait, dans les fonctions où on est sensé utiliser ImagickPixel, je me suis aperçu qu'on pouvait tout simplement passer une string contenant la couleur css... elles se démerdent seules. 😍
Image Magick me semble particulièrement bien nommée tant les possibilités sont énormes et la simplicité d'utilisation étonnante: on sent une volonté de se simplifier la vie lors de l'utilisation... c'est juste beau.
Je voulais mettre une image de chaque effet dans les descriptions mais:
ça prenait une place de ouf
je préfère reprendre certaines de mes applis/api avec imagick
C'était souple et simple mais le résultat restait assez décevant parce que je ne parvenais pas à gérer correctement la transparence des PNG: GD ne prenait en compte qu'une seule couleur transparente et on se retrouve avec un GIF like en qualité potato...
Après avoir cherché, lutté, testé des trucs, modifié ma classe... le ratio temps demandé/résultat obtenu m'a poussé à me dire : «stop, il doit y avoir un moyen plus simple»
Ben vous savez quoi ? Il y a. Oui.
Ma classe était déjà vraiment pas mal car elle permettait de faire les choses simplement... Mais, juste pour tester, j'ai essayé ImageMagick.
Reprendre mon code pour utiliser cette lib m'a pris un gros quart d'heure et cinq fois moins de code.
Et ça a marché. Propre. Du premier coup.
Conclusion
🟢 rapide
🟢 simple d'utilisation (5 minutes pour piger les bases)
🟢 efficace
🟢 code ultra lisible et compact à la fin
🟢 se suffit à elle-même et gère seule les trucs chiants
Surtout Bethesda se prend les pieds dans son monde ouvert. L’échelle tant mise en avant se trouve saucissonnée en petites poches quasi étanches qui sapent le sentiment d’exploration si précieux dans leurs jeux. De toute façon, la plupart des planètes, au contenu généré aléatoirement, n’offre rien d’autre que des ressources à collecter et une infinité de jobards à tabasser dans des complexes militaro-industriels répétés à l’infini. Et si l’on peut personnaliser son vaisseau de pied en cap, on n’aura pas grand-chose à faire dedans. Pour sa première création originale en vingt-cinq ans, Bethesda livre une odyssée spatiale si chétive et étriquée qu’elle interroge sur la capacité du studio à se renouveler.
Au bout du compte, on a l'impression d'un jeu prétentieux :
Bethesda ne s'est pas donné les moyens de ses ambitions : les mondes générés produisent un peu le même effet que la N ieme ruine Ayléide, le N ieme dongeon, la N ieme grotte dans les elderscrolls...
Starfield ne donne jamais l'impression d'être vraiment dans un vaisseau comme celle qu'on a dans un Subnautica («welcome on board, captain»): on n'y fait rien, il ne s'y passe pas grand chose, on n'a même pas l'impression d'être dans un véhicule... Bof.
les chargements sont vraiment intempestifs: tu charges pour TOUT, et parfois, tu charges pour arriver devant une porte ou tu recharges pour la passer puis tu recharges encore ... et comme les chargements sont interminables... ça casse le rythme.
l'ajout de la couche de mondes à visiter accentue encore l'effet précédent: entre vaisseau ? CHARGE, déplacement dans un système ? CHARGE, atterrissage ? CHARGE, prends le tram ? CHARGE, entre dans un bâtiment ? CHARGE !
ce jeu ne propose finalement que peu d'interactions avec le monde: la plupart des trucs du décor (vaisseau compris) ne sont... ben que du décor. Ça me met de travers d'avoir des ralentissements et des chargements de ouf juste parce que le décor est détaillé...
Je pense que le jeu a été survendu, à tort annoncé comme révolutionnaire par certains: hélas, les mécaniques de Skyrim/Oblivion/Morrowind étaient suffisantes pour l'époque et on les aimait malgré leurs éventuelles imperfections.
Cette indulgence ne peut plus être autant de mise dix ans après Skyrim... Surtout après avoir autant attendu un jeu à cause duquel Bethesda n'a pas travaillé sur ES6... (et ÇA c'est grave !)
Les deux opinions me paraissent intéressantes car proposées par des gens concernés et légitimes: ils savent de quoi ils parlent et ne peuvent être soupçonnés d'être antimusulman...
En effet, j'ai souvent l'impression qu'on est arrivé à une telle radicalisation des positions à ce sujet qu'il ne peut plus y avoir de réflexion un peu objective sans qu'on soit immédiatement noyé dans un brouhaha d'accusations... Pourtant, le sujet n'est pas simple à trancher ou à résoudre...
En tant que Tunisien, je tiens à souligner que le mot "Abaya" est totalement étranger à notre culture en Tunisie (et au Maghreb tout entier à ce que je sache). Ce vêtement, l'abaya, est spécifique à l'Arabie Saoudite et au pays du Golf et reflète l'influence du wahhabisme et de l'islamisme radical en France. En tant que Tunisien, j'ai une compréhension approfondie des aspects religieux et historiques de l'islam, et je peux affirmer avec certitude que nos ancêtres n'ont jamais porté ce type de vêtement, et encore moins le voile.
Le port du voile est devenu une question politique, notamment grâce aux Frères musulmans, qui ont promu cette pratique. Il est intéressant de noter que même à Al-Azhar en Égypte, une institution enseignant la théologie musulmane, les étudiantes ne portaient pas de voile dans les années 60 et avant. Le voile est donc une tendance relativement récente, propagée à travers les médias depuis la défaite de 1967 et l'essor de l'islamisme, consécutif au déclin du nationalisme arabe laïque et l'enrichissement des pays du Golf.
Il est important de noter que le Maghreb n'avait aucune tradition de voile ou d'abaya avant ces événements. Il est donc regrettable de voir que certains Maghrébins islamistes (y en a aucune doute pour moi) utilisent ces vêtements saoudiens, qui n'ont aucun lien avec notre culture, pour exprimer leurs opinions politiques en France. Cette stratégie est superficielle et déplorable, car elle utilise les enfants comme instruments politiques.
En ce qui concerne la France, il est évident que les gouvernements incompétents, comme beaucoup de l'élite politique mondiale aujourd'hui, tentent de diviser pour mieux régner. Ces questions détournent l'attention des problèmes réels en France. Nous avons des liens historiques étroits avec la France et nous savons qu'elle fait face à de véritables défis (comme les coups d'État en Afrique, qui sont un symptôme réel, la réforme des retraites on n'en parle plus..je veux pas parler d'autres points la pour ne pas m'accuser de se mêler de la politique interne de la France même si j'y réside mais bon..je veux que l'idée soit claire).
Il est triste de constater que la plupart des gens tombent facilement dans ce piège, ce qui pourrait conduire à des divisions internes et à des conflits. Malheureusement, comprendre ces problèmes nécessite un effort d'étude de l'histoire et des enjeux complexes. La montée de l'islamisme est liée au pétrole du Golfe, et il est important de rappeler que l'islam est une religion vieille de 1500 ans, la tendance habit islamique ça date de 1967..La révolution islamique en Iran à rendu les choses encore pire. Le judaïsme et le christianisme ont évolué au fil du temps pour s'adapter à la laïcité, et c'est le résultat d'années de luttes acharnées en France contre le clergé pour séparer l'église de l'état et garantir la liberté de conscience, et ceci est en rapport étroit avec la devise nationale liberté égalité fraternité. C'est un pilier de la république. Malheureusement la plupart des immigrés ne connaissaient pas l'histoire de ce pays, je connais même des français qui ne connaissent pas cette Histoire. La laïcité en France c'est le fruit de luttes historiques. Quant à l'islam, il n'a pas encore connu cette transformation, en grande partie en raison de la légitimité que certains dirigeants moyenâgeux tirent de la religion pour maintenir leur pouvoir (Iran, Arabie Saoudite...).
Ces dirigeants financent des mouvements radicaux et des mosquées en France pour propager une vision extrémiste de l'islam. De plus, certaines puissances mondiales continuent de soutenir ces régimes moyenâgeux en raison de leurs intérêts pétroliers. Tant que la situation au Moyen-Orient ne changera pas, les tensions en France risquent de perdurer, et les gouvernements incompétents en tiront toujours profite.
J'ai testé une heure ou deux ce jeu très attendu et mon sentiment reste mitigé:
qualités techniques oblige, le jeu est très lent... mais TRÈS lent sur ma config moyenne. Chargements longuets, ralentissements prononcés même pour entrer dans le menu (on parle d'un jeu qui se fige cinq ou six secondes)... ➜ difficile à jouer sans une config de ouf... (bon, j'ai pas tripatouillé les réglages, mais je jouais en qualité minimum et d'autres jeux récents tournent sans problème)
Même au minimum, il reste assez beau, malgré un rendu un peu baveux en qualité faible... toutefois, je ne suis pas le meilleur juge: je viens de rejouer à New Vegas sans déclencher de conjonctivite. Et tout est là: la beauté suffit-elle à un bon jeu...
Un peu comme Skyrim à sa sortie, l'interface, pensée pour les consoles, reste plutôt peu intuitive et pertinente sur PC: je n'en suis pas arrivé à mémoriser suffisamment les parties et sous-menus pour en saisir la logique et parvenir à les utiliser naturellement. Soyons clairs, c'est peu logique et la friction d'utilisation reste importante.
Le pilotage de vaisseau est [très] peu intuitif également: trop de touches, des choix de commandes étranges (répartition de l'énergie ... dafuck) ➜ à vouloir être original on peut y perdre le joueur lambada
Les codeurs auraient pu s'inspirer d'un No Mans Sky pour le pilotage d'un vaisseau: entrée / sortie de l'atmosphère plus logique et immersive (dans mes souvenirs), pilotage plus simple et intuitif...
Au-delà de ces considérations, on retrouve la même impression d'un jeu de chez Bethesda... Ambiance, exploration, looting, combats: on se sent dans un Fallout/Skyrim like... Pour le meilleur ou pour le pire selon le joueur et ses habitudes de jeu.
Attention
Mon expérience du jeu se limite à moins de deux heures, en plusieurs fois, avec des interruptions la plupart du temps et sur une version crackée sortie presque en même temps que l'original... pas des conditions de fifou pour un test objectif...
Conclusion TRÈS provisoire
Si je trouve le temps, je testerai des réglages différents pour limiter les ralentissements et je lui donnerai sa chance, comme je l'avais fait pour Skyrim à l'époque - qui souffrait de travers semblables. Sinon, j'attendrai dix ans pour y jouer de façon fluide et moddée de ouf.