La version 4.19 d’Unreal Engine

La ver­sion 4.19 devrait faire le bon­heur de ceux qui s’intéressent à la Réal­ité aug­men­tée avec la mise en œuvre effec­tive d’un frame­work unifé (Google/Apple). On notera aus­si l’apparition d’un tem­po­ral Upsam­pling qui vien­dra com­pléter le spa­tial Upsam­pling, un peu dif­fi­cile à résumer en quelques mots… dis­ons qu’il devient pos­si­ble d’utiliser des réso­lu­tions inférieures à l’affichage pour le cal­cul, tout en prenant en compte des réso­lu­tions inter­mé­di­aires pour les effets comme l’antialias, le bloom, etc. Il y a aus­si le change­ment dynamique de réso­lu­tion sur con­sole, une évo­lu­tion du livelink par­ti­c­ulière­ment intéres­sante pour ceux qui utilisent Maya, des amélio­ra­tions coté Séquenceur et Blue­print d’animation, avec notam­ment plus de con­trôle sur les vête­ments, et la partage d’animations faciales, une alter­na­tive inté­grée à Sim­ply­gon et un tas d’autres choses que je vous laisse décou­vrir juste après.

ÉDITEUR ET CŒUR DU MOTEUR 3D

Encryption/Signing Key Gen­er­a­tor

Il est doré­na­vant pos­si­ble de con­fig­ur­er com­plète­ment la sig­na­ture et le cryptage des fichiers .pak à par­tir de l’éditeur via un seul pan­neau de paramètres unifiés. Ces fonc­tion­nal­ités peu­vent désor­mais être con­trôlées dans Paramètres du pro­jet, sous la sec­tion Pro­jet, dans le pan­neau Cryp­to.

À par­tir de ce pan­el, il est pos­si­ble de génér­er ou de sup­primer des clés pour la sig­na­ture ou le cryptage, ain­si que d’activer ou dés­ac­tiv­er les dif­férents types de sig­na­ture et de cryptage disponibles. Les fonc­tion­nal­ités suiv­antes peu­vent être activées ou dés­ac­tivées à par­tir de ce menu:

  • Encrypt Pak .ini Files — Crypte tous les fichiers .ini présents dans les fichiers .pak du pro­jet. Cela empêche l’extraction facile ou la fal­si­fi­ca­tion des don­nées de con­fig­u­ra­tion pour votre pro­duit, à un coût d’exécution min­ime.
  • Encrypt Pak Index — Crypte l’index de fichi­er pak, ce qui empêche Unre­al­Pak d’ouvrir, de visu­alis­er et de décom­press­er les fichiers pak de votre pro­duit, à un coût d’exécution min­ime.
  • Crypter les fichiers UAs­set — Crypte les fichiers uas­set dans le fichi­er pak. Les fichiers uas­set con­ti­en­nent des infor­ma­tions d’en-tête sur les act­ifs à l’intérieur, mais pas sur les don­nées réelles elles-mêmes. Le chiffre­ment de ces don­nées four­nit une sécu­rité sup­plé­men­taire à vos don­nées, mais ajoute un petit coût d’exécution et une aug­men­ta­tion de l’entropie des don­nées, ce qui peut avoir un impact négatif sur la taille des cor­rec­tifs.
  • Crypter les ressources — Crypte com­plète­ment tous les biens dans le fichi­er pak. Notez que ce paramètre a un effet mesurable sur les per­for­mances d’E / S des fichiers d’exécution et aug­mente la quan­tité d’entropie dans vos don­nées finales, ce qui rend le sys­tème de cor­rec­tion de dis­tri­b­u­tion moins effi­cace.

Wor­flow : dossiers favoris

Un dossier par­ti­c­uli­er peut être mar­qué dans votre nav­i­ga­teur de con­tenu en tant que «favori» pour le ren­dre facile­ment acces­si­ble!

La sec­tion “Favoris” du nav­i­ga­teur de con­tenu peut être activée / dés­ac­tivée à l’aide des options d’affichage pour Affich­er les favoris. Cette fonc­tion est activée par défaut.

Opti­mi­sa­tion de l’espace disque:  Plusieurs out­ils ont été mis en place pour per­me­t­tre d’analyser plus effi­cace­ment les tailles des pack­ages.

RENDU, MATÉRIAUX, POST-PROCESS

Une nouvelle méthode de sur-échantillonage temporel (Temporal Upsampling) 

Pour bien com­pren­dre ce dont il s’agit, je vais devoir vous intro­duire le Screen Per­cent­age : c’est une tech­nique util­isée pour faire du ren­du à une réso­lu­tion inférieure ou supérieure à celle qui est présen­tée. On par­le de % par rap­port au ren­du affiché.

Avant la ver­sion 4.19, il s’agissait de mod­i­fi­er ce coef­fi­cient. Main­tenant, il y a deux types de coef­fi­cients:

  1. Le pri­ma­ry Spa­tial Upscal­ing : On effectue un ren­du à une réso­lu­tion plus faible, puis on effectue un upscale avant que l’UI ne soit affichée. C’est un agran­disse­ment, un upsam­pling (de sam­ple, échan­til­lon, et up pour sur-échan­til­lon­nage).
  2. Le sec­ondary Spa­tial Upscal­ing: on réalise une sec­onde passe d’Upscale, mais indépen­dam­ment de la pre­mière.

Si on effectue un ren­du avec un coef­fi­cient supérieur à 100%, on dimin­ue la réso­lu­tion de l’image pour l’affichage, c’est ce qu’on appelle du super-sam­pling.

SpatialUpscale.png

Les dif­férents cal­culs dans le pipeline de ren­du sont réal­isés juste avant l’User Inter­face. Cela sig­ni­fie que le Bloom, le Motion Blur, etc. — tout cela est réal­isé sur une image de plus basse réso­lu­tion, et c’est l’ensemble qu’on “grossit” pour l’affichage.

La qual­ité de l’Upscale se règle avec la vari­able Spa­tial Upscale Qual­i­ty, cor­re­spon­dant à dif­férents niveaux (0=Nearest Fil­ter­ing, 1=Simple Bilin­ear , … 5 =36-tap Gauss­ian-fil­tered unsharp mask). Le niveau 5 étant très cou­teux en ressources, mais don­nant de bons résul­tats quand les % sont assez faibles — on par­le alors d’extrem upsam­pling.

Bon pour l’instant, on ne par­le que de “spa­tial”, c’est à dire de réso­lu­tion, de dimen­sion d’espace. Alors, c’est quoi ce tem­po­ral dans le titre ?

Intro­duisons le “Tem­po­ral Anti-Alias­ing Upsam­ple” (TAA Upsam­ple). On est tou­jours dans la passe pri­maire. Au final, plutôt que de tra­vailler dans la réso­lu­tion inférieure, on va faire le upscale et tra­vailler dans la réso­lu­tion supérieure. Cela donne:

SpatialAndTemporalUpsample.png

De fait, l’antialiasing, le Motion Blur, le Bloom, le tonemap­per… tout cela béné­fi­cie de plus d’éléments pour le cal­cul et effectue donc un ren­du de meilleur qual­ité.

Voici l’exemple ci-dessous de ce que cela représente :

1 — Upsam­ple tem­porel activé; 2 — Sous-échan­til­lon tem­porel dés­ac­tivé

Pour que l’upsampling puisse don­ner de bons résul­tats, il faut que l’upsample puisse accéder à une meilleure réso­lu­tion de tex­turage de l’objet — et cela, c’est le Mip Map­ping, c’est à dire le fait que plus un objet est loin et petit, et plus on va utilis­er une tex­ture de petite réso­lu­tion — tout cela est automa­tique bien enten­du. Pour qu’un mate­r­i­al puisse automa­tique switch­er de réso­lu­tion lors du TAAU, il fau­dra que cette case soit cochée:

