Passer au contenu principal
Version: dernière version stable - a1.133.x ⚖️

Static Meshes

Comment exporter et utiliser des Static Meshes depuis Unreal Engine dans nanos world

Dans nanos world, les Static Meshes sont principalement utilisés pour les entités Props et StaticMesh.

Ce guide couvrira tous les aspects de l’importation, la configuration des matériaux, la mise en place des collisions et la création de miniatures pour les Static Meshes. Ainsi que quelques conseils supplémentaires pour les améliorer davantage.

info

Veuillez consulter la documentation des Static Meshes d’Unreal Engine pour plus d’informations sur l’importation d’un fichier .FBX dans Unreal, son optimisation, et plus encore. Il existe également des milliers de tutoriels sur l’importation d’un fichier .FBX depuis Blender (ou un autre outil de modélisation) vers Unreal Engine.

Commencer

Prerequisites

Avant de continuer, veuillez vous assurer d’avoir lu le guide Creating & Importing Assets.

Pour cet exemple, nous allons importer les meshes de ce Money Set dans nanos world. Nous l’avons téléchargé et extrait, et nous avons identifié les fichiers .FBX et .PNG à importer.

La première étape consiste à créer un nouveau dossier à la racine de votre projet Assets Development Kit, que nous appellerons money-pack/. Ce sera notre dossier de Asset Pack, tous les fichiers doivent être importés à l’intérieur de ce dossier :

Importation des textures

Ensuite, importons les textures. Pour cela, nous pouvons simplement les glisser-déposer dans notre dossier money-pack/ :

Il est recommandé de renommer les fichiers importés, nous les avons donc renommés en PascalCase avec le préfixe T_ :

Importation des Static Meshes

La deuxième étape consiste à importer les fichiers .FBX. Pour cela, nous pouvons également simplement les glisser-déposer dans notre dossier. Lorsque nous le faisons, une fenêtre contextuelle apparaît.

Faites attention à certains réglages ici : certaines meshes arrivent avec des tailles très petites ou très grandes, il faut donc les ajuster au moment de l’importation. Il est également judicieux de sélectionner « Combine Meshes » (dans Mesh ->> Advanced) afin de fusionner toutes les meshes contenues dans ce .FBX en un seul StaticMesh.

tip

Dans notre cas, l’argent d’origine est petit, donc nous multiplions l’échelle par 10x.

tip

Après l’importation, nous l’avons également renommé en SM_MoneyStack.

Configuration des matériaux

Notez que certains matériaux ont été créés automatiquement. Si vous ouvrez votre Static Mesh, vous remarquerez qu’ils sont blancs.

Nous devons configurer les matériaux pour qu’ils utilisent les textures que nous avons importées précédemment !

tip

Certaines meshes, lors de l’importation, peuvent gérer automatiquement tous les liens entre les matériaux et les textures ! Cela dépend de la manière dont elles ont été créées et exportées depuis l’outil de modélisation.

Pour cela, ouvrons notre matériau et glissons la texture correspondante à l’intérieur :

Puis connectons la texture au pin Base Color :

tip

Vous pouvez également configurer les autres connecteurs du matériau. Unreal utilise le système PBR, ce qui signifie que nous pouvons définir de nombreux paramètres afin de rendre le matériau aussi réaliste que souhaité !

De plus, certaines meshes sont fournies avec d’autres textures en plus de la couleur de base, par exemple les Normal Maps, le Metallic et le Specular, que vous pouvez connecter à votre matériau afin de compléter le rendu PBR !

Après avoir configuré tous les matériaux, notre mesh est maintenant entièrement coloré !

Configuration des collisions

Certaines meshes ne disposent pas de collisions et nous devons les configurer manuellement. Comme notre mesh de monnaie est un cuboïde, il est facile d’y ajouter des collisions !

Pour cela, nous ouvrons l’onglet Collision et sélectionnons « Add Box Collision » afin d’ajouter automatiquement une collision de type boîte englobant entièrement la mesh.

tip

Vous pouvez supprimer toutes les collisions en cliquant sur « Remove Collision ». Pour plus d’informations, veuillez consulter la documentation officielle d’Unreal.

Et maintenant, il possède des collisions ! (Si vous ne la voyez pas, cliquez sur Show ->> Simple Collision pour afficher le filaire vert autour de celle-ci).

Additional Tips

