Bonsoir à vous,
je souhaiterai faire en sorte que mon personnage (Player Character) se déplace au sein d'une grille fictive.
Pour l'exemple, lorsque le joueur appuie sur Z pour avancer, le personnage avance de 100 Units par 100 Units. Je n'ai eu aucun problème pour faire cela avec les personnages tiers en utilisant la fonction AI Move to Location, mais elle n'est à priori pas accessible pour le personnage du joueur. Malgré mes différents essais et recherches, partons du principe que mon personnage peut bouger de deux manières :
- D'un clic de souris avec le pointeur du TopDown
- Avec les touches du clavier ZQSD
Pour la partie avec la souris, le pointeur se place comme je le souhaite sur la pseudo-grille, mais en utilisant la fonction Simple Move To Location, le personnage s'arrête à mi-chemin et je ne comprend pas vraiment le pourquoi.
Quelqu'un aurait une idée pour m'aider à comprendre ou m'expliquer comment arriver à ce que je veux faire ?
Merci d'avance, j'espère avoir été clair dans mes propos.
Bonjour
Vous me conseilleriez quelle technique pour créer une rivière réaliste ? Flow map ? Ou y a mieux ?
Pas de PhysX malheureusement. A cause des perfs qu'il coûte...
Le 25 juillet 2018 à 10:09:02 seb-le-dingue a écrit :
BonjourVous me conseilleriez quelle technique pour créer une rivière réaliste ? Flow map ? Ou y a mieux ?
Pas de PhysX malheureusement. A cause des perfs qu'il coûte...
Tout dépend de ce que tu entend par "réaliste" et de la configuration de cette rivière.
- Est-ce qu'elle a des embranchement?
- Est-ce que ton landscape est découpé en plusieurs segments?
- Est-ce que tu veux que la surface soit déformée par les objets qui s'y trouvent (rochers, troncs d'arbres, etc.)
- Est-ce qu'elle forme des cascades par endroits?
- Etc.
Généralement ce sont des splines avec un simple plane et le matériau contient un "panner" qui fait défiler les textures selon un vecteur choisi manuellement (dans facilement 90% des jeux). C'est moyennement "réaliste" dans le sens où l'écoulement ne tient pas compte des rives/obstacles
Ex: Skyrim https://www.youtube.com/watch?v=z0MsnE3Mv0w
En réalité dans Skyrim c'est encore plus basique. Ce sont juste des planes complètement horizontaux et lorsqu'il y a un dénivelé, c'est un mesh en forme de cascade qui fait la jonction.
Pour détecter les bords et les obstacles qui se trouvent dans ta rivière et les utiliser dans ton shader, tu peux utiliser le distance field : https://www.youtube.com/watch?v=R7Z5DJkFg5s
Si tu veux ajouter un peu plus de réalisme tu peux ajouter des FX sous forme de particules qui simulent des éclaboussures.
En général c'est ce genre de détail qui attirent l'oeil et qui font que tu ne remarque pas le fait que l'eau est physiquement incohérente.
Je te conseille de télécharger la démo "A boy and his kite" dispo sur le launcher et de regarder comment ils ont créé leur rivière
@Alex
La vidéo avec le distance field flow c'est parfait. C'est exactement ce que je veux. Merci beaucoup pour ce mot clé, je vais rechercher ça et le faire.
Oui le FX pour les éclaboussures j'avais prévu de le faire.
Pour l'instant j'ai créé le matériau et je me suis servi du spline pour la rivière. J'avoue que le résultat pour l'instant est pas ouf...
Pour les questions que tu m'as posé. Mon landscape c'est un seul morceau. Tout autour j'ai mis un océan en me servant du plugin gratuit Ocean shader. Vraiment génial ce plug in. Pour ceux intéressé :
https://youtu.be/-W-J-pshles
Des embranchements ? Je ne sais pas encore. Pour l'instant la rivière traverse mon landscape, pour rejoindre l'océan. Mais oui c'est possible.
Pour les 2 autres questions que tu m'as posé, oui oui je veux tout. Je veux aussi pouvoir nager, donc... y a du boulot...
Je vais mettre à dl la démo, merci beaucoup Alex. Sincèrement.
Aujourd'hui il me fallait une texture de rivière. J'en ai trouvé une qui allait, mais elle était non tiléable. J'ai suivi ce tuto pour la rendre seamless. Le résultat est plus que correcte. Pour ceux intéressé :
https://youtu.be/2u3-wc1Ak1M
Aujourd'hui il me fallait une texture de rivière. J'en ai trouvé une qui allait, mais elle était non tiléable. J'ai suivi ce tuto pour la rendre seamless. Le résultat est plus que correcte. Pour ceux intéressé :
https://youtu.be/2u3-wc1Ak1M
Sinon toujours sur le launcher, dans l'onglet "apprendre", tu as le pack gratuit (et libre de droit) "Water Planes" qui contient un matériau "océan", un matériau "lac opaque" et un matériau "lac transparent" (je te conseil le dernier pour une rivière)
Ca peut te servir de base. Rajoutes un panner pour faire défiler les textures dans le sens de ta rivière et tu auras déjà un bon début que tu peux améliorer ensuite en essayant d'utiliser le distance field.
Le 25 juillet 2018 à 17:59:01 Alex3112 a écrit :
Aujourd'hui il me fallait une texture de rivière. J'en ai trouvé une qui allait, mais elle était non tiléable. J'ai suivi ce tuto pour la rendre seamless. Le résultat est plus que correcte. Pour ceux intéressé :
https://youtu.be/2u3-wc1Ak1M
Sinon toujours sur le launcher, dans l'onglet "apprendre", tu as le pack gratuit (et libre de droit) "Water Planes" qui contient un matériau "océan", un matériau "lac opaque" et un matériau "lac transparent" (je te conseil le dernier pour une rivière)
Ca peut te servir de base. Rajoutes un panner pour faire défiler les textures dans le sens de ta rivière et tu auras déjà un bon début que tu peux améliorer ensuite en essayant d'utiliser le distance field.
Je te remercie Alex. Oui je l'ai déjà mis dans mon projet. Mais je voulais recréer moi même le matériau pour apprendre. Je sais que je peux pas tout retenir en le faisant qu'une fois. Mais j'apprends toujours mieux qu'en lisant uniquement.
Par contre oui je vais aller regarder ce matériaux. Merci.
Une question, le dynamique flow c'est bien pareil que le distance field flow ?
Parce que j'ai trouvé une vidéo "tuto" pour le dynamique flow, mais le distance field flow.. à part des démos j'ai rien trouvé...
Voilà la vidéo en question
https://youtu.be/chPIKqa-0zk
Parce que j'ai trouvé une vidéo "tuto" pour le dynamique flow, mais le distance field flow.. à part des démos j'ai rien trouvé...
Voilà la vidéo en question
https://youtu.be/chPIKqa-0zk
Oui, c'est exactement ça. Il utilise le distance field: https://youtu.be/chPIKqa-0zk?t=1m19s
Le distance field c'est une représentation de la scène en noir et blanc en fonction de la distance des objets.
Utilisé dans un matériau, ça permet de connaitre la distance entre le matériaux et la géométrie d'un autre objet qui affecte le distance field
Le 25 juillet 2018 à 19:08:33 Alex3112 a écrit :
Parce que j'ai trouvé une vidéo "tuto" pour le dynamique flow, mais le distance field flow.. à part des démos j'ai rien trouvé...
Voilà la vidéo en question
https://youtu.be/chPIKqa-0zkOui, c'est exactement ça. Il utilise le distance field: https://youtu.be/chPIKqa-0zk?t=1m19s
Le distance field c'est une représentation de la scène en noir et blanc en fonction de la distance des objets.
Utilisé dans un matériau, ça permet de connaitre la distance entre le matériaux et la géométrie d'un autre objet qui affecte le distance field
D'accord, merci beaucoup. Bon bah ce soir je fais ça. J'avoue UE4 c'est vraiment génial. Incroyable ce qu'on peut faire avec.
Je reviens vers vous, si jamais vous avez la soluce...
Le distance field flow fonctionne. Je l'utilise sur un spline du landscape editor. J'ai du modifier un peu le code du mec pour avoir la texture qui défile et régler les UVs. Mais je rencontre un soucis.
Si je le laisse comme il est, l'eau suit la forme de la rivière. Ou plus précisément, elle suit les "fragments" du spline, ce qui rend très réaliste. Si je déplace un fragment, ou intersection (je ne sais pas comment dire) du spline vers la gauche ou la droite, l'eau suit la bonne trajectoire. Le soucis c'est qu'on voit la "couture" où il y a un fragment du spline.
Pour corriger ça, j'ai ajouté du dynamique UV, composé entre autres du node Absolute world position. ça fonctionne également, Pu de problème de "couture" visible. Mais.. l'eau ne suit plus la forme de la rivière. Elle s'écoule juste dans une direction unique.
Savez vous ce qu'il faut que je fasse ?
Je précise que j'ai bien vérifié que ce ne soit pas un problème de texture non seamless. J'ai testé avec une texture seamless de mon landscape, donc c'est pas ça le problème.
Idéalement, en me servant du spline, je voulais recréer ceci
https://youtu.be/GmYx1NYdqPg
Tu peux faire un screenshot du matériau?
Pour ton souci de segment visible, c'est pas parce que les points de ta spline son trop proches les uns des autres?
Le 26 juillet 2018 à 15:40:57 Alex3112 a écrit :
Tu peux faire un screenshot du matériau?
Pour ton souci de segment visible, c'est pas parce que les points de ta spline son trop proches les uns des autres?
Oui pas de soucis, merci de ton aide. C'est vraiment sympas.
https://www.zupimages.net/up/18/30/ndqp.jpg
https://zupimages.net/up/18/30/b4n2.jpg
https://zupimages.net/up/18/30/4e6h.jpg
https://zupimages.net/up/18/30/ywbe.jpg
https://zupimages.net/up/18/30/rm6o.jpg
https://zupimages.net/up/18/30/0cz2.jpg
https://zupimages.net/up/18/30/9i31.jpg
https://zupimages.net/up/18/30/va1s.jpg
J'ai testé d'écarté un fragment très loin, ça change rien.
Je crois que je sais ce qui ne va pas. Il faut que je crée une fonction pour le spline qui me permettra de faire ce que je recherche à faire.
J'ai regardé la chaine du mec qui a montré la démo de ce que je veux. Et j'ai trouvé une piste. Mais comme c'est de l'anglais et pas vraiment un tuto.... ça sent la galère à plein nez... voici la vidéo en question
https://youtu.be/Y9yPg8oDS9E
Heureusement notre ami Mike a fait une vidéo sur le sujet qui pourrait peut être correspondre à ce que je cherche. 1000 merci Mike, si tu me lis. Voilà sa vidéo FR.
https://youtu.be/2X5d1l6XuPQ
Si j'ai tort dis le moi.
Bon bah c'était pas ça. Je viens enfin de finir, mon BluePrint spline fonctionne au poil. Mais toujours le même problème... je suis écoeuré là..
Si quelqu'un a une soluce
Personne n'a d'idée pour mon souci ?
Merci d'avance si quelqu'un s'attarde sur mon cas.
Désolé je peux pas t'aider, je suis débutant aussi...
Mon soucis est réglé. C'était pas un problème de spline, mais un problème de materiau. Donc j'ai un peu perdu la journée d'hier mais bon... enfin j'ai quand même appris plein de choses. Donc je peux pas vraiment dire que j'ai perdu la journée.
Je te remercie d'avoir répondu seb-le-dingue, je ne m'attendais pas à une réponse de ta part me concernant. J'ai tout de même lu votre conversation depuis ma demande, j'ai gardé le silence sur ton problème car je ne savais pas du tout comment régler ce dernier, je n'en suis pas à ce stade de mon apprentissage. Je m'occupe principalement de bidouiller sur les blueprints. ^^
Pendant que je lisais ta réponse, je me disais que tu n'avais pas entièrement perdu ta journée hier, mais finalement c'est aussi ton avis donc tant mieux, ah ah.
Pour ma part, en lisant des commentaires j'ai appris l'existence de l'onglet « Apprentissage » sur le launcher, et je suis tombé sur un projet démo sur le mode de jeu de stratégie basé sur le tour par tour (en quadrillé), je vais scruter ça et je pense y trouver ma réponse.
Bonne continuation pour toi !
@ Xikyuu : Ça ne marche qu'avec un pawn qui appartient à la classe "AI". Rien n'empêche ton joueur de contrôler un pawn de type "AI".
Tu peux reparenter ton pawn à cette classe ou créer un pawn de la classe AI et le spawn+contrôler sur demande (avec les nose "possess" et "unpossess").
Bonjour, j'aurais une question au sujet de mipmapping. J'ai découvert aujourd'hui qu'on pouvait le désactiver. Ce qui a 2 conséquences. ça retire le flou de la texture quand on la regarde de loin. C'est nettement plus beau. Mais en contrepartie, ça scintille de partout...
Vous me conseillez quoi pour avoir la meilleure qualité d'image possible ?
Les mipmap c'est l'équivalent des LOD pour les mesh. Si tu les enlève complément, au revoir les perfs. Ouvres ta texture dans l'éditeur et changes le groupe auquel elle appartient jusqu'à trouver le compromis perfs/qualité qui te convient. Y a pas de règle général, c'est selon les configs visée, selon ton optimisation générale, etc. Il faut faire des benchmarks, utiliser les différentes commandes de debug pour voir où tu peux gratter de la RAM, de la VRAM, du temps CPU et GPU, etc.
Je te remercie Alex.