Mais pour des tex­tures dites “haute-fréquence”, c’est à dire à change­ment rapi­de de con­traste (comme le gril­lage ci-dessus), cela peut don­ner un effet de scin­tille­ment et il est alors recom­mandé de décocher cette case.

Ceci m’amène à vous par­ler du Sec­ondary Spa­tial Upscale. Il est réal­isé après la passe “TAAU”. On com­prend mieux avec le sché­ma:

La réso­lu­tion de tout ce qui suit la TAAU n’est pas oblig­a­toire­ment cette qui sera util­isée au final. C’est une façon d’améliorer, mais en ayant un curseur.… plus on s’approche de la réso­lu­tion d’affichage et plus l’effet sera joli, mais plus il sera cou­teux. Ain­si, le sec­ond Spa­tial Upscale inter­vient après le Tonemap­per, juste avant l’UI.

A cela, il faudrait ajouter la den­sité de pix­el pour la VR, mais je vous ren­voie pour cela à cette page.

Le physical light units

Il s’agit de pou­voir gér­er toutes les sources de lumières en util­isant des unités physiques (lumens et can­de­las) — cer­taines sources étaient bien définies, mais d’autres util­i­saient des unités spé­ci­fiques à UE4. La com­pat­i­bil­ité ascen­dante est assurée, mais désor­mais, ces car­ac­téris­tiques physiques sont disponibles sur chaque source de lumière, ain­si que sur l’éclairage glob­al de la scène.

Pro­jet cour­toisie de Litrix

MATÉRIAUX

Vous pou­vez main­tenant enreg­istr­er les valeurs des paramètres dans une nou­velle instance enfant ou dans une nou­velle instance de fratrie dans l’éditeur de matéri­aux et dans l’éditeur d’instance de matéri­au!

Save to Sib­ling Instance” per­met d’enregistrer les paramètres et les rem­place­ments actuels dans une nou­velle instance Mate­r­i­al avec le même matéri­au par­ent.
Save to Child Instance dans l’instance enfant per­met d’enregistrer les paramètres et les sub­sti­tu­tions en cours dans une nou­velle instance de matéri­au prenant l’instance actuelle comme matéri­au par­ent.

Pour mod­i­fi­er les valeurs par défaut

Mate­r­i­al Lay­er­ing (sup­per­po­si­tion de matéri­aux) (expéri­men­tal)

La super­po­si­tion de matéri­aux per­met de com­bin­er les matéri­aux dans une pile, en util­isant les nou­veaux assets Mate­r­i­al Lay­er et Mate­r­i­al Lay­er Blend! Cela per­met de créer un graphe matériel cor­rect sans faire manuelle­ment des sec­tions de nœuds. Cette fonc­tion­nal­ité est sim­i­laire à Mate­r­i­al Func­tions, mais prend en charge la créa­tion d’instances enfant.

Pour l’activer: Project Set­tings > Ren­der­ing > Exper­i­men­tal en définis­sant sur vrai Sup­port Mate­r­i­al Lay­ers

ANIMATIONS, SEQUENCER

Améliorations du SEQUENCEUR

Il est désor­mais pos­si­ble de copi­er / coller / dupli­quer des pistes d’objet et leurs pistes enfants à par­tir du menu con­textuel. Il est main­tenant pos­si­ble de copi­er d’une ani­ma­tion UMG à une autre.

Lev­el Sequence Dynam­ic Trans­form Ori­gin: Ceci per­met de chang­er dynamique­ment le World Off­set, l’origine d’une ani­ma­tion dans le séquenceur et de pou­voir réu­tilis­er des séquences dans d’autres espaces de coor­don­nées, dans une autre scène par exem­ple Pour activ­er cette pos­si­bil­ité, il faut activ­er “Over­ride Instance Data then assign a Trans­form Ori­gin Actor”.  Le fonc­tion­nement est illus­tré dans cette courte vidéo;

