CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Yeux brouillés

sn00bino
sn00bino
Niveau 5
17 septembre 2007 à 19:47:12

bonjour,

Comme je m´ ennuyais j´ ai décidé de vous ennuyer vous. Mais bien sur il me fallait une excuse, je me suis donc lancé dans un shader qui reproduirait la vision a travers une vitre dépolie ou autrement dit la vision d´ un myope. En gros je veux flouter.

Je me suis donc dit qu´ il fallait que je récupére la couleur du pixel de " derriere " qui est situé dans le backbuffer (dites moi si je me plante). Or comment faire pour récupérer cette info ?
J´ utilise le HLSL avec les shaders version 2.0 sous DirectX.

++

godrik
godrik
Niveau 30
18 septembre 2007 à 11:26:40

le pixel de derriere ? je ne comprends pas bien ce que tu veux dire.
Il y a des filtres de flou qui sont connu et appliqué dans les logiciel d´imagerie.
Ce que tu veux est probablement un flou dont l´impact dépend de la distance a la caméra.

Un flou facil consiste a faire la moyenne des pixels voisins.
Pour gerer les problemes de distance, tu dois pouvoir affecter un poids a chaque pixel en fonction de la distance a la camera
si tu es pret, tu met une plus grosse pondération au pixel central
par exemple sur un filtre 3x3.
tu fais x´_{22} = (1-distance)*x_{22} +
distance/8*(x_{11}+x_{12}+x_{13}+x_{21}+x_{23}+x_{
31}+x_{32}+x_{33})

cela te donnera par contre un flou peu important si ton image est en haute résolution,
tu voudra peut etre faire des moyennes de plus de terme
ou augmenter la taille du cercle de vision sur lequel tu fais ta moyenne.

Tu peux d´ailleurs changer la taille du cercle en fonction de la distance a la caméra (ce qui permet d´avoir un traitement plus simple)

sn00bino
sn00bino
Niveau 5
18 septembre 2007 à 18:57:25

merci godrik. Cependant je cherche a imiter le flou vu a travers une vitre. Donc je dois connaitre la valeur du pixel déja calculé a cette endroit. C ´est sa que j´ appelle le pixel de derriere, je crois que sa correspond au backbuffer. Je cherche donc a y avoir acces, si possible.

sn00bino
sn00bino
Niveau 5
24 septembre 2007 à 12:02:07

Il fallait récupérer le backbuffer avant puis le passer au shader sous forme de texture. Enfin c ´est la seule méthode que j´ ai trouvé ce n´est peut etre pas la bonne. Il parait que sa marche pas si l´ écran est anti-aliasé. Personelement je m´ en tape.

merci encore a toi godrik.

Fvirtman
Fvirtman
Niveau 10
24 septembre 2007 à 13:35:48

Moi il me suffit d´enlever mes lunettes ou mes lentilles, je fais du flou en temps réel :) (pas trop myope, mais un peu)

Sinon, moi je suis d´accord avec godrik : un filtre de convolution, sachant que tu peux accentuer le flou en agrandissant les dimensions du "carré" de filtre, ou alors en réappliquant plusieurs fois le filtre.

LGV
LGV
Niveau 28
24 septembre 2007 à 14:24:04

c´est la bonne methode ; pour faire un effet de vision a travers une vitre, tu peux regarder du cote des normal maps en post-processing

sn00bino
sn00bino
Niveau 5
24 septembre 2007 à 18:17:42

Le post processing sa correspond a quel champ de mon ignorance ?

Maintenant c ´est vrai qu´ un petit effet normal map + speculaire serait idéal. Je vais donc passer outre ma haine des normals maps ( saloperie de binormal de ***** ) et voir ce que sa peut donner.

++ et merci

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment