[TUTO] Tutorial (roman) sur l'optimisation. Bonne lecture :D

Ce forum regroupe tous les tutoriaux réalisés par des membres de Mapping-Area pour Half-Life 2.

Modérateurs: Co-Admin, Modérateur, Staff

[TUTO] Tutorial (roman) sur l'optimisation. Bonne lecture :D

Messagede NykO18 le 07 Avr 2005, 21:02

EDIT DU 30/08/2006
Version 1.5.0 du tutorial qui en profite pour gagner encore 20 pages type Word (100 au total maintenant :s).
Je suis toujours aussi aware quand à mieux expliquer quelque chose que vous comprenez pas et/ou ajouter des nouveaux trucs.

Code: Tout sélectionner
v1.5.0 (30/08/2006)
- Ajout de contenu pour aider à la compréhension des vis-leafs
- Ajout d'une section "Temps de compilation"
- Reformulation de la section sur l'env_fog_controller
- Ajout d'un mode d'affichage pour imprimer la page
- Ajout d'un 2ème exemple classique sur les hints
- Ajout d'un 3ème exemple sur les hints
- Correction des précisions sur la commande mat_wireframe
- Ajout d'une section sur le Start/End Fade Pixels
- Ajout de précisions sur les func_occluder
- Ajout de commandes console pour manipuler le brouillard dans le jeu
- Ajout de commandes console pour aider à l'optimisation
- Correction de multiples fautes


--------------------------------------------------

ET VOILA !
Pas mécontent d'avoir terminé.
J'ai pas vraiment envie d'introduire le tuto, ca parle d'optimisation quoi.. extrait :
Code: Tout sélectionner
Le but de ce tutorial est donc de vous expliquer les rudiments de l'optimisation sous HL². Il est possible que certaines techniques fonctionnent sous HL premier du nom, mais ce n'est pas l'objet de ce tutorial. Nous allons tout au long du tutorial commencer par la ou les sources du problème pour finalement en arriver à sa solution.. si tant est qu'elle existe bien entendu :D

Je met à votre disposition la map que j'ai créée pour ce tutorial. Elle contient quelque uns des exemples que j'expose ici ainsi que les techniques pour les hints, areaportals, areaportalwindows, occluders, func_detail et autres.. Si au moins cela peut servir à quelque chose... faites en bon usage.


Je préviens tout de suite ceux qui vont se plaindre de tout et de rien, rendez vous tout de suite à la fin du tutorial : http://hl.logout.fr/?p=optimisation#Conclusion

POUR LES AUTRES, bienvenue dans le monde cruel de l'optimisation..
http://hl.logout.fr/?p=optimisation


Points traités dans ce tutorial :
* Introduction
* I. La compilation
o 1. BSP
o 2. VIS
o 3. RAD
o 4. Temps de compilation
* II. Les Techniques
o 1. Le découpage de la map
+ A. Utilisation de VIS uniquement
+ B. Utilisation de VIS et des Hints
# a. Exemple 1
# b. Exemple 2
# c. Exemple 3
+ C. Utilisation de VIS et de murs invisibles (displacements)
+ D. Voir avec les yeux du compilateur
o 2. L'économie de faces
+ A. Les cylindres & arches
+ B. La fonction Carve et Hollow
# a. Carve
# b. Hollow
+ C. Les func_detail
+ D. La texture nodraw
+ E. Le texturage en général
+ F. La grille de Hammer
o 3. Limiter la visibilité
+ A. Les func_occluder
+ B. Les func_areaportal
# a. Avec l'aide d'une porte
# b. Sans l'aide d'une porte
# c. areaportal brush doesn't touch two areas
# d. Mise en garde
# e. Quelques commandes
+ C. Les func_areaportalwindow
o 4. D'autres techniques
+ A. Les func_lod
+ B. Les Props
+ C. La lightmap
+ D. Les displacements
+ E. Les prop_detail
+ F. Les light_dynamic
+ H. La texture blocklight
+ H. L'overlap : à éviter
+ I. L'eau : un gouffre à FPS
+ J. Start/End Fade Pixels
+ K. Quand tout le reste a échoué : l'env_fog_controller
* III. Comprendre une fois dans le jeu
o 1. Le +showbudget
+ A. Accès
+ B. Signification
+ C. Assigner à une touche
+ D. Mise en garde
o 2. Les commandes console
* Conclusion
Dernière édition par NykO18 le 30 Aoû 2006, 20:27, édité 5 fois.
Avatar de l’utilisateur
NykO18
VIP
VIP
 