Chaque fois que nous appuyons sur une touche (voir ci-dessus), le cube se déplace et notre actor con­tin­ue de marcher le long d’un chemin, à par­tir de l’emplacement de l’actor d’origine de trans­for­ma­tion.

Sequencer Anim BP Weight Con­trol: le Sequencer weight blend­ing fonc­tionne main­tenant avec les Ani­ma­tions Blue­prints. Vous pou­vez utilis­er le même emplace­ment pour l’animation et con­trôler la taille par une courbe. Affectez le même Solt Name dans “Prop­er­ties” pour chaque ani­ma­tion à fusion­ner. Puis effectuer un keyframe sur les valeurs de poids. Dans l’anim BP, utilis­er le Slot Node. L’AnimBP utilis­era toutes les valeurs de poids fournies lors de la fusion.

Com­pil­er à la volée :  Sequencer est main­tenant capa­ble de com­pil­er des mod­èles d’évaluation par­tielle­ment ou com­plète­ment périmés à par­tir des don­nées sources, per­me­t­tant une com­pi­la­tion beau­coup plus effi­cace.

VISAGES:  Amélioration du partage d’animations faciales en utilisant des Curve only animations

Le partage d’animations faciales a été sim­pli­fié. Il est pos­si­ble d’animer les vis­ages en util­isant une courbe et cela, sans avoir à faire une trans­for­ma­tion du squelette. Il est donc pos­si­ble d’utiliser une même ani­ma­tion faciale pour plusieurs per­son­nages :

Pour y accéder, option “Remove All Bone Tracks” du menu Asset sousr Ani­ma­tion.

Le mod­ifi­ca­teur d’animations peut être utile pour sup­primer cer­taines artic­u­la­tions afin de partager des ani­ma­tions de corps. L’ajout des fonc­tions Remove Bone Ani­ma­tion sup­prime une courbe d’animation par nom de la séquence d’animation don­née.

Amélioration des blueprints d’animation

  • Pos­si­bil­ité de con­trôler si l’instance de post-traite­ment s’exécute ou non sur un com­posant de mail­lage squelet­tique à la fois dans Blue­prints et dans la suite de l’éditeur d’animations
  • Le nœud copy pose prend main­tenant en charge les courbes de copie ain­si que la trans­for­ma­tion de bone — Pour utilis­er cette option , il faut activ­er bCopy­Curves, il va copi­er les courbes exis­tantes dans le squelette actuel. Si la liste de courbes a changé, le sys­tème d’animation doit être réini­tial­isé.
  • Ajout d’un aver­tisse­ment lors de la lec­ture d’une ani­ma­tion sur une pose addi­tive: quand une ani­ma­tion non addi­tive est con­nec­tée à la broche addi­tive d’un noeud d’animation addi­tif (comme Apply Addi­tive), un aver­tisse­ment s’affiche dans le jour­nal des mes­sages avec Ani­ma­tion et Nom du Blue­print.
  • Sélec­tion Native Ani­mIn­stance sur Skele­talMesh­Com­po­nent — Autorise les instances d’animation natives à être définies sur les com­posants mail­lés squelet­tiques. Aupar­a­vant, seuls les plans d’animation pou­vaient être défi­nis sur les com­posants de mail­lage squelet­tiques.

Amélio­ra­tion des out­ils d’animation

  • Ajout de la liste de com­man­des Pinnable aux édi­teurs d’animation: cela per­met un accès plus facile aux com­man­des fréquem­ment util­isées. Les listes de com­man­des des édi­teurs d’animations peu­vent être attachées à la vue ;
  • Ajout de 4 fenêtres d’affichage dis­tinctes à toutes les fenêtres de l’éditeur d’animations — cha­cune avec ses pro­pres paramètres.
  • Ajout de la pos­si­bil­ité de s’accrocher et tourn­er autour d’un os en par­ti­c­uli­er
  • Infor­ma­tions sup­plé­men­taires sur le débo­gage des com­posants de mail­lage squelet­tique
  • Pos­si­bil­ité de chang­er la sec­tion vis­i­ble d’un squelette à la volée: Exposed Show­Ma­te­ri­al­Sec­tion
  • Pos­si­bil­ité de “Mas­quer les broches non con­nec­tées” pour les nœuds Break­Struct de bou­ton
  • Pos­si­bil­ité de nom­mer des formes de col­li­sion

