ProceduralMesh et C++ dans Unreal.

Antoine Fortin
3 min readJul 27, 2019

--

J’ai eu a explorer les Procedural Mesh dans Unreal Engine sans passer par les blueprint, n’ayant pas trouvé de tutos en français qui couvrent le sujet, voici comment utiliser cet outil puissant. Je passerai quelques détails quant à la mise en place du projet et sauterai directement au code. Cette rédaction est droite au but!

Mise en place

Une fois un projet C++ dans Unreal Engine, créons une nouvelle classe qui hérite de la classe parent Actor.

Appelez cette classe comme vous le désirez! :)

Dans votre solution, vous aurez deux nouveaux fichiers.

Simple enough, mais il nous reste une dernière chose à faire avant de pouvoir utiliser les ProceduralMesh. Dans vos fichiers de build, ajoutez ces lignes (qui incluent le module requit). J’ai changé l’indentation de la ligne 11 pour préciser la ligne

Dans votre “nomdeprojet.uproject”-> incluez le ProceduralMeshComponent

À ce point ci, vous devriez être en mesure de compiler :)

Ajoutez le procedural mesh a l’acteur!

Dans votre AVotreActeur.h ajoutez ceci

Toujours inclure le .generated en dernier.

Dans les propriétés privées, ajoutez une UPROPERTY() et un pointeur vers le procedural Mesh que vous pouvez nommer comme vous le voulez. Je l’appelerai myProceduralMesh.

Implémentons le .cpp

Dans votre constructeur ajoutez la création du procédural mesh (il se peut fortement que l’intellisense râle, mais votre compilateur acceptera le tout). Always believe the compiler after all! :D

BasicProceduralMesh.cpp

Donc nous créons un mesh procédural dans le constructeur, maintenant, utilisons nos deux fonctions PostActorCreated() et PostLoad()

On peut voir un appel de la fonction CreerUnTriangle(). Dans la partie 2, nous créerons notre premier triangle en créant cette fonction dans notre fichier .cpp.

Créer un triangle

Qui nous donne un mesh ainsi.

Next time:

Dans nos colomnes nous devons également supporter Le top triangle.

Until next time, much love!

--

--

Antoine Fortin

In between Montreal and London, I love to write, read, learn and explore.