Messages: 8253
Inscription: 19 Jan 2005, 22:16
Localisation: Cergy, France

Messagede mind le 07 Avr 2005, 21:58

franchement un grand gg a toi et ta patience

cela va beaucoup me servir surtout les aeroportal :gg :gg
Avatar de l’utilisateur
mind
Co-Admin
Co-Admin
 
Messages: 1455
Inscription: 11 Mar 2005, 07:04
Localisation: Versailles

Messagede Lord Morpheus le 07 Avr 2005, 23:35

J'ai pas tout lu, mais mon imprimante oui :)...

Merci et jolie boulot...
Image
Avatar de l’utilisateur
Lord Morpheus
Half-Mapsteur
 
Messages: 1072
Inscription: 21 Nov 2004, 12:58
Localisation: Dans ton c....

Messagede NykO18 le 07 Avr 2005, 23:39

Lord Morpheus a écrit:J'ai pas tout lu, mais mon imprimante oui :)...

Merci et jolie boulot...

lol héhé :D
Avatar de l’utilisateur
NykO18
VIP
VIP
 
Messages: 8253
Inscription: 19 Jan 2005, 22:16
Localisation: Cergy, France

Messagede KoKo5oVaR le 07 Avr 2005, 23:40

bah, t es dingue .. ^^
Avatar de l’utilisateur
KoKo5oVaR
Idéaliste
 
Messages: 342
Inscription: 05 Sep 2004, 21:29
Localisation: dans la coquille vide

Messagede azura_404 le 08 Avr 2005, 08:00

:^^ :) :D MERCI gars c'est génial !
Je me nomme sans nom...

Image
http://www.eastwestmod.com
Avatar de l’utilisateur
azura_404
Concepteur
 
Messages: 688
Inscription: 30 Jan 2005, 18:09

Messagede Gectou4 le 08 Avr 2005, 11:18

Autre chose, sachez que, quoi qu'il arrive, BSP va découper tous vos blocs toutes les 1024 unités. Peu importe si c'est au beau milieu d'un truc super détaillé, tout sera sauvagement découpé en suivant les lignes vertes de la grille de Hammer. C'est également pour cela qu'il est important d'afficher la grille, car construire un morceau d'architecture fort détaillé sur une telle ligne risque de doubler le nombre de faces.. et ca, c'est pas vraiment compatible avec l'optimisation. Regardez le travai

Enfin j'ai apprit un truc enfin ^^


très belle exemple du lightmap
+showbudgjet :

(Pas certain mais :)
# Server Animation : Server source gérer par le server et rendu au client qui les lis/affiche mais ne les calcule pas (donc seulement jouée)
# Client Animation : Annimation jouer (a caculer) sur le pc du joueur

en claire cela conserne tous ce qui est 'annimé' (généralement un model) mais cela peux s'agire d'un screenoverlay qui ets sune succesion de texture en un point. (qui est aussi compte rdans overlays au passage)


à noté que tu à oublie rpas mal de truc notament l'optimisation VBSP
:^^
mais je fait plus tarde rà écrire les tutos sur le clipin et le cliping ce qui n'est pas la même chose :)

Je regrette que tu es du emprunter pas mal de screen aussi ^^
Mais bon c'est pas le plus important.

il y avait deux trop petite chose que j'avais noté dans un neuronne mais j'ai égaré ce dernier donc je relirais et ferais une note surement complémentaire ^^

plop je mettrais aussi un lien vers ton tuto ^^


Le conseil du ninja
:P keske :@]
au moins je sait maintenant que ça vous a marqué
:lu