PHYSIQUE ET PARTICULES

Anim Drive sur l’outil Cloth (VETEMENTS)

La nou­velle fonc­tion “Anim Dri­ve” ajoute un con­trôle via les Blue­prints pour créer des inter­ac­tions avec la physique des vête­ments, per­me­t­tant ain­si, par exem­ple, de simuler des ressorts qui tirent les vête­ments.

  • Prise en charge du con­trôle de la grav­ité pour les sim­u­la­tions de vête­ments — L’utilisation de l’interactor object sur un com­posant de mail­lage squelet­tique per­met de spé­ci­fi­er une pri­or­ité de grav­ité arbi­traire.
  • Ajout de la fonc­tion­nal­ité de auto-range fea­ture aux plages de vue de tis­su — Ajout d’un moyen aux out­ils pour éten­dre ces plages si néces­saire
  • Visu­al­i­sa­tion de vête­ments améliorée — activé lorsque le mode Pein­ture de vête­ments est act­if.
  • Le menu Cloth­ing Cre­ate Menu utilise par défaut l’élément physique de mail­lage squelet­tique

PROGRAMMATION: BLUEPRINT ET C++

Mode Debug

Affichage de la pile d’appels (Call Stack) pour le débo­gage Blue­print

Un con­trôle affichant la pile d’appels Blue­print actuelle a été ajouté au menu Out­ils de développe­ment. Un dou­ble-clic sur les entrées de la pile d’appels focalise le nœud cor­re­spon­dant dans l’éditeur de plan.

Amélio­ra­tions uniques du Blue­print Debug­ging
Le débogueur Blue­print du moteur prend désor­mais en charge les opéra­tions Step Into (F11) , Step Over (F10) et Step Out (Alt + Maj + F11) lorsqu’il est arrêté via un Break­point, ce qui rend les ses­sions de débo­gage plus rapi­des et plus faciles.

Il est aus­si main­tenant pos­si­ble des cass­er les liens avec les macros et les nœuds de graphe.

PAYSAGE / FOLIAGE / GÉNÉRATION PROCÉDURALE

RENDU DES PAYSAGES

Créez des panora­mas à couper le souf­fle dans les grands mon­des ouverts grâce aux opti­mi­sa­tions du ren­du Paysage.

Le ren­du des paysages a été opti­misé. Le niveau de détail (LOD) n’est plus basé sur la dis­tance, mais sur la taille à l’écran pour déter­min­er les détails d’un com­posant, comme le fonc­tion­nement du sys­tème LOD Stell Mesh.

Ce dia­po­ra­ma néces­site JavaScript.

Vous pou­vez visu­alis­er les LOD de paysage en allant dans View­port> Visu­al­iz­ers> LOD

PROXY LOD
Un nou­veau plu­g­in (expéri­men­tal et unique­ment sous Win­dows) de pro­duc­tion de LOD Low Poly est inté­gré, il per­met de pro­duire des mod­èles avec peu de poly­gone, avec des matéri­aux pré­cal­culés pour chaque niveau de LOD. Cela offre une alter­na­tive “inté­grée” à Sim­ply­gon dont nous avons déjà par­lé.

Pour activ­er l’outil, sélec­tion­ner “Hier­ar­chi­cal LOD Mesh Sim­pli­fi­ca­tion” sous Edi­teur dans la boîte de dia­logue Paramètres du pro­jet. À par­tir du plu­g­in LOD Mesh Reduc­tion Plu­g­in, sélec­tion­ner le nou­veau mod­ule “Prox­y­LODMeshRe­duc­tion”. Après le redé­mar­rage de l’éditeur invité, le plu­g­in rem­plac­era l’outil Sim­ply­gon tiers pour les LOD de fusion de mail­lage sta­tiques. Ce nou­veau plu­g­in est acces­si­ble de deux façons: le HLOD Out­lin­er et la boîte de dia­logue Merge Actors.

