Brick 1 x 3
Brick 2 x 2 Corner    
  Brick 1 x 1  
[ english ]   [ deutsch ]
  Home > MLCad > Tutorial: Adding unofficial LDraw parts to MLCad - Page 2 of 2    
  Page <Previous 1 2

Sharing projects containing unofficial parts

Brick 1x1 Round  
  Brick 1x2
Sharing a LDraw project with people who might not have a folder with unofficial parts on their discs poses some limits. A LDraw project, which typically carries a .ldr or .mpd extension in the file name, does not contain the actual geometries, but references to the parts used in the model or scene. This comprises also color codes, rotation and position in relationship to the origin of the model. Every LDraw viewer/editor/publisher expects at first to find the referenced parts in the library. If the part cannot be found the various programs of the suite cope in different ways with the situation. Therefore some precautionary measure have to be adapted.


for example first looks for the missing part into the folder where the model is stored and adverts you with the following dialog if no part could be found:
Brick 4x4
  Screenshot Missing Part in MLCad
  I warmly recommend to answer with Yes the above question. Otherwise MLCad will list the missing part as FILE NOT FOUND! and you get no clues what the heck is missing.  
  Screenshot Parts List Project MLCad
     Brick 2x3 Loading the missing part you still get no geometry but at least the Part no. for the Part unknown! and with a right click in the Parts Project List a chance to browse manually for it.


LDView is hard-coded to look in the <LDrawDir>/Unofficial/Parts and <LDrawDir>/Unofficial/P directories when it doesn't find a part in its search path. It then attempts to download unofficial parts from the LDaw Parts Tracker into that directory if it can't find the part (assuming the user hasn't disabled this feature in the programs Preferences). Obviously, no Internet, no unofficial part to show.
  Screenshot LDview
  For the event you wanna define additional directories you'll have to add the paths to LDView. Select File > Extra dirs... from the Menubar and browse for the directories . LDView's help file gives a deeper insight into the feature:

„When LDView loads a model, and the model references a part or sub-model, it searches for that part or sub-model in a number of locations. No matter what you enter here, it will search the directory the model is located in, as well as the \P, \Parts, and \Models directories inside the LDraw directory (in that order). If it doesn't find the file in any of those directories, it will then search all the directories listed in the Extra Search Dirs dialog accessed via this menu item. It searches them in the order they are listed in the box, so you can move directories in the box up and down to get them in the order you want them to be in.“


has no download feature but at least automatically searches for missing parts in the de-facto standard location <LDrawDir>\Unofficial. If the referenced file can be found LPub will show it in the project as well as the Parts List. If there is no Unofficial\Parts and/or Unofficial\P folder with no parts it won't show it. No warning, no extra directories to define, no hacking – as simple as that! Neither it won't check the folder the model is stored in as MLCad or LDView do. Also other folders in the Unofficial directory aren't considered, which is a pity and forces you to move your LSynth or custom parts to Unofficial\Parts in the LDraw Parts Library root.

NOTE! You might wonder why an unofficial part is shown correctly in LPub though you haven't noticed any Unofficial folder tree in your LDraw Parts Library? The LDraw-All-In-One-Installer offers an option which registers LDView as thumbnail generator in Windows Explorer. If that's the case and you're connected to the Internet while calling the Open LDraw File dialog in LPub, LDView will automatically download the LDraw file when the View of the folder content is for example set to Large icons or Tiles. Re-check for the Unofficial folder.


To work a round all the issues mentioned above, import the unofficial part(s) as submodels into your main model file and save it in a .mpd file. That way, if changes are made to the unofficial parts before they are officially released, your model won't be adversely affected but more important: The geometry of the unofficial file gets added to the project and is referenced from within.
You will point out that it is impossible to tell if a part used in a model or a scene is referenced to the official LDraw Parts Library or the folder with unofficial files, in case you have added an unofficial or custom parts to your library via MLCad's scan order feature. Correct, that's why I recommend MPDCenter for the job.
                      Brick 13x3
Brick 1x2 Screenshot MPDCenter
  Loading a .ldr or .mpd project a quick check will reveal if there are some parts with Unresolved references, in short unofficials. Selecting Import > Import unofficial files from the Menubar will add those to the project. The popping up dialog gives you an overview what files will be imported. The unofficials get added to the model tree in your .mpd project and clicking on, will show some more information. Finally File > Save as the project with the .mpd extension in case you've opened a simple .ldr file.  
  Screenshot MPDCenter - Options
  You might even automatize the import on the whole ticking the checkbox Import unofficial on file load in MPDCenter's Option > Options. Having a closer look at the dialog you will have surely noticed the Unofficial parts folder entry box, where you have to define the location of the Unofficial folder at start. Without the folder you'll be asked by MPDCenter one-by-one for every unresolved reference.

LEg GOdt
  Page <Previous 1 2
  Brick 1x2
All content is provided as is, with no warranty stated or implied regarding the quality or accuracy of any content on or off this site.
LEGO® is a trademark of the LEGO Group of companies which does not sponsor, authorize or endorse this site.