#1 [↑][↓]  07-12-2020 12:05:34

jacquesGSN
Copilote
Date d'inscription: 11-10-2009
Renommée :   

[MSFS] récupérer les objets d'une scène de FSX

Bonjour à tous
Cela fait une semaine que j'essaie de récupérer les objets. parfois cela marche d'autre fois pas, pourtant en procédant de lan même façon.
Je vous explique :
Comme vous le savez, les aéroports contenant une base militaire n'existent pas dans MSFS. Il y a une dizaine d'année, du temps où j'étais sous FSX, j'ai acheté la scène LFOT, très bien faite sur SimMarket. Aujourd'hui elle ne figure plus dans son catalogue, même pour FSX.
J'ai donc décidé de créer LFOT.
J'ai réussi à recréer le paysage en récupérant des copies d'écran à partir du site "https://fr3dmap.com/fr/?k=google%20earth&msclkid=f6870b2b267b13995f1f5447ca3dc78b" qui ne floute que très légèrement les aéroports militaires.
Plus de 50 copies d'écran qu'il a fallu retravailler (en particulier enlever tous les noms de rues ... etc), ouis assembler en un seul fichier.
Et maintenant je veux placer les objets (bâtiments...) à partir des objets de ma scène pour FSX, convertis pour MSFS.

J'utilise pour cela un tuto que j'ai trouvé sur le net "https://www.jpfil.com/quebec-fs2020/tutos/index.htm" très clair.

Grâce à "Model Converter X" je convertis le fichier BGL en Gltf, et les textures DDS en PNG
En plaçant ces fichiers de texture dans "PackageSource_modelLib\tecture" et les 3 fichiers gltf, bin et sml dans "\PackageSources\modelLib\Nom de mon objetModel", puis en compilant avec "fspackagetool.ex"
Cela fonctionne très bien avec certains objets, mais avec d'autres (la moitié environ) j'obtient dans MSFS l'objet sans texture.

Pourtant je procède exactement de la même manière à chaque fois.

Si j'ouvre un fichier gltf dans Model Converter X, les textures sont bien sur l'objet ?

Si quelqu'un peut me conseiller sur ce qui se passe, je l'en remercie d'avance.

Jacques

Hors ligne

 

#2 [↑][↓]  07-12-2020 12:14:55

Lagaffe
Pilote Virtuel
Membre donateur
Lieu: LFPO / retraité
Date d'inscription: 13-03-2008
Site web

Re: [MSFS] récupérer les objets d'une scène de FSX

Bonjour,

Parfois la conversion se passe mal et il faut repasser sur le fichier glTF pour corriger certaines choses.
Le ficjhier glTF est un fichier ASCII donc éditable avec le Bloc-notes (Notepad.exe).

Très souvent :
- la texture n'a pas été flippée (mirroir vertical) ou
- dans le fichier glTF en fin de page, on a les lignes qui listent les fichiers textures et très souvent l’extension des fichiers est incorrecte (*.dds au lieu de *.png): il faut corriger à la main et réenregistrer le fichier édité.

PS: Je vois que Jean Pierre a profité des tuyaux et informations que je lui ai envoyé depuis les deux derniers mois wink


@+ Didier
http://www.pilote-virtuel.com/img/members/53/mini-Logo-Beaver-small.jpg
W10 Pro 64b Build 22H2 - Boitier HAF 932 - Z390 STRIX-F - 9900K - 2x16 Go - NVidia 3060 Ti 8 Go - Alim Corsair 800W - Ecran 34" - NVidia Studio ready 536.23
P3D v5.4 = http://www.pilote-virtuel.com/img/membe … ages-A.jpg - MSFS Deluxe/STORE - X-Plane 12B

Hors ligne

 

#3 [↑][↓]  07-12-2020 12:21:15

Armand42
Pilote Virtuel
Lieu: Saint Etienne (42)
Date d'inscription: 16-09-2014
Renommée :   20 

Re: [MSFS] récupérer les objets d'une scène de FSX

"Lagaffe les bons tuyaux" laugh wink

Hors ligne

 

#4 [↑][↓]  07-12-2020 12:25:43

Lagaffe
Pilote Virtuel
Membre donateur
Lieu: LFPO / retraité
Date d'inscription: 13-03-2008
Site web

Re: [MSFS] récupérer les objets d'une scène de FSX

Les bons tuyaux ou l'esprit de recherche .... j'ai simplement profité des deux premiers mois pour lire toute la doc du SDK et celle que j'ai pu trouver et maintenant je suis paré.
D'ailleurs les deux scènes CYMX et CTH3 que j'ai publié s'appuient grandement sur tous ces travaux préparatoires.


