brickvention 2006page 1 introduction to ldraw. brickvention 2006page 2 goal: orientation available...
TRANSCRIPT
Brickvention 2006 Page 1
Introduction to LDraw
Brickvention 2006 Page 2
Goal: Orientation
• Available virtual LEGO resources
• System Components• Uses of the system• The future of virtual
LEGO• Artistic
accomplishments• Needs and
opportunities
Brickvention 2006 Page 3
Introduction: Ross Crawford
• Part author / reviewer
• Author of txt2dat
Brickvention 2006 Page 4
Why Virtual LEGO?
• Huge audience; education, hobby, industry
• Document custom designs
• Create instructions• Generate stunning
artwork• Virtual bricks are free,
and come in any color• It’s fun!
Brickvention 2006 Page 5
Brief History of LDraw
• Created by James Jessiman
• James’ early design embraced by AFOLs
• New tools created• Ldraw Organisation
formed, Ldraw.org• Now recognised by
LEGO company “It’s a toy, not a business” – J.J.
Brickvention 2006 Page 6
Resources: An Overview
LDraw FormatLibrary 2500+ Parts
File FormatConverters
Conversion Process
Batch Rendering
Tools
Other Formats:3DS, DXF, POV,OBJ, LWO, etc.
Modelers
Files and RenderingsFor Archival and Sharing
Utilities Viewers
Modelers
Brickvention 2006 Page 7
The LDraw System
• Standard Language and Library• Almost 3000 LEGO parts in library• Open-source project born out of an
online community• Around 100,000 users; enthusiasts of all
ages and educators at all levels• Freely downloadable via
www.LDraw.org
Brickvention 2006 Page 8
Components OfThe LDraw System
• Parts Library• LDraw Description Language• Tools
– Editors– Viewers– Converters– Renderers– Batch Automation
Brickvention 2006 Page 9
The LDraw Description Language
• Text-based: Portability and Readability
• Simple to parse – Hierarchical: primitives parts
submodels models– Well defined line syntax
• Polygon-based– Lacks support for cylinders and
round objects– No mesh support
• Historical consistency guarantees compatibility
The system is strong because of itssimplicity and straightforward nature.
Brickvention 2006 Page 10
Anatomy of LDraw Files
0 Three Brick Stack
0 Name: 3 bricks.ldr
1 4 0 0 0 1 0 0 0 1 0 0 0 1 3001.dat
1 1 40 0 40 1 0 0 0 1 0 0 0 1 3001.dat
1 14 20 -24 20 1 0 0 0 1 0 0 0 1 3001.dat
Brickvention 2006 Page 11
Line Breakdown
Brickvention 2006 Page 12
Hierarchy Illustrated0 Three Brick Stack0 Name: 3 bricks.ldr
1 4 0 0 0 1 0 0 0 1 0 0 0 1 3001.dat1 1 40 0 40 1 0 0 0 1 0 0 0 1 3001.dat1 14 20 -24 20 1 0 0 0 1 0 0 0 1 3001.dat
0 Brick 2 x 40 Name: 3001.dat
0 BFC INVERTNEXT1 16 0 24 0 36 0 0 0 -20 0 0 0 16 box5.dat1 16 0 24 0 40 0 0 0 -24 0 0 0 20 box5.dat
0 STUDS1 16 30 0 10 1 0 0 0 1 0 0 0 1 stud.dat1 16 10 0 10 1 0 0 0 1 0 0 0 1 stud.dat1 16 -10 0 10 1 0 0 0 1 0 0 0 1 stud.dat1 16 -30 0 10 1 0 0 0 1 0 0 0 1 stud.dat1 16 30 0 -10 1 0 0 0 1 0 0 0 1 stud.dat1 16 10 0 -10 1 0 0 0 1 0 0 0 1 stud.dat1 16 -10 0 -10 1 0 0 0 1 0 0 0 1 stud.dat1 16 -30 0 -10 1 0 0 0 1 0 0 0 1 stud.dat
0 TUBES1 16 20 4 0 1 0 0 0 -5 0 0 0 1 stud4.dat1 16 0 4 0 1 0 0 0 -5 0 0 0 1 stud4.dat1 16 -20 4 0 1 0 0 0 -5 0 0 0 1 stud4.dat
4 16 40 24 20 36 24 16 -36…4 16 -40 24 20 -36 24…4 16 -40 24 -20 -3 …4 16 40 24 -20 …
0 Stud0 Name: stud.dat
1 16 0 -4 0 6 0 0 0 1 0 0 0 6 4-4disc.dat 1 16 0 0 0 6 0 0 0 1 0 0 0 6 4-4edge.dat1 16 0 -4 0 6 0 0 0 1 0 0 0 6 4-4edge.dat1 16 0 0 0 6 0 0 0 -4 0 0 0 6 4-4cyli.dat
0 Disc 1.00 Name: 4-4disc.dat
3 16 0 0 0 1 0 0 0.9239 0 0.38273 16 0 0 0 0.9239 0 0.3827 0.7071 0 0.70713 16 0 0 0 0.7071 0 0.7071 0.3827 0 0.92393 16 0 0 0 0.3827 0 0.9239 0 0 13 16 0 0 0 0 0 1 -0.3827 0 0.92393 16 0 0 0 -0.3827 0 0.9239 -0.7071 0 0.70713 16 0 0 0 -0.7071 0 0.7071 -0.9239 0 0.38273 16 0 0 0 -0.9239 0 0.3827 -1 0 -03 16 0 0 0 -1 0 -0 -0.9239 0 -0.38273 16 0 0 0 -0.9239 0 -0.3827 -0.7071 0 -0.70713 16 0 0 0 -0.7071 0 -0.7071 -0.3827 0 -0.92393 16 0 0 0 -0.3827 0 -0.9239 0 0 -13 16 0 0 0 0 0 -1 0.3827 0 -0.92393 16 0 0 0 0.3827 0 -0.9239 0.7071 0 -0.70713 16 0 0 0 0.7071 0 -0.7071 0.9239 0 -0.38273 16 0 0 0 0.9239 0 -0.3827 1 0 0
Brickvention 2006 Page 13
Editing ModelsMLCad
• Easy to use, drag ‘n’ drop
• Advanced editing functions
• Uses standard Ldraw parts library
• Windows Only
Brickvention 2006 Page 14
Editing ModelsLeoCad
• Multi-platform (Windows, Linux)
• Advanced editing functions
• Uses custom database which is generated from Ldraw parts library
Brickvention 2006 Page 15
Editing ModelsLEGO Digital Designer
• Multi-platform (Windows, Mac)
• Simple editing functions
• Uses custom library – limited parts selection
• Convert to / from Ldraw files
Brickvention 2006 Page 16
Building Instructions
• Edge Line Detection (MegaPOV, ldglite)
• Advanced Scripting Commands (MLCad)
• Batch Rendering and Page Layout (LPub)
Brickvention 2006 Page 17
The Future of Virtual LEGO
• New Language Specs
• Collision Detection
• Flexible Element Support
• Animation Support
• Your project?
Brickvention 2006 Page 18
Artistic Accomplishments
Brickvention 2006 Page 19
Li’l Dumper by Ross Crawford
Brickvention 2006 Page 20
Trike by Allister McLaren
Brickvention 2006 Page 21
Spider Mech type A by Timothy Gould
Brickvention 2006 Page 22
Needs and Opportunities
• Developers and Students– Write cool software; modelers, converters– Contribute to the language specs
• Designers and Writers– Help improve LDraw.org– Graphic design– Articles
• Educators– Apply the tools in the classroom
Brickvention 2006 Page 23
Thank You
Any Questions?
Please feel free to follow up by email:
Or visit http://www.ldraw.org