SONS ET MUSIQUES

Mise à niveau vers Steam Audio Beta 10

  • Prise en charge Android pour la spa­tial­i­sa­tion et l’occlusion
  • Mode Edi­teur pour un accès facile à la fonc­tion­nal­ité Steam Audio
  • Bou­tons pour ajouter et sup­primer des com­posants de géométrie Phonon à tous les acteurs de mail­lage sta­tique
  • Bou­ton pour exporter la scène vers .obj pour le débo­gage
  • Acteur Phonon Scène enlevé en faveur de l’exportation vers le fichi­er

Mis­es à jour audio Ocu­lus (nou­veau moteur audio unique­ment)

En plus de fournir la spa­tial­i­sa­tion HRTF, la réver­béra­tion de mod­éli­sa­tion de pièce d’Oculus Audio avec des paramètres volumétriques aus­si bien que la lec­ture Ambison­ics Source est doré­na­vant prise en charge.

Ajout du plu­g­in audio Res­o­nance (nou­veau moteur audio unique­ment)

Il prend en charge la spa­tial­i­sa­tion bin­au­rale, la réver­béra­tion, la direc­tiv­ité sonore et la lec­ture ambisonique sur Win­dows, iOS, Android, Lin­ux et Mac.

Prise en charge des fichiers Ambison­ics de pre­mier ordre (lec­ture prise en charge via les plu­g­ins)

Les fichiers Ambison­ics peu­vent main­tenant être importés dans des pro­jets Unre­al et lus à l’aide de la sélec­tion Spa­tial­iza­tion plu­g­ins. First-Order Ambison­ics est un for­mat spher­i­cal sur­round. Ceci est utile pour la réal­ité virtuelle où les util­isa­teurs ver­ront des change­ments dans les champs sonores ver­ti­caux en incli­nant la tête ou pour toute autre expéri­ence inter­ac­tive où l’orientation de l’utilisateur per­met des change­ments dans la ver­ti­cale.

Amélio­ra­tions apportées à l’implémentation VOIP native de UE4 (nou­veau moteur audio unique­ment)

meilleure cohérence, notam­ment une meilleure détec­tion du silence sur Win­dows. L’intégration de sources VOIP dans la scène per­met main­tenant:

  • Spa­tial­i­sa­tion
  • Atténu­a­tion de dis­tance
  • Reverb
  • Effets de source per­son­nal­isés

Tout est con­trôlé à l’aide du com­posant de scène UVoipTalk­er.

Nou­veau com­posant de cap­ture de micro­phone (Nou­veau moteur audio unique­ment) (Win­dows unique­ment)

Le com­posant de cap­ture de micro­phone per­met:

  • Ali­men­ta­tion audio directe­ment dans le jeu à utilis­er avec le mélangeur audio
  • Traite­ment audio avec effets de source ou effets de sub­mix­age.

Bien qu’il ne prenne pas en charge l’enregistrement des sor­ties micro directe­ment sur les assets pour le moment, il existe des pos­si­bil­ités pour les développeurs de plu­g­ins tiers de tir­er par­ti des don­nées d’une entrée micro­phone.

RÉALITÉ VIRTUELLE ET AUGMENTÉE (VR/AR)

Un Framework unifié pour la REALITE AUGMENTEE

Vous savez que sur Android, l’utilisation de la RA passe par Google ARCore. Mais sur iOS, c’est ARK­it d’Apple. Les deux frame­works se pro­gram­ment dif­férem­ment et n’ont pas exacte­ment les mêmes fonc­tions, ni le même com­porte­ment. De fait, on est heureux de pou­voir compter un frame­work unififé coté UE4 qui nous masque ces dif­férences juste­ment, et nous per­met ain­si de dévelop­per des applis et des jeux en réal­ité aug­men­tée qui vont tourn­er sur les deux envi­ron­nements avec très peu de mod­i­fi­ca­tions.

