Accueil › Documentation › Captures d’écran · origen_clothing

Captures d’écran · origen_clothing

origen_clothing_screenshot est une ressource complémentaire qui génère les images d’aperçu des objets pour l’interface du magasin de vêtements. Chaque objet de origen_clothing_items a besoin d’un image_url, et cette ressource s’en charge automatiquement.


Fonctionnement

  1. Le ped du joueur est téléporté vers un emplacement à fond vert (Config.GreenScreenPos)
  2. Pour chaque vêtement, le ped est habillé avec celui-ci et une capture est prise avec un angle de caméra propre à chaque composant
  3. Le PNG est enregistré en local ou envoyé vers Fivemanage
  4. La colonne image_url de origen_clothing_items est mise à jour avec le résultat
  5. À la fin, l’apparence et la position d’origine du joueur sont restaurées

Configuration — config.lua

Emplacement du fond vert

Les coordonnées où les peds sont placés pendant le processus de captures :

lua
Config.GreenScreenPos = vector4(1339.42, 5864.18, 2.57, 357.78)

C’est une zone isolée au sol plat. Ne la change pas si tu ne sais pas ce que tu fais : les conditions d’éclairage influencent la qualité des images.

Destination d’enregistrement

lua
Config.Save = {
    localFiles  = false,       -- true = save PNGs to resource images/ folder
    fiveManageAPI = "",        -- Fivemanage API key (required when localFiles = false)
}
Option Description
localFiles = false Envoie les PNG vers Fivemanage. Nécessite une API key valide.
localFiles = true Enregistre les PNG dans origen_clothing_screenshot/images/. Aucune dépendance externe.

Si tu utilises Fivemanage (localFiles = false), renseigne ton API key dans Config.Save.fiveManageAPI. Obtiens ta clé sur docs.fivemanage.com.

Configuration des caméras

Chaque ID de composant et de prop possède un angle de caméra dédié, optimisé pour cette partie du corps. Ils sont définis dans Config.ScreenshotCameras :

lua
Config.ScreenshotCameras = {
    clothes = {
        [1]  = { boneId = 31086, ... },  -- masks (head bone)
        [3]  = { boneId = 24818, ... },  -- torsos
        [4]  = { boneId = 24818, ... },  -- legs
        [5]  = { boneId = 24818, ... },  -- bags
        [6]  = { boneId = 24818, ... },  -- shoes
        [7]  = { boneId = 24818, ... },  -- neck
        [8]  = { boneId = 24818, ... },  -- shirts
        [9]  = { boneId = 24818, ... },  -- vest
        [10] = { boneId = 24818, ... },  -- decals
        [11] = { boneId = 24818, ... },  -- jackets
    },
    props = {
        [0] = { boneId = 31086, ... },   -- hats (head bone)
        [1] = { boneId = 31086, ... },   -- glasses
        [2] = { boneId = 31086, ... },   -- earrings
        [6] = { boneId = 24818, ... },   -- watches
        [7] = { boneId = 24818, ... },   -- bracelets
    }
}

Chaque entrée de caméra utilise ces champs :

Champ Type Description
boneId number Os du ped sur lequel la caméra se centre (31086 = tête, 24818 = colonne)
camOffset vector4 Décalage de la position de la caméra par rapport à l’os
targetOffset vector4 Décalage du point visé, par rapport à l’os
fov number Champ de vision en degrés

Commandes

/screenshot [ped] [collection] [isProp] [component] [variation]

Commande manuelle pour prendre des captures. S’exécute depuis le client.

Argument Par défaut Description
ped — Nom du modèle de ped (p. ex. mp_m_freemode_01)
collection all Nom de la collection ou all pour toutes les collections
isProp 0 1 = props, 0 = composants de vêtements
component all Nom du composant ou all
variation -1 Indice d’une variation précise ou -1 pour toutes

Exemple — capture de tous les hauts du ped freemode masculin :

text
/screenshot mp_m_freemode_01 all 0 shirts

Exemple — capture d’une collection précise :

text
/screenshot mp_m_freemode_01 mp_m_2024_01 0 all

/stopscreenshot

Arrête immédiatement un processus de captures en cours.


Export côté serveur — UpdateUrl

origen_clothing_screenshot expose aussi un export côté serveur pour mettre à jour manuellement l’URL de l’image d’un objet :

lua
exports['origen_clothing_screenshot']:UpdateUrl(model, hash, url)
Paramètre Type Description
model number Hash du modèle de ped
hash string Chaîne hash de l’objet
url string Nouvelle URL d’image à enregistrer

Export côté client — prepareScreenshot

Déclenche le processus de captures par code depuis une autre ressource (p. ex. depuis l’interface d’administration des vêtements) :

lua
exports['origen_clothing_screenshot']:prepareScreenshot({
    ped          = 'mp_m_freemode_01',
    collection   = 'all',   -- collection name or 'all'
    isProp       = false,
    component    = 'all',   -- component name or 'all'
    variation    = -1,
    skipExisting = true,    -- skip items that already have an image_url
})
Champ Type Description
ped string Nom du modèle de ped
collection string Nom de la collection ou 'all'
isProp boolean true = props, false = composants de vêtements
component string Nom de la catégorie de composant ou 'all'
variation number Indice global d’une variation précise ou -1 pour toutes
skipExisting boolean Si true, les objets qui ont déjà un image_url sont ignorés

Avec skipExisting = true, la ressource interroge la base de données par blocs de 500 objets pour savoir lesquels ont déjà une photo avant de commencer. Cela peut faire gagner énormément de temps sur les gros catalogues.