Une fois vos meshes créées, vous pouvez suivre les étapes suivantes pour les améliorer davantage grâce à ces conseils supplémentaires.

Définition du Physical Material

Les Physical Materials sont utilisés pour définir la réponse d’un objet physique lorsqu’il interagit avec le monde. En plus de cela, dans nanos world nous les utilisons pour définir les « sons d’impact » des objets, ce qui rend leur configuration simple et très pratique.

Pour cela, il suffit d’ouvrir votre matériau et de sélectionner l’un des Physical Materials (inclus dans l’ADK) : ce sont ceux qui commencent par PM_. Pour cet exemple, nous allons utiliser « Wood » :

Réduction de la taille des textures

Les textures font partie des assets qui occupent le plus d’espace disque. La manière dont la compression d’Unreal gère cela fait que leur taille dépend de leurs dimensions, et il est judicieux de configurer vos textures ou même de limiter leurs dimensions afin de réduire leur taille sur le disque.

Comme vous pouvez le voir, notre texture de monnaie est vraiment grande (2048x2048), ce qui occupe jusqu’à 5 Mo sur le disque (et en RAM pendant le jeu) :

Comme notre objet est petit, nous pouvons limiter cette taille à 512x512 et la réduire à 380 Ko. C’est une réduction de plus de 90 % !

tip

Si vous avez des meshes plus grandes, il n’est pas recommandé de réduire leur taille, sinon le rendu de la mesh sera de mauvaise qualité.

Configuration des LODs

Les Level of Details (LODs) sont la manière dont Unreal améliore automatiquement les performances pour les objets éloignés. Unreal fournit un outil simple permettant de générer automatiquement des LODs pour vos Static Meshes.

Pour cela, ouvrez votre Static Mesh et, dans le panneau Details, recherchez Lod Settings ->> Number of LODs. Nous recommandons de le régler sur 3 :

De cette façon, Unreal génère automatiquement des LODs, qui sont utilisés en jeu pour réduire la qualité des meshes éloignées et améliorer les performances !

Génération des miniatures

Les miniatures sont généralement utilisées dans le mode de jeu Sandbox pour afficher correctement les assets dans son menu de spawn.

Pour que cela fonctionne, il suffit de prendre des captures de vos meshes et de placer les fichiers .JPG portant exactement le même nom que l’asset dans un dossier Thumbnails/ à la racine de votre Asset Pack.

Vous pouvez utiliser le ADK Thumbnail Generator pour les générer automatiquement ! Pour cela, ouvrez la map ThumbnailGenerator :

Appuyez sur Play et configurez les paramètres. Dans « Search Folder », vous devez définir le dossier de votre pack d'asset : money-pack, et dans « Output Folder », vous définissez le chemin complet du dossier dans lequel vous souhaitez exporter, par exemple D:/money-pack/Thumbnails.

Et appuyez sur « Generate » ! Si vous allez dans votre dossier de sortie, vous trouverez tous les fichiers .JPG générés pour vos assets :

Il ne vous reste plus qu’à copier ce dossier dans votre Asset Pack !

Exportation des assets

Après avoir terminé toutes les étapes, vous pouvez les exporter vers nanos world ! Please refer to Exporting & Cooking your Assets docs page before proceeding.

Configuration du Asset Pack

Après avoir préparé vos ressources et copié le dossier généré dans le répertoire Assets/ de votre serveur. Il est temps de configurer le Asset Pack ! Pour cela, veuillez consulter la page de documentation Configuring your Assets.toml avant de continuer.

Maintenant que vous avez créé votre Assets.toml et configuré les paramètres Unreal, assurez-vous de bien configurer vos Static Meshes dans la catégorie [assets.static_meshes], comme ceci :

# static meshes
[assets.static_meshes]
SM_MoneyRoll = "SM_MoneyRoll"
SM_MoneyStack = "SM_MoneyStack"

De cette façon, nous pouvons les référencer via le scripting et également les tester dans le mode de jeu Sandbox !

C’est le moment de tester !

Après avoir configuré votre Assets.toml, il est temps de tester !

Ouvrez nanos world, lancez une nouvelle partie en mode Sandbox et ajoutez votre Asset Pack nouvellement créé à la liste assets afin qu’il soit chargé :

Une fois en jeu, ouvrez le menu de spawn, et dans Props ->> All Props, vous trouverez vos static meshes !

And voila! Vos toutes nouvelles static meshes que vous venez d’importer !