@+ Didier
http://www.pilote-virtuel.com/img/members/53/mini-Logo-Beaver-small.jpg
W10 Pro 64b Build 22H2 - Boitier HAF 932 - Z390 STRIX-F - 9900K - 2x16 Go - NVidia 3060 Ti 8 Go - Alim Corsair 800W - Ecran 34" - NVidia Studio ready 536.23
P3D v5.4 = http://www.pilote-virtuel.com/img/membe … ages-A.jpg - MSFS Deluxe/STORE - X-Plane 12B

Hors ligne

 

#5 [↑][↓]  07-12-2020 14:17:11

jacquesGSN
Copilote
Date d'inscription: 11-10-2009
Renommée :   

Re: [MSFS] récupérer les objets d'une scène de FSX

Merci Lagaffe
Je viens de regarder le ficher layout.json je ne vois pas où il pourrait y a avoir une erreur.
Lees textures sont bien mentionnées avec le bon nom et l'extension PNG.DDS.
Je ne vois pas de différence dans notepad entre les fichiers *.json des mods qui fonctionnent et ceux qui n'ffichent pas les textures (à part bine sur le nom des textures).
Cordialement
Jacques

Hors ligne

 

#6 [↑][↓]  07-12-2020 14:45:53

Lagaffe
Pilote Virtuel
Membre donateur
Lieu: LFPO / retraité
Date d'inscription: 13-03-2008
Site web

Re: [MSFS] récupérer les objets d'une scène de FSX

Jacques,

Ce n'est pas ce que j'ai indiqué. Pour un objet présentant des textures blanches, par exemple Touriste03 , il faut ouvrir le fichier Touriste03.gTF dans le Notepad et regarder en bas du fichier. Par exemple:

...
  "materials": [
    {
      "pbrMetallicRoughness": {
        "baseColorFactor": [
          0.58799999952316284,
          0.58799999952316284,
          0.58799999952316284,
          1.0
        ],
        "roughnessFactor": 1.0,
        "metallicFactor": 0.0,
        "baseColorTexture": {
          "index": 0
        }
      },
      "emissiveFactor": [
        0.0,
        0.0,
        0.0
      ]
    }
  ],
  "textures": [
    {
      "source": 0,
      "name": "touriste"
    }
  ],
  "images": [
    {
      "uri": "touriste.dds"
    }
  ],
  "bufferViews": [
    {
      "buffer": 0,
      "byteOffset": 0,
      "byteLength": 11040
    },
    {
      "buffer": 0,
      "byteOffset": 11040,
      "byteLength": 9024,
      "byteStride": 12
    },
    {
      "buffer": 0,
      "byteOffset": 20064,
      "byteLength": 9024,
      "byteStride": 12
    },
    {
      "buffer": 0,
      "byteOffset": 29088,
      "byteLength": 6016,
      "byteStride": 8
    }
  ],
  "buffers": [
    {
      "byteLength": 35104,
      "uri": "Touriste.bin"
    }
  ]
}

Dans l'exemple on voit Touriste.dss qui ne devrait pas y être donc on remplace les termes en gras par Touriste.png.
Est-ce mieux expliqué comme cela ?

En fait, MCX est assez laxiste et corrige de lui-même ces erreurs de typo;  le simu non.


@+ Didier
http://www.pilote-virtuel.com/img/members/53/mini-Logo-Beaver-small.jpg
W10 Pro 64b Build 22H2 - Boitier HAF 932 - Z390 STRIX-F - 9900K - 2x16 Go - NVidia 3060 Ti 8 Go - Alim Corsair 800W - Ecran 34" - NVidia Studio ready 536.23
P3D v5.4 = http://www.pilote-virtuel.com/img/membe … ages-A.jpg - MSFS Deluxe/STORE - X-Plane 12B

Hors ligne

 

#7 [↑][↓]  07-12-2020 16:59:10

jacquesGSN
Copilote
Date d'inscription: 11-10-2009
Renommée :   

Re: [MSFS] récupérer les objets d'une scène de FSX

Merci Lagaffe

Mais je ne comprends pas bien

Par exemple les fichiers que j'obtiens dans le dossier Package sont les suivants :

dossier "gsn-camion pompier lfot" qui contient :
dossier Contentinfo
dossier scenery
Business.json
Layout.json
manifest.json

le dossier "contentinfo" contient:
le dossier "GSN-CAMION POMPIER LFOT" qui contient le fichier thumbnail.jpn

le dossier "scenery" contient le dossier "mycompany" qui contient le dossier "texture" et un fichier "modelLib.bgl"

le dossier "texture" contient pour chaque texture un fichier "camion pompier lfot1.png.dds" et un fichier"camion pompier lfot1.png.dds.json"