edit : tiens j'y repense le 512*512 en découpe plop et le displacement il faut aussi ajouté du faite de ta remarque :
en plus de la découpe en 512*512 ou en 1024*10024 veillez à aligné les displacement avec le quadrillage cela permetra de ne pas implémenter une découpe et donc une modification possible des vertices du displacement. Si leur nombre est modifier certain sommet seront très surement décaller par rapport à ceux auquels ils sont join ou 'sew'
(je te renvoie à mon ptit tuto sur le sew pour comprendre ce que j'essay de dire :d)

mais de ce faite ça permet de pallié à un problème en gardant une bonne technique de mapping (découpe des displacement cela le quadrillage de la grille et en 512*512 ou 1024*1024... Cela n'est que pour els displacement à 'région' un ajout d'une petite bosse ici où là n'à pas lieu de tenir compte de cette remarque :)

edit : j'ai fait un tets pour le moins intéréssant...
j'ai placé des face en hint en qui rnetre dans les bloc ou qui sont espacé...
c'est étrange le résultat est différent de celui de mais dernière map en tets y comprit avec le clip (à croire que valve à modifier le sdk entre temps :p)

bon en gros mon test me surprend car tous les hint sont soit inactif soit inutile, la découpe ne se faisant que selon la texture puis selon les bloc :><:

me dis-je qu'alors il ne découpait plus les leaf mais faisait disparaitre simplement la de la vue les pièces non visible... en faite non.
Les pièces non visible sont calculé jusqu'à se que l'on passe '2 trais' de coupe avant que l'on soit 'dans la dite pièce' où qu'on soit en mesure de la voir... Ainsi tant qu'on voit la fin d'un couloir on passera les trait de découpe. Dés qu'on tourne on vois encore le couloir en viewframe mais dès qu'on passe le deuxième trait de découpe pouf le couloir n'est plus calculé...

:read il faut tout de faut faire attention, le nodraw impose une découpe, c'est pourquoi il peut ou non être utilisé pour imposé des découpe là où on ne peux pas 'désaligné' la texture...

les autres face seront en 'skip'

:><: bon c'est quand même curieux que cette histoire de hint non fonctionnel je vais devoir étudier la question :(
Dernière édition par Gectou4 le 08 Avr 2005, 13:19, édité 1 fois.
Image
Image
Avatar de l’utilisateur
Gectou4
Administrateur
Administrateur
 
Messages: 3599
Inscription: 01 Jan 1970, 03:00
Localisation: Partout ^^

Messagede NykO18 le 08 Avr 2005, 13:15

Gectou4 a écrit:à noté que tu à oublie rpas mal de truc notament l'optimisation VBSP
Je ne peux pas parler de quelque chose que je ne connais pas :lu

Gectou4 a écrit:Je regrette que tu es du emprunter pas mal de screen aussi ^^
Mais bon c'est pas le plus important.
J'vois pas trop là. Aussi loin que je me souvienne, j'ai fais tous mes screens moi même, je suis pas manchot.
(je confirme, je viens de reprendre toutes mes images, elles sont toutes de moi.. :read)

Gectou4 a écrit:plop je mettrais aussi un lien vers ton tuto ^^
C'est gentil de ta part :)

Gectou4 a écrit:au moins je sait maintenant que ça vous a marqué
J'ai particulièrement adoré l'idée du "conseil du ninja", et comme je voyais vraiment pasquoi mettre d'autre, j'ai "emprunté" ton idée :P

Merci de ton commentaire, néanmoins j'aurais aimé que tu ne te contentes pas de dire ce qui manque, mais de m'en parler un peu histoire que je puisse voir à quoi ca correspond :)
Avatar de l’utilisateur
NykO18
VIP
VIP
 
Messages: 8253
Inscription: 19 Jan 2005, 22:16
Localisation: Cergy, France

Messagede Gectou4 le 08 Avr 2005, 13:23

:eu bas j'ai des screen que j'ai vue ailleur notament sur les area portal .. la salle de class et quelque un avec le nodraw... c'est donc que tu à déja fait les tuto ? :><:


voila mon couac sur les hint :

http://alphasis.free.fr/mapping/dev_test_map0003.jpg
http://alphasis.free.fr/mapping/dev_test_map0004.jpg
http://alphasis.free.fr/mapping/dev_test_map0005.jpg

j'ai reprit l'exemple de ton tuto pour ces screens.
j'ai donc placé le hint au niveau du plafond de la séparation.

Toute fois tant qu'on à pas passer la découpe cela calcule la pièce qu'il y est le hint ou non...

C'est la seul découpe à partir de laquel la vue ne permet plus de 'passer de l'autre côté' puisqu'on on est dans "l'ombre du bloc" si il n'y avait cette découpe on calculerai la pièce.
Si il n'y en avait plusieur on ne calculerais plus la pièce à partir d ela première qui est dans "l'ombre' du brush (pas l'ombre projeter j'entend bien ^^)
Dernière édition par Gectou4 le 08 Avr 2005, 13:33, édité 1 fois.
Image
Image
Avatar de l’utilisateur
Gectou4
Administrateur
Administrateur
 
Messages: 3599
Inscription: 01 Jan 1970, 03:00
Localisation: Partout ^^

Messagede NykO18 le 08 Avr 2005, 13:31

Gectou4 a écrit::eu bas j'ai des screen que j'ai vue ailleur notament sur les area portal .. la salle de class et quelque un avec le nodraw... c'est donc que tu à déja fait les tuto ? :><:

LOL
http://www.mapping-area.com/forum/ftopic3551.php
Il aurait été idiot de ma part de ne pas prendre en compte la première version de ce tutorial, qui était également de moi.
Certains passages sont des copier/coller de ce tutorial là, souvent améliorés, mais pas fondamentalement changés.
Par contre, les screen des areaportal, tu peux vérifier en téléchargeant la map que j'ai faite pour le tuto.. Ils proviennent bien de cette map :D
Avatar de l’utilisateur
NykO18
VIP
VIP
 
Messages: 8253
Inscription: 19 Jan 2005, 22:16
Localisation: Cergy, France

Messagede Gectou4 le 08 Avr 2005, 13:40

:P bas on ta ptet piké tes image alors...


Par contre, les screen des areaportal, tu peux vérifier en téléchargeant la map que j'ai faite pour le tuto.. Ils proviennent bien de cette map

:devil mais on peut décompiler les map le savais-tu :@]