L’ensemble des out­ils pour dévelop­per ce type d’application passe donc désor­mais par une librairie unique. Cela inclut les fonc­tions sup­por­t­ant l’alignement, les effets de lumière, le pin­ning, le track­ing, etc.

Un nou­veau tem­plate Blue­print Hand­hel­dAR a aus­si été mis en place. Il four­nit un exem­ple com­plet de pro­jet démon­trant les nou­velles fonc­tion­nal­ités.

Il y a un livestream qui en par­le, j’y reviendrai peut-être dans un prochain arti­cle ou une vidéo:

Les motion controllers

Live Link Motion Con­troller Assis­tance

Live Link peut main­tenant être util­isé avec les Motion Con­trollers. La posi­tion du com­posant Motion Con­troller est gou­vernée par la pre­mière trans­for­ma­tion du sujet sélec­tion­né dans Live Link. Il faut dériv­er un nou­veau Blue­print à par­tir de Motion­Con­troller­Com­po­nent et de sur­charg­er la fonc­tion OnMo­tion­Con­trollerUp­dat­ed . Voici un exem­ple de façon pos­si­ble de pilot­er une inten­sité de com­posants légers à par­tir d’un paramètre Inten­sité dans Live Link:

Visu­al­i­sa­tion des com­posants de Motion Con­troller
Les con­trôleurs de mou­ve­ment ont main­tenant une nou­velle visu­al­i­sa­tion afin de leur ajouter rapi­de­ment un mod­èle d’affichage Sta­t­ic Mesh. Par défaut, le sys­tème tente de charg­er un mod­èle de mail­lage sta­tique cor­re­spon­dant au périphérique qui pilote le Motion Con­troller.

Support Vive Pro

Le con­tenu UE4 exis­tant prenant en charge SteamVR est doré­na­vant com­pat­i­ble avec Vive Pro! Aucune mod­i­fi­ca­tion n’est néces­saire pour utilis­er le Vive Pro avec tout pro­jet UE4 exis­tant, mais il faut véri­fi­er les per­for­mances de chaque pro­jet UE4 avec le Vive Pro et opti­miser en con­séquence car le Vive Pro fonc­tionne à une réso­lu­tion plus élevée.

INTELLIGENCE ARTIFICIELLE

MOBILES, CONSOLES ET HTML5

Résolution dynamique

La réso­lu­tion dynamique pour con­soles (PS4 et XBox One, autres dans une ver­sion ultérieure). Le principe reste sim­ple, pour assur­er un fram­er­ate, c’est à dire, un nom­bre d’images par sec­on­des, fixe, la réso­lu­tion des images est mod­i­fiée dynamique­ment. On peut l’activer ou non via:

GEngine->GetDynamicResolutionState()->SetEnabled(true/false)

synchronisation de frame à faible latence

Tou­jours coté con­soles( Xbox One et PS4), le mode de syn­chro­ni­sa­tion de frame à faible latence mod­i­fie la façon dont la syn­chro­ni­sa­tion des threads est effec­tuée entre le jeu, le ren­du, les threads RHI et le GPU- ce qui per­met de réduire la latence coté inputs.

Les effets de la syn­chro­ni­sa­tion de trames à faible latence peu­vent être con­trôlés à l’aide de la vari­able de con­sole r.GTSyncType. Cette vari­able autorise les valeurs suiv­antes:

  • 0 — Le thread du jeu se syn­chro­nise avec le thread de ren­du (ancien com­porte­ment, et par défaut)
  • 1 — Le thread du jeu se syn­chro­nise avec le thread RHI (équiv­a­lent à UE4 avant le ren­du par­al­lèle)
  • 2 — Le fil du jeu se syn­chro­nise avec la chaîne d’échange présente +/- un décalage en mil­lisec­on­des (disponible unique­ment sur les plates-formes sup­port­ées, et ne fonc­tionne que si la syn­chro­ni­sa­tion est activée)

