Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums

(Advanced Search)

Forum Statistics
» Members: 5,900
» Latest member: Shoji Ruta
» Forum threads: 6,503
» Forum posts: 53,773

Full Statistics

Online Users
There are currently 182 online users.
» 0 Member(s) | 177 Guest(s)
Applebot, Baidu, Bing, Google, Yandex

Latest Threads
Request for Piece 50625 (...
Forum: Part Requests
Last Post: Jeff Jones
Yesterday, 11:55
» Replies: 1
» Views: 116
Teenage Mutant Ninja Turt...
Forum: Official Models
Last Post: Chris Böhnke
Yesterday, 3:29
» Replies: 9
» Views: 3,179
2026 - New Parts -> Raw M...
Forum: Part Requests
Last Post: Gerald Lasser
2026-06-01, 21:23
» Replies: 6
» Views: 4,176
LDraw.org 2026-05 Parts U...
Forum: LDraw.org Announcements
Last Post: Orion Pobursky
2026-05-31, 20:11
» Replies: 0
» Views: 252
Most Common Parts - 16 im...
Forum: Part Requests
Last Post: tom alphin
2026-05-30, 15:05
» Replies: 4
» Views: 640
Current LEGO Colour Palet...
Forum: Parts Authoring
Last Post: Chris Böhnke
2026-05-29, 21:24
» Replies: 2
» Views: 464
LDraw.org Official Parts ...
Forum: Parts Tracker Discussion
Last Post: Manfred Schaefer
2026-05-29, 12:14
» Replies: 18
» Views: 1,608
Hello! Parts 30258pb006,...
Forum: Part Requests
Last Post: Matthew
2026-05-27, 23:02
» Replies: 6
» Views: 697
Successor to LL918 using ...
Forum: MOCs (My Own Creations)
Last Post: Willy Tschager
2026-05-27, 13:05
» Replies: 1
» Views: 384
at rt
Forum: MOCs (My Own Creations)
Last Post: Jeff Jones
2026-05-27, 8:47
» Replies: 3
» Views: 476

 
  Question about parts requests?
Posted by: Zachary - 2023-08-14, 6:54 - Forum: Part Requests - Replies (1)

May I ask whether one can make a part request for an existing part with an entirely original pattern? 
I've been looking to have something commissioned and I'm not sure where else to ask?

Print this item

  Part Request: 49109pb01
Posted by: Henrique Lazzerini - 2023-08-13, 19:31 - Forum: Part Requests - Replies (4)

Hello, is there a possibility of 49109pb01 being added, I know it's a really complex model, but I could really use it for a cmf I'm making. If it's not possible I completly understand, anyway here's the bricklink page.


[Image: 49109pb01.png]

Print this item

  Part Request 76922pb01 Prince Kalamar's Head Ninjago
Posted by: Davis22 - 2023-08-12, 23:04 - Forum: Part Requests - Replies (1)

Request

Print this item

  Date problem
Posted by: Sylvain Sauvage - 2023-08-12, 19:03 - Forum: Website Suggestions/Requests/Discussion - Replies (5)

Hi,

I just saw the banner “LDraw.org 2023-02 Parts Update Now Available (March 07, 2022)” on the forums’ home page.
There’s a tiny problem with the date in parentheses  Big Grin

Print this item

  Parts request: Printed elements set 10304 Camaro
Posted by: Kuipers - 2023-08-08, 17:55 - Forum: Part Requests - Replies (3)

Hi,
At the moment I'm trying to create a digital file of my alternative model from the 10304 Camaro set. I was able to find some unique parts in the unofficial library, like the wheelarch and some Technic panel in the front splitter for which I owe of course a big "thank you!".
Unfortunately though I used some printed parts as well which as far as I can tell are not available yet in the Ldraw library. The parts in question are:

  1. 3068b 2x2 tile with some metallic grill pattern (in black).
  2. 2431 1x4 tile with 3 metallic horizontal stripes (in trans red). Currently I substituted this with 2431p51 with 2 white stripes.
  3. 98138 1x1 round tile with "5" coin print (in flat silver). Currently I substituted it with part 98138p0i
I don't know how much work this is, but it would be greatly appreciated if someone is willing to create those. I guess that the first one on the list is the most critical one, but probably also the one that takes most time.

Print this item

  Bug report
Posted by: Karen - 2023-08-07, 6:27 - Forum: Help - Replies (4)

Why do I get an error message when I try to import the .dat files for parts 37365 and 37366 into BrickLink PartDesigner? It says certain subparts were not found. Even after downloading the subparts, I still get an error message. Very frustrating...please help!

Print this item

  Parts request
Posted by: Karen - 2023-08-06, 6:30 - Forum: Part Requests - Replies (4)

Below is a list of parts I would like you to add and the links to each part on Bricklink:

Minifigure heads:


Minifigure torsos:
Minifigure headgear:
Decorated tiles:
Decorated slopes:
Decorated round bricks:
Decorated dishes:
Thanks in advance! If there are any more I want added, I'll let you know.

Print this item

  Part Requests for Sets 71244 and 21331
Posted by: Robert Smith - 2023-08-06, 4:20 - Forum: Part Requests - No Replies

Can the following parts be added?

18605c02pb13 - Dimensions Toy Tag with Blue Sonic Head

970c00pb0591 - Hips and Legs with White Legs and Red Shoes Pattern

973pb4539 - Torso Tan Circle Stomach, Black Spines and Tail on Back Pattern

970c00pb1321 - Hips and Legs with White Socks and Red Shoes with Gold Buckles on Sides Pattern

553pb040 - Brick, Round 2 x 2 Dome Top with Blue Glasses with White Diagonal Stripes Pattern

Print this item

  Major PT submit code update
Posted by: Orion Pobursky - 2023-08-06, 2:48 - Forum: Parts Tracker Discussion - Replies (6)

I just pushed app major code update to the part parsing and submission. Be on the look out for bugs.

Print this item

  Rethinking LDraw for modern hardware and software
Posted by: Jonathan N - 2023-08-05, 16:19 - Forum: Official File Specifications/Standards - Replies (13)

The LDraw file format has held up surprisingly well in spite of its age. I’ve outlined a number of limitations when trying to achieve the best performance and results with modern hardware and applications. Any application wanting to work with and render LDraw files efficiently at scale needs to apply significant processing. A new version of the LDraw format should keep this processing in mind because it adds significant runtime cost as well as being ambiguous and difficult to implement.

I’ve worked with implementing and optimizing code for rendering and loading a number of binary and text file formats for 3D models in the video game modding scene. These are non issues with popular formats like glTF or collada and custom binary formats used for modern games. I’m not suggesting that we just adopt something like gltf or replace all the .dat files with .obj due to the unique requirements and optimization opportunities with LEGO models.

I’m curious to see what thoughts people have on what it would take to implement these changes. Some of these points may be more immediately obvious than others. I believe using a human readable format is a worthy goal, but we should also recognize that files are mostly read by machines. We should consider not only the needs of people authoring parts by hand but also the needs of developers. Many usability issues can be resolved with proper libraries and tooling.

Geometry
Modern GPUs are built to render indexed triangle lists. Applications that support quads will need to triangulate them before rendering. This also applies to renderers like Blender. Requiring triangles for LDraw models would simplify application code and also avoid the ambiguities that arise from quads. Future ray tracers will also likely want to work with triangles.

Applications currently need to calculate their own vertex indices. The naive approach is very slow and requires comparing each vertex with every other vertex to detect duplicates. Hashing is unreliable due to rounding errors. Using a distance threshold can be made faster using special tree structures, but it still takes a lot of processing. A lot of popular model formats already include indices like gltf, collada, or wavefront obj. Vertices that come from 3D modeling applications are typically already indexed, so users wouldn’t need to manually specify indices when using these programs to author parts.

Normals
Normals are a major issue with LDraw files. Figuring out the best way to deal with line types is best left to the threads already covering those topics. For GPU rendering, normals are usually defined per vertex instead of per face. LDraw files are unusual in that vertices are not indexed, and smooth normals have to be inferred purely from edge information. 3D modeling applications like Blender typically just have users define edges as “hard” or “smooth” and calculate the vertex indexing for you behind the scenes. Normals can be inferred from the vertex positions and indices, so defining custom normals is only necessary for effects like stylized character shading. LDraw wouldn’t need to explicitly include normals as long as the vertices were indexed correctly and parts were not authored with custom normals in mind.

Subparts
Indexing won’t work well with the current subpart usage. Reducing the number of objects is also beneficial in 3D modeling applications since they need to manage a lot of per object state like unique names, bounding boxes, etc. Subparts also add a lot of small files and negatively impact IO performance for file reads as well as compressing, decompressing, or moving the LDraw parts library. Even newer NVME SSDs are still much faster when using fewer, larger files.

I’m not advocating to completely remove subparts. Subfile references in parts files can still be helpful if a part is made up of multiple sections like joints or hinges. There may be other cases where adding another file reference is justified. I’d like to calculate how much bigger the parts library would be with and without zip compression when not using subparts at some point.

Binary Formats
I don’t think binary files are worth the loss in readability. The space savings from my experience come from using reduced precision for attributes like normals. It’s going to be hard to beat the size of a text file defined in integer LDraw units and even harder after compression. The advantage of binary formats is reduced processing when loading, which matters a lot for games. For a good implementation example that’s close to what graphics APIs work with, see gltf. It’s worth noting that GPUs prefer attributes defined per vertex for cache locality, but applications prefer separate lists for attributes like positions and UV maps for flexibility. We can’t optimize for both in the same format, so the benefits of binary files are mixed.

Level of Detail (LOD)
I don’t think this is an issue on modern hardware for an optimized renderer. A bigger concern is object counts since lots of small objects add a lot of overhead and don’t fully utilize the GPU. Indexing vertices greatly reduces the actual number of vertices processed by the GPU due to vertex reuse. Techniques like frustum and occlusion culling provide significant FPS improvements without requiring any LOD changes. The move towards realtime raytracing or virtualized geometry (UE5 Nanite) will make polygon counts even less of an issue. Path tracers like Blender Cycles already scale very well with polygon counts and benefit from instancing. Memory isn’t a concern since LDraw models instance the same parts many times.

I still think level of detail could be desirable in some cases like selecting a different stud type for CAD applications than final renders. For very large scenes, it may be beneficial to use reduced geometry for distant objects. I plan to investigate this at some point for the ldr_wgpu renderer I’ve been working on as well as other optimizations.

File Format
I’m intentionally not suggesting any specific format changes in this initial post. I’d like to incorporate my rendering library into a file viewer application. This would allow displaying LDraw files in a custom text format within the application. People could use the application to open and view existing LDraw files in the current format and see what it would look like in a different text format. I may also put together a tool for converting the entire parts library and outputting to a new folder. I would want to compare things like file sizes, file count, performance, and ease of implementation in different languages with a new format before I propose any specific changes to LDraw itself.

Print this item