:gg allez va c'est pas le sujet le plus important ^^
Image
Image
Avatar de l’utilisateur
Gectou4
Administrateur
Administrateur
 
Messages: 3599
Inscription: 01 Jan 1970, 03:00
Localisation: Partout ^^

Messagede NykO18 le 08 Avr 2005, 13:53

Gectou4 a écrit::P bas on ta ptet piké tes image alors...


Par contre, les screen des areaportal, tu peux vérifier en téléchargeant la map que j'ai faite pour le tuto.. Ils proviennent bien de cette map

:devil mais on peut décompiler les map le savais-tu :@]

:gg allez va c'est pas le sujet le plus important ^^

Je vois mal ou j'aurais trouvé une map rassemblant tous les exemples du tuto en un seul endroit avec des textures "dev" comme j'ai mis..
Et puis de toute façon, c'est clair que je vois pas pourquoi je me justifie lol, c'est mes screens, réalisés avec Ulead PhotoImpact CaptureTool en pressant F11 dans Hammer puis retravaillés. (redimensionnement, 800 > 500, 1024 > 800, puis affinage à cause de la perte de qualité)

D'ailleurs, j'en ai chié pour faire tous ces exemples alors un peu de respect hin :P
Avatar de l’utilisateur
NykO18
VIP
VIP
 
Messages: 8253
Inscription: 19 Jan 2005, 22:16
Localisation: Cergy, France

Messagede Dawa le 08 Avr 2005, 16:30

Nickel Nyko, trés bon boulot, la communauté des mappeurs te le rendra :gg
Avatar de l’utilisateur
Dawa
Concepteur
 
Messages: 526
Inscription: 13 Déc 2004, 23:17

Messagede D@rK-EyE le 08 Avr 2005, 16:34

vraiment ... tres tres tres beau boulot 8-) c'est plus qu'immense ... ton tuto est assez complet et aiderais meme les plus moyens comme moi en mapping :gg encore bravo :lu
Un bon mappeur crée lui même ses models et ses textures, parce que cela forme un tout, une harmonie qui ne peux être réalisé que par une seule personne.
Avatar de l’utilisateur
D@rK-EyE
 
Messages: 3672
Inscription: 15 Aoû 2004, 18:54
Localisation: Corse

Messagede Grippy le 08 Avr 2005, 17:42

Y a pas a dire c'est un très bon tuto qui aidera beaucoup de personnes je pense dont moi... :gg

Ps: j'imprime la chose qui fait 60 pages :D
"Fais moi voir ta gueule de guerrier !!" Sgt Hartmann
Avatar de l’utilisateur
Grippy
Co-Admin
Co-Admin
 
Messages: 1891
Inscription: 14 Jan 2005, 18:48
Localisation: France

Suivante

Retourner vers Cours & astuces

Qui est en ligne

Utilisateurs parcourant ce forum: Yahoo [Bot] et 0 invités