SDK

Le moteur prend en charge les dernières mis­es à jour de SDK de tous les parte­naires.

  • Ver­sion IDE 
    • Visu­al Stu­dio:  Visu­al Stu­dio 2015 mise à jour 3
    • Xcode:  Xcode 9.2
  • Android:  
    • NDK 12b (Le nou­veau pro­gramme d’installation de Code­Works pour Android 1r6u1 rem­plac­era Code­Works pour Android 1R5 avant la pub­li­ca­tion, tou­jours sur NDK 12b)
  • HTML5: chaîne d’outils emscripten à 1.37.19
  • LIn­ux: v11_clang-5.0.0-centos7
  • Vapeur: 1.39
  • Durée des yeux: 1,17
  • SteamVR: 1.39
  • Com­mu­ta­teur: 3.7.0 avec NEX: 4.3.1 (fac­ul­tatif), 4.5.0 avec NEX 4.3.1 (fac­ul­tatif); Ver­sion du micro­logi­ciel 3.0.1–1.0
  • PS4:
    • 5.008.071
    • Firmware Ver­sion 4.730.001
    • IDE pris en charge: Visu­al Stu­dio 2015, Visu­al Stu­dio 2013
  • Xbox One (XB1, XB1-S, XB1-X):
    • XDK: Juin 2017 QFE9
    • Ver­sion du firmware: octo­bre 2017 Pre­view 3 (ver­sion 16291.1000.170913–1900)
    • IDE pris en charge: Visu­al Stu­dio 2017, Visu­al Stu­dio 2015
  • macOS: SDK 10.13
  • iOS: SDK 11
  • tvOS: SDK 11

Ios: sig­na­ture automa­tique de code 
La sig­na­ture automa­tique de code (ACS) lors de l’utilisation de Xcode a été intro­duite. Cela fonc­tionne égale­ment quand il n’y a aucune dis­po­si­tion de mobile pré-instal­lée sur le Mac mais le Mac doit con­tenir les cer­ti­fi­cats.

IMPORTS ET LOGICIELS TIERS

Live Link Maya

Divers­es amélio­ra­tions sur le sys­tème de live link, avec notam­ment des plu­g­ins live link Maya et plu­g­in Motion­builder.

Les mod­i­fi­ca­tions réal­isées sous Maya sont ain­si directe­ment vis­i­ble sous l’éditeur UE4 comme en témoigne cette vidéo:

La fenêtre de l’interface util­isa­teur Maya Live Link peut être activée via la con­sole MEL avec la com­mande May­aLiveLinkUUne fois activé, il faut copi­er les fichiers binaires asso­ciés à votre ver­sion de Maya dans le dossier Maya Plu­g­ins et l’activer via le ges­tion­naire de plu­g­ins Maya.

Stream Active Cam­era: Même les manip­u­la­tions sur la caméra active sous Maya auront une inci­dence sur celle de l’éditeur. Cer­tains bogues ont été égale­ment cor­rigés (con­cer­nant le rig facial par exem­ple).

Conclusion

Voilà, comme tou­jours, pas mal de nou­veautés — des heures de tests en per­spec­tive et tou­jours un besoin impor­tant de con­tin­uer à s’autoformer dans le domaine. Vous trou­verez plus d’informations comme tou­jours dans le thread d’origine. Je com­mence à me deman­der s’il ne serait pas intéres­sant de réalis­er des ate­liers de for­ma­tion prenant en compte les prin­ci­pales évo­lu­tions de chaque ver­sion du moteur… dites-moi ce que vous en pensez en com­men­taires, mais ce serait une façon intéres­sante, à moin­dre frais, de se tenir vrai­ment à jour, car der­rières le descrip­tif, il y a un savoir-faire à acquérir, et sans pro­jet “sam­ple”, ce n’est pas tou­jours évi­dent.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.