bien

The Run, la dissection du morceau et enfin sa version finale.

posté le 14 March 2008 à 21:17
[img left]http://uppix.net/9/d/0/4ad6d7da9e2f6c6bc7180377c87e9t.jpg[/img]Pour ceux d'entre vous qui ont pu suivre, je bossais sur un morceau depuis Décembre, intitulé The Run, j'ai récemment sortie plusieurs versions. Voici enfin la version finale, masterisée... et avec une fin digne de ce nom.

J'ai énormément travaillé chaque partie et l'évolution du morceau d'un bout à l'autre, bien que le morceau est dédié à mon album personnel du nom de Something Personal, il apparaitra dans la release de Requiem qui devrait sortir prochainement. Pour la partie dissection, The Run c'est :

- 9 minutes 27 de musique
- 24 bits, 48 khz sur le projet
- 16 bits, 44100 khz et VBR 128 / 224 kbps, mp3 lame
- -1.5 db en volume de sortie
- Environ 620 conteneurs midi
- De 9 a 350 notes midi par conteneurs avec une moyenne de 100
- Approximativement 500000 notes
- 3 Guitares différentes, dont deux en simultanées sur la fin du morceau
- 8 Instruments VST
- 2 banques de violons composées respectivements : 18 violons (Sust Hard), 18 violas (Sust Smooth Fast)
- 1 banque de Violoncelles ( Sust accent )
- 1 banque de trompette ( Sust accent )
- 2 banque de Cors (Perf gliss + Sust)
- 7 banques de percussions ( 30 hits, Toms, 3 cymbales différentes, Bombos et Taikos)
- 4 banques de choeurs (Full Chorus, Female alto F, Female alto C, Male Bass S)
- 4 synthes
- 2 Séquenceurs rythmiques
- 3 réverbes à convolution
- 2 plugins de Masterisation / compression
- 8 Equalisation différentes pour les instruments
- 30 automation durant le morceau
- 3 variations de signature
- Tempo de 140 - 4/4 a la base
- Plusieurs dizaines d'heures de travail

C'est très certainement pas parlant pour certains, mais j'avais envie de faire un petit découpage de ce que représentait le travail sur un morceau aussi complexe. C'est toujours marrant. ;)

Voilà, vous avez suivit la vie d'un morceau progressivement. Ne vous inquiétez pas, je continuerais à vous alimenter à ce sujet.

P'ti Tweak Crysis et feedback :)

posté le 27 October 2007 à 14:42
Suite à l'article de Scrapy, j'approfondis le système de Tweak pour Crysis.

Tout d'abord, pour commencer, je reviens à ce que je disais concernant direct x 10 et les nouvelles fonctionnalités du bouzin. Comme on l'avait estimé, certaines choses ne seront pas accessibles aux possesseurs de carte DX9... mais ce sont bien les fonctionnalités propres à directx 10, et non pas tous les petites features graphiques que Crysis présente sous une "hypothétique" exclusivité DX10 alors qu'elle ne le sont pas. Quelles sont-elles ?

- Soft Particles
- Geometry Instancing

Point à la ligne... tout le reste peut être activé sous DirectX9, peut être que les tons chauds gérés par une profondeur de bits plus importante sous les cartes nesktgen dx10 est mieux gérée, mais ce qui est sûr, c'est que cela fonctionne en tout cas sur les cartes précédentes (pas d'artefacts, pas de carrés noirs ou blancs etc...).

Bref pour en revenir au tweak, prennez votre rép de config, vous trouverez ça toujours sur l'article de Scrapy pour les détails.

Primo : On va faire un truc, on prend notre niveau de détails, par exemple, High (on prendra comme référence high en permanence, vous êtes assez malins pour modifier votre niveau de détails comme des grands ;) ), et tout en dessous de la derniere ligne du niveau trop on rajoute "; update moi". Un commentaire pour se rappeler que ce sont des modifs à nous. Si le paramêtre est déjà existant dans la liste mais que l'on veut changer la valeur, on rajoute "; was x" au bout, ou x est l'ancienne valeur... genre :

Version originale du niveau "High"

{3} (ce sont des crochets normalement mais sinon ca passe pas en bbcode)
sys_spec_Quality=3
r_SSAO=1
r_SSAO_quality=1
r_SSAO_radius=1
r_DetailNumLayers=1
e_max_entity_lights=11
r_UsePom=0
r_FillLights = 14
e_particles_lights = 1


Version modifiée du niveau "High"

{3}
sys_spec_Quality=3
r_SSAO=1
r_SSAO_quality=1
r_SSAO_radius=1
r_DetailNumLayers=1
e_max_entity_lights=11
r_UsePom=1 ; Was 0
r_FillLights = 14
e_particles_lights = 1

; Update Moi
e_terrain_ao=1
e_terrain_normal_map=1
r_HDRRendering=2




Bref...
On va commencer par le fichier sys_spec_Shading.cfg qui touche principalement aux shaders, Occlusion lumineuse, parallax and co.

En fin de notre config, on va rajouter ça :

