Ce cours est visible gratuitement en ligne.

J'ai tout compris !
Reflets sous HL1

Reflets sous HL1

Mis à jour le mardi 29 octobre 2013

Dans ce tutorial je vais vous apprendre à créer des effets de reflets. Bien évidement ça ne sera pas aussi beau que sous HL² mais ça peut quand même faire de beaux effets!

Allez c'est partit!! ^^

Les reflets du sol

Nous allons commencer par voir comment réaliser un sol qui reflète l'environnement.

Pour commencer, créez une salle comme ceci:

Image utilisateur

Ensuite, il faut "modéliser" le reflet. Pour cela il suffit de remapper la sale à l'envers sous le sol qui sera rendu transparent.
Voilà le résultat sans le sol:

Image utilisateur

Il nous reste plus qu'a rendre le sol transparent. Sélectionnez-le et transformez-le en func_wall.
Réglez les paramètres comme ceci:

Render Mode: Texture
FX Amount: 120

Au niveau des lumières, mettez le même nombre de lights dans les deux cotés pour éviter que le reflet soit plus sombre ou éclairé et inversement.

Voici le résultat sous le jeu:

Image utilisateur

Notez que les persos (monstres, scientifiques...) et les armes ne sont pas reflétés ainsi que le joueur lui-même. Le sky ne sera pas reflété non plus, cette technique est donc plutôt conseillée pour les intérieurs.

Voilà pour ce qui est du reflet du sol. Passons maintenant à l'effet de miroir.

Effet de miroir

Nous allons à présent voir comment réaliser un effet de miroir. Bien évidement, le joueur ne sera pas reflété dedans ni les monstres, scientifiques et armes.

Créez votre salle, avec un trou à l'emplacement du miroir. Ensuite, comme pour le reflet du sol, recréez la salle de l'autre coté du mur qui portera le miroir, comme ceci:

Image utilisateur

Créez ensuite un bloc dans le trou du miroir avec une texture de vitre et rendez-la transparente.

Voilà le résultat après compilation:

Image utilisateur

Pas mal non? :)

Bien évidement, la vitre ne doit pas pouvoir être brisée car le décor derrière sera toujours là et ça fera un effet bizarre...

Passons aux reflets de l'eau maintenant!

Reflets de l'eau

Nous allons voir comment réaliser un effet de reflet dans de l'eau. Cette technique est pratiquement la même que pour le reflet du sol.

Pour l'exemple, je vais dire que ma salle a été inondée.
Reprenons notre salle avec le reflet du sol:

Image utilisateur

Je vais à présent rajouter au-dessus du sol un bloc "func_water" avec une texture d'eau:

Image utilisateur

A ce moment, vous avez 2 solutions: soit vous avez une eau qui reflète un peu et donc on voit le sol, soit l'eau reflète beaucoup et le sol est invisible.

Pour la première solution, il suffit de reprendre la salle avec le reflet du sol, rajouter un bloc d'eau au dessus, rendre transparent l'eau et le tour et joué!
Ca donnera un résultat comme ceci:

Image utilisateur

Pour la seconde solution, il suffit de remplacer la texture du sol par la texture invisible {BLUE ou {INVISIBLE (et de le rendre invisible comme expliqué dans la partie du miroir) ou la texture NULL. Ca donnera quelque chose de ce genre:

Image utilisateur

Vous pouvez toujours changer la texture d'eau, je vous le conseille justement car la texture que j'ai utilisée pour l'exemple ne rend pas trop...Mais vous pouvez voir que ça peut donner de bons effets! Je vous conseille également de faire plusieurs effets en modifiant la transparence de l'eau et du sol.
Voilà de ce qui en est pour l'eau. Pour finir, je vous conseille de lire la dernière partie qui peut se relever très utile :)

Quelques techniques...

Pour finir, voici quelques techniques qui vous seront très utiles!

Reflet d'un objet cassable

Il suffit de faire votre objet ainsi que son reflet puis de les sélectionner tous les deux (avec la touche ctrl) et de les transformer en func_breakable. Ainsi lorsque vous casserez l'objet, son reflet se brisera aussi. Seul défaut: les débris du reflets tomberont aussi vers le bas...

Reflet d'un model

Vous pouvez faire refléter certains models et positionnant un second model à l'envers. Attention, il faut bien le positionner et éviter que le model soit dans un mauvais sens!

Reflet d'un func_train

Pour refléter un func_train, il suffit de le remapper à l'envers en dessous du train réel, et de créer le bloc origin bien au centre du train (entre le train et son reflet en quelque sorte). Les path_tracks devront être placés au même niveau que le bloc origin.

Reflet d'un func_vehicle

Pareil que pour le train sans les path_tracks. En revanche, le véhicule doit pouvoir passer partout, qu'il y ai un sol reflétant ou non! Vous devrez donc faire en dessous du sol où le véhicule peut passer une cavité pour permettre au reflet de pouvoir passer sans se cogner dans un bloc. Le bloc origin ne doit également pas être placé dans le sol!

Voilà, en espérant que ces techniques vous serviront un jour : D

Vous savez à présent comment réaliser de beaux reflets sous Half-Life premier du nom! ;)

déroulement d'un cours

  • 1

    Dès aujourd'hui, vous avez accès au contenu pédagogique et aux exercices du cours.

  • 2

    Vous progressez dans le cours semaine par semaine. Une partie du cours correspond à une semaine de travail de votre part.

  • !

    Les exercices doivent être réalisés en une semaine. La date limite vous sera annoncée au démarrage de chaque nouvelle partie. Les exercices sont indispensables pour obtenir votre certification.

  • 3

    À l'issue du cours, vous recevrez vos résultats par e-mail. Votre certificat de réussite vous sera également transmis si vous êtes membre Premium et que vous avez au moins 70% de bonnes réponses.

Exemple de certificat de réussite
Exemple de certificat de réussite