Et c'est tout.

Si j'ouvre avec Notepad tous les fichiers de type json j'obtiens :

fichier  "Business.json"
"PriceInUSD": 0.25,
  "ThirdPartyShortName": "mycompany",
  "ThirdPartyUaid": "",
  "releaseDate": "2020-1-1"

le fichier "layout.json"
{
  "content": [
    {
      "path": "ContentInfo/GSN-CAMION POMPIER LFOT/thumbnail.jpg",
      "size": 13424,
      "date": 132518196111914791
    },
    {
      "path": "scenery/mycompany/modelLib.BGL",
      "size": 58736,
      "date": 132518198190388400
    },
    {
      "path": "scenery/mycompany/TEXTURE/CAMION POMPIER LFOT0.PNG.DDS",
      "size": 312,
      "date": 132518198189469346
    },
    {
      "path": "scenery/mycompany/TEXTURE/CAMION POMPIER LFOT0.PNG.DDS.json",
      "size": 102,
      "date": 132518198189449368
    },
    {
      "path": "scenery/mycompany/TEXTURE/CAMION POMPIER LFOT1.PNG.DDS",
      "size": 699192,
      "date": 132518198189369453
    },
    {
      "path": "scenery/mycompany/TEXTURE/CAMION POMPIER LFOT1.PNG.DDS.json",
      "size": 102,
      "date": 132518198189329493
    }
  ]
}

fichier manifest.json
{
  "dependencies": [],
  "content_type": "SCENERY",
  "title": "",
  "manufacturer": "",
  "creator": "",
  "package_version": "0.1.0",
  "minimum_game_version": "1.11.6",
  "release_notes": {
    "neutral": {
      "LastUpdate": "",
      "OlderHistory": ""
    }
  }
}

Dans le dossier "texture" fichier CAMION POMPIER LFOT1.PNG.DDS.JSON
{"Version":2,"SourceFileDate":132518197097337290,"Flags":["FL_BITMAP_COMPRESSION","FL_BITMAP_MIPMAP"]}

Et dans tout cela je ne vois rien de ce qui ressemble à ton exemple.

Cordialement

Jacques

Hors ligne

 

#8 [↑][↓]  07-12-2020 18:16:47

Lagaffe
Pilote Virtuel
Membre donateur
Lieu: LFPO / retraité
Date d'inscription: 13-03-2008
Site web

Re: [MSFS] récupérer les objets d'une scène de FSX

Ce que tu décris est l'arborescence finale générée par la compilation: répertoire Packages.

Pour compiler il faut des fichiers sources dans un répertoire de travail PackageDefinitions et PackageSources. C'est dans ce répertoire de travail PackageSources que l'on va mettre les fichier glTF et les textures (plus précisément dans le répertoire modelLib) dans puis on charge le projet via le DEV Mode et au final on compile.
Donc il faudrait voir dans ce répertoire de travail ces fameux fichiers glTF pour voir ce qu'ils contiennent.

Pour résumé : tu pars d'une arborescence de travail et tu produit un environnement final.
Ton problème se situe dans l'arborescence de travail PackageSources\modelLib ors toi tu cherches dans celle du résultat donc cela ne peut pas aboutir.


@+ Didier
http://www.pilote-virtuel.com/img/members/53/mini-Logo-Beaver-small.jpg
W10 Pro 64b Build 22H2 - Boitier HAF 932 - Z390 STRIX-F - 9900K - 2x16 Go - NVidia 3060 Ti 8 Go - Alim Corsair 800W - Ecran 34" - NVidia Studio ready 536.23
P3D v5.4 = http://www.pilote-virtuel.com/img/membe … ages-A.jpg - MSFS Deluxe/STORE - X-Plane 12B

Hors ligne

 

#9 [↑][↓]  07-12-2020 20:42:50

jacquesGSN
Copilote
Date d'inscription: 11-10-2009
Renommée :   

Re: [MSFS] récupérer les objets d'une scène de FSX

Merci Lagaffe

J'ai compris quel fichier il me fallait regarder avec notepad.
Mais cela me semble bon.
le fichier "Camion Pompier LFOT.gltf" a bien l'extension png

_____________
"textures": [
    {
      "source": 0,
      "name": "camion pompier lfot0"
    },
    {
      "source": 1,
      "name": "camion pompier lfot1"
    }
  ],
  "images": [
    {
      "uri": "camion pompier lfot0.png"
    },
    {
      "uri": "camion pompier lfot1.png"
    }
  ],
------------------------------
j'ai donc toujours mon pb;

encore merci

Jacques

Hors ligne

 

Pied de page des forums

Maintenance informatique Lausanne