; Update Moi
e_terrain_ao=1
e_terrain_normal_map=1
r_HDRRendering=2
r_DetailTextures=1
r_DetailNumLayers=2
r_DetailDistance=8
r_HDRRendering=2


Et on va modifier notre r_UsePom à 1 : r_UsePom=1 ; Was 0

On ajoute donc, le parallax, l'occlusion ambiante lumineuse sur le terrain, et le normal map sur le terrain, les textures détaillées, augmenter le nombre de layers et améliorer la distance de vue des détails.


Maintenant, options lumineuses : sys_spec_GameEffects.cfg


{3}
g_ragdollMinTime = 13.0
g_ragdollDistance = 30.0
g_battleDust_enable = 1 ; Was 0
; Update Moi
i_lighteffects = 1


On ajoute les effets de lumières supplémentaires. Je n'ai pas réellement trouvé ce qu'était Battledust... peut être est-ce localisé aux zones aliens ou a certains environnements, dans le doute on le désactivera plus tard, si c'est présent tout le temps, et si peu visible autant gagner en perfs.


Options postprocessing : sys_spec_PostProcessing.cfg


{3}
r_DepthOfField=2 ; was 1
r_sunshafts=1 ; was 0
r_MotionBlur=1
r_colorgrading=0
r_GlowScreenMultiplier = 0.2
; Update Moi
r_Coronas=1
r_Flares=1


On met le dof à 2... plus précis et joue dans certains cas de figure quand on se fait toucher apparemment. Je l'ai désactive par la suite (remis à 1), la différence est tellement minime que ça ne vaut pas le coup. Sunshaft, les rayons de lumières par occlusion, généralement cela se voit a travers les arbres, mais aussi a travers des barrières, des choses comme ça. Bref, on l'ajoute. Coronas et flares, on ajoute aussi, cela fait des auréoles assez mignonnes autour des sources lumineuses.

Si il y a des gens qui n'arrivent pas a supporter le blur (c'est con parceque ça fait vraiment bien), r_MotionBlur => 0.

Options Effets volumétriques : sys_spec_VolumetricEffects.cfg


{3}
r_BeamsDistFactor=0.5
r_BeamsMaxSlices=64
; Update moi
r_Beams=3
e_Clouds=1
r_CloudsUpdateAlways=0


On ajoute les rayons de lumières, les nuages, et un système d'update des nuages... que je vais probablement désactiver vu que je ne connais pas l'impact. On laisse le maxslices à 64. Vu que Crysis gère le geometry instancing, je ne sais pas si il l'utilise sur tout, mais ce qui est sur, c'est que 64 est amplement suffisant pour un rendu optimal, sans perdre trop en perfs.


Options pour les trucs mouillés : sys_spec_Water.cfg

{3}
e_water_tesselation_amount=7
r_WaterUpdateFactor=0.05
r_WaterUpdateDistance=1
r_WaterReflectionsQuality=2
e_water_ocean_fft=0
q_ShaderWater=2
r_WaterReflectionsMinVisiblePixelsUpdate = 0.05
; Update Moi
r_WaterRefractions=1
r_WaterReflections=1


On ajoute réfractions et réflections.



Voila a peut près toutes les modifs que j'ai effectué, il ne reste plus qu'à savoir ce qui vous intéresse. Cela permet de mettre par exemple, juste le parallax sans les rayons de lumières, ou inversement. En fonction des gouts de chacun, et surtout en fonction de l'impact sur les performances que ça a.

A mon avis, copier coller les paramètres ULTRA dans high, il ne vaut mieux pas y penser, de part la perte en performance liée aux cartes nouvelle gen qui gèrent 100 fois plus de shaders et de polygones, par contre activer certaines choses ne fait pas trop chuter les performances.

En 1280*960, no AA, avec ces nouveaux paramètres et un X1950XTX, Quad Core, 4Gigs de ram... je suis passé de 40 frames stable à 30. Cela reste amplement jouable, surtout avec le motion blur qui fluidifie réellement le tout.


Pour ce qui est du feedback, que dire ? FarCry puissance 2... probablement, on peut pas en dire grand chose de plus, l'IA a été améliorée, les possibilités liées au moteur physique sont excellentes, la nanosuit ajoute du sel aux épinards et la liberté reste totale. OMAGAD ! Plus d'hélicos quand on va un peu trop loin.

Les améliorations notables aussi : la gestion de l'occlusion visuelle pour l'IA. Planquer correctement dans un buisson dense après avoir tenté de semer un mercenaire au détour d'une case, le gars cherche votre position et ne vous débusque pas comme Clark Kent qui viendrait de découvrir sa vision à Rayon X. On sent quelques faiblesses parfois, mais c'est globalement excellent. Le moteur on ne va pas s'attarder, c'est une simple tuerie. Les visages des coéquipiers étaient pour moi retouchés plus ou moins sous les vidéos, je ne pensais pas que cette qualité serait atteinte ingame... apparemment si, et ça fait bien plaisir.

Pour finir, oui crysis à sa place de hit 2007/2008... aussi bien technologiquement que... gameplayement ;)