Saturday, February 11, 2017

Why you should care about the data formats CraftMaster supports…

Introduction


One way of thinking about CraftMaster is as a data exchange portal between Minecraft and the broader 3D technology ecosystem, as shown below in Figure 1.

Figure 1: CraftMaster as a data exchange portal between Minecraft and the 3D technology ecosystem.

In this context, CraftMaster provides Minecraft users access to the exciting capabilities enabled by the broader 3D industry - for example VR/AR, 3D printing, 3D scanning, etc. At the same time, CraftMaster also enables the 3D industry to engage with the Minecraft community in new and unique ways. CraftMaster is able to play the role of connective tissue between these two domains due to its ability to import, export, and translate between many different 3D - and even 2D - data formats.

This fundamental feature – 3D/2D data exchange and conversion - is what allows CraftMaster users to download 3D models from 3D Warehouse, convert them into Minecraft schematics and place them into Minecraft worlds (see the Download and Place tutorial). It’s also what allows CraftMaster users to share their Minecraft creations as 3D models on Sketchfab, and from Sketchfab on social media sites (see Extract and Share tutorial). These workflows are only two simple examples of what’s possible with CraftMaster. In fact, there’s an unlimited range of possibilities - once you understand all of the data formats and data flows that CraftMaster supports.

CraftMaster Data Formats


To set the stage, let's first review the relevant data formats, and provide a little context for each. Table 1 below provides a high-level summary of all the data formats that CraftMaster supports.

Table 1: CraftMaster data formats.

  • .NBT: The .NBT file format was introduced into Minecraft along with Structure Blocks. When you Save a structure that you built in Minecraft using a Structure Block, Minecraft creates an .NBT file in the structures folder for that particular World. We use the word “structure” to indicate the content defined by an .NBT file. By the way, individual .NBT files are normally limited to 32x32x32 blocks - which means that users are normally constrained to saving structures that fit within a 32x32x32 block volume (although CraftMaster can help with that…read on).
  • .schematic: As the file suffix indicates, this type of file is called a “schematic". Schematics were introduced with MCEdit as a way for users to “extract” - or, in other words, copy out of a Minecraft world - discreet volumes of the world, and exchange them between worlds and with other users. Schematics can also be used by other Minecraft editors, such as WorldEdit. 
  • .OBJ, .STL, .KMZ, COLLADA (.DAE): These are all 3D data formats that are commonly supported by different applications and workflows within the broader 3D industry. Each specifies the surface geometry of the 3D objects they represent. In addition, .OBJ, .KMZ, and Collada (.DAE) also specify the surface color, or “texture”, of the 3D object. .STL files, on the other hand, are monochrome - no color/texture is captured. Collectively, we refer to this group of file types as “3D models".
  • .PNG, .JPEG: These are industry standard 2D image data formats, which can be imported into CraftMaster and extruded to create 3D models. As you would expect, we refer to .PNG and .JPEG files “2D images”.
  • .CMO: CraftMaster defines a new, canonical 3D data format -"CraftMaster object", or .CMO file. This is the native file format for CraftMaster and all objects are internally stored as this data type.  A .CMO file is actually a compressed ZIP package that contains a CraftMaster 3D data representation of the object, as well as industry standard .OBJ, .NBT, and .schematic renditions of the object.
With this understanding of the relevant data formats, let's now walk through the data flows that CraftMaster enables.

CraftMaster Data Flows


The diagram in Figure 2 below illustrates a holistic view of all of the different data formats supported by CraftMaster, and how CraftMaster enables different data flows.

Figure 2: CraftMaster data formats and data flows.

When content flows through CraftMaster, it is stored and managed as a CraftMaster object, or .CMO file. Depending on what feature of CraftMaster you’re using, CraftMaster will automatically convert between the canonical .CMO format and one or more of the other data formats described above.

Now, let's work our way through the diagram in Figure 2 in detail, starting with the upper left hand corner.

Get Content


One of the three main panels of CraftMaster is the Get Content Panel. From here, you can browse content on 3D Warehouse - probably the most expansive source of free 3D content on the Internet. You can learn more about 3D Warehouse here. 3D Warehouse is exciting for Minecraft users because it hosts a plethora of 3D models that are particularly relevant to Minecraft - including buildings, statues, monuments and much, much more. Watch our Small World Tour video to get a taste of how you can amp-up your building capabilities using 3D Warehouse and CraftMaster.

The 3D models hosted on 3D Warehouse are typically available as Collada/.DAE or .KMZ files. When downloading from 3D Warehouse (see Figure 3), CraftMaster automatically converts these 3D Models into .CMO so they can be used within Craftmaster and easily placed within a Minecraft World.

Figure 3: Downloading a .KMZ file from 3D Warehouse using CraftMaster

Also from the Get Content Panel, CraftMaster users can access a couple different Schematic sharing sites - MinecraftStuff.net and Minecraft-Schematics.com. These sites allow Minecraft users to share (upload and download) schematics that have been created in Minecraft and extracted using MCEdit or WorldEdit, or built from scratch in MCEdit or WorldEdit. When you download a schematic from one of these sites into CraftMaster, a .CMO file is created and stored in the CraftMaster library so, using CraftMaster, schematics can then be easily placed again and again in one or more Minecraft worlds, as well as exported and shared.

Share on Sketchfab


Let’s now move to the top right of the diagram in Figure 2…From CraftMaster’s 3D Panel, users can share any object stored in CraftMaster via Sketchfab by simply invoking the Upload to Sketchfab command (see Figure 4).

Figure 4: Uploading a 3D object to Sketchfab using CraftMaster.

When this command is invoked, CraftMaster uploads an .OBJ for the currently selected 3D Object, and the .OBJ file is processed and stored on Sketchfab’s site. Once on Sketchfab, users can customize the view of their 3D models using a variety of tools provided by Sketchfab, and also share them on Facebook, Twitter, and Tumblr. When 3D Models are shared from Sketchfab, the Sketchfab 3D viewer is embedded into the appropriate social media feed, allowing users to experience the full benefit of viewing the model in 3D. You can learn more about Sketchfab here.

Placing Structures in and Extracting Structures from Minecraft


As you can see on the right side of the diagram in Figure 2, CraftMaster can also be used to place structures within and extract structures from Minecraft worlds. CraftMaster uses Structure Blocks and .NBT files to exchange content with Minecraft. For example, if you place a structure into a world using the CraftMaster map (see Figure 5)...

Figure 5: Placing a Structure using CraftMaster Maps.

...CraftMaster automatically generates Structure Blocks, or .NBT files, in the structures folder for the currently selected World. At the same time, CraftMaster generates a Minecraft command for placing the Structure Block in the specified location, and saves it into the OS Clipboard. Now, all a user needs to do is invoke the command line within Minecraft, paste in the automatically generated command, and hit Return. This places the Structure Block and, when Loaded, the structure is built exactly where the user specified on the CraftMaster map.

Within CraftMaster's 3D Panel, users can also create Structure Blocks for the currently selected 3D object by selecting the Save Structure to Current World command.

Figure 6: Saving a Structure to the Structure folder using CraftMaster.

Invoking this command places the .NBT file(s) that represent the currently selected 3D object into the structures folder of the active world. Subsequently, the user can build that structure from within Minecraft by placing and loading a Structure Block with the same name as the 3D object.

One nice feature of CraftMaster objects is they are not constrained to be only 32x32x32 blocks big. For larger 3D objects, CraftMaster generates and saves multiple Structure Blocks/.NBT files so the complete structure can be automatically built in Minecraft. And, whether the structure is placed using CraftMaster map, or saved from the 3D Panel, it can be built again and again within the target world by simply Loading a Structure Block of that name.

CraftMaster can also extract – or copy out of Minecraft Worlds – volumes defined by two Signs of the same name on opposite corners of the volume. You can learn more about Extracting volumes using Signs by watching the Extract and Share tutorial.  CraftMaster can also extract structures using Structure Blocks – either by defining a new volume within a World or extracting a structure already placed in a world (see Figure 7 below)...

Figure 7: Extracting structures using placed structure blocks in CraftMaster.

...or copying the structure out of the Stored Structures folder (see Figure 8 below).


Figure 8: Extracting a structure from a stored Structure Block in CraftMaster.


Importing and Exporting Content Using CraftMaster


Let’s now move to the bottom left of the diagram. While in CraftMaster’s 3D Panel, users can import any of the data formats shown on the diagram by invoking the Import Model command (see Figure 9):

Figure 9: Importing models using CraftMaster.

CraftMaster can import files stored on the local hard drive in any of the 3D data formats listed. CraftMaster can also import 2D images - either .JPEG or .PNG files - that are imported as 3D objects with an initial thickness of 1 block. Once imported, users can extrude the 2D image to make it as thick as they want.

The import command can also be used to read 3D models captured with a 3D scanner – for example, the bust of my son, shown in Figure 10, was captured using the Structure Sensor 3D scanner and imported into Minecraft using CraftMaster.


Figure 10: 3D scan imported into Minecraft using CraftMaster.

Finally, let's look at the lower right of the diagram. CraftMaster allows users to export objects to a variety of 3D data formats. CraftMaster can export any of the 3D file formats shown in Figure 2 using the Export 3D command (see Figure 11).

Figure 11: Exporting 3D objects using CraftMaster.

For example, CraftMaster can export an .STL file or .OBJ file of something built in Minecraft so that it can be 3D printed.

Finally, CraftMaster allows users to import and export .NBT files and .schematics. This means that CraftMaster can be used to conveniently exchange structures and schematics between Minecraft users, and that CraftMaster is fully compatible with MCEdit and WorldEdit.


Have Fun Exploring CraftMaster!


Wow, I know that’s a lot to internalize…but, I hope it will help you better understand the richness of CraftMaster and the data formats that it supports. More importantly, I hope that you’ll discover new and exciting ways of using CraftMaster to enhance and extend your Minecraft experience.

Amplify your creativity! And, please be sure to share you favorite use cases with us on the CraftMaster user forum.


Monday, January 23, 2017

Check out our YouTube channel...

CraftMaster is chocked full of capabilities and we encourage you to explore the product to discover all of its richness and power. Still, the quickest way to get started with CraftMaster is to follow along with our guided video tutorials on our YouTube channel at www.youtube.com/c/craftmastersoftware. There you'll find tutorials that will show you how to:

  • Download 3D models, convert them into a Minecraft Structures and place them in your Worlds.
  • Share your Minecraft creations on your Facebook page using Sketchfab.
  • Navigate your Worlds more efficiently using CraftMaster Maps.
  • Import 2D images into your Minecraft Worlds.
We'll be adding more tutorials over time, and we also have videos of some of the cool demo worlds we've created using CraftMaster. So please visit and subscribe to our YouTube channel to get the most out of CraftMaster!!

Team CraftMaster

Monday, January 9, 2017

CraftMaster Beta Now Available

Happy New Year!!

















We're celebrating 2017 with the launch of our public beta for CraftMaster on both Windows and macOS - please visit www.craftmastersoftware.com to sign up!

We've posted some helpful material to support our beta testers - there are video tutorials on our YouTube channel at www.youtube.com/c/CraftMasterSoftware, and our CraftMaster Beta Test User Forum can be found at http://cmsw.freeforums.net.

Also, check out our earlier blogs on how to source awesome Minecraft content on 3D Warehouse, and how to share your Minecraft creations on Sketchfab.

We can't wait to see the amazing stuff you create!

Team CraftMaster

Tuesday, January 3, 2017

Share your Minecraft Creations with CraftMaster and Sketchfab


You just spent weeks creating an amazing structure in Minecraft. And, you want to share it with your friends and family, right? Of course, you could always take a screen shot and text it to your friends. Or, you could capture a video and post it on YouTube. Either of these options would allow your friends to experience your creation – but, at best, the perspective provided by these media is limited.

Wouldn’t it be sweet if you could make a copy of your Minecraft creation and post it online, in its full 3 dimensional glory, allowing others to experience it from all angles, up close and far away – even using VR technology?

Well, it’s possible now thanks to CraftMaster and Sketchfab.

Sketchfab is the world’s leading 3D community site with over a half a million contributors and more than a million models uploaded. In essence, Sketchfab is for 3D models what YouTube is for videos - you can check them out at www.sketchfab.com. And, while you’re there, be sure to do a search for “Minecraft” – you’ll quickly discover they already host a wide array of Minecraft content.

CraftMaster makes it easy for you to share your Minecraft creations on the Sketchfab site. And, using Sketchfab’s embeddable 3D viewer, you can also share your Minecraft content on a wide array of popular social media sites - including Facebook and Twitter. So, for example, let's say you’re a teacher and you want to share with the class parents what your kids built using Minecraft. What better way than posting their work using Sketchfab’s 3D viewer on your class's Facebook page!

And, best of all, Sketchfab’s Basic plan – which includes unlimited uploads of up to 50MB per model – is completely free!

Here’s a quick illustration of how it works: My son, who’s a huge soccer fan, spent weeks building an amazingly detailed soccer stadium in Minecraft. Here you can see the stadium in a Minecraft screen shot.


Using Craftmaster, I copied the stadium out of Minecraft and uploaded it to my Sketchfab account. Once on Sketchfab, anyone can view the stadium on my Sketchfab page, or I can embed it into any web page - even this blog:


Sketchfab also lets me post the stadium to my Facebook feed with a single click – check it out here:



Hopefully you’re starting to get a feel for the power of sharing Minecraft content using CraftMaster and Sketchfab. If you want to learn more about how to share your Minecraft models on Sketchfab, check out our video tutorial at https://youtu.be/KtrCHiTnGhI.

Have fun building and, when you're done, always remember to share your creations on Sketchfab!

Friday, October 14, 2016

3D Warehouse and CraftMaster:
Unlocking a wealth of Minecraft-relevant content

Building structures in Minecraft from scratch, block-by-block, can be really fun and fulfilling. It can also be difficult and time-consuming. In some circumstances - for example, a classroom setting with limited time - you may not have the luxury to build complex structures one block at a time. Well, you no longer need to - one of the coolest features of CraftMaster is the ability to import 3D models into your Minecraft worlds. By doing so, you can leverage the creativity and hard work of skilled 3D designers, engineers, and architects from around the world to quickly produce amazing Minecraft content.


CraftMaster can import 3D models in many different data formats - OBJ, COLLADA, and KMZ, to name a few. It can also import 2D images, such as PNG and SVG files - we’ll discuss that in a later blog. In the meantime, just like with 2D images, there are many sites on the Internet where you can find free, downloadable 3D models. A quick search for “free 3D models” on Google will give you a idea of how much content is out there. One of my favorite sites, and a virtual treasure trove of 3D content that is relevant to Minecraft, is SketchUp’s 3D Warehouse.

SketchUp is an easy-to-use 3D modeling tool that allows you to design 3D objects by drawing - much the same way you might sketch out 3D objects using pencil and paper. SketchUp was originally developed by a start-up called @Last software, based in in Boulder Colorado. In 2006, @Last Software was purchased by Google - in large part due to their support for a Google Earth plug-in for SketchUp - and then in 2012 SketchUp was acquired by Trimble Navigation, its current home.

SketchUp © Trimble Navigation
SketchUp is used by architects, designers, builders, makers and engineers. It is also used by universities around the world to teach 3D modeling, design, and architecture. For those tens of millions of people who use SketchUp every year, SketchUp hosts a library of 3D models called 3D Warehouse. It's the most popular 3D content site on the Internet, with over 3 million models, and it's 22 million yearly visitors rack up nearly one billion page views and 230 million downloads annually. Anyone can upload, download, and modify content from 3D Warehouse completely free of charge.

For Minecraft users, what makes 3D Warehouse so compelling is the range and relevance of the content hosted there. Virtually every iconic building, monument, and statue in the world is hosted on 3D Warehouse. In addition, there are vehicles, space ships, animals, and much, much more. And, best of all, access to 3D Warehouse is built right into CraftMaster. To get a sense of the type and range of content available, check out the the CraftMaster demo world video - every structure in this demo world was downloaded from 3D Warehouse, converted and placed into Minecraft using CraftMaster.

Anyone who has attempted to build large complex structures knows it can be a long and painstaking process - it may take hours to get it right. Using CraftMaster, the time is takes to find, download, convert, finish, and place a complex model into a Minecraft world can be as little as a few minutes.

One of my favorite models that I found on 3D Warehouse is the Eiffel Tower - I particularly like the Eiffel Tower designed by a user named Giotis.

3D Warehouse © Trimble Navigation
After downloading the model using CraftMaster, I finished it by first resizing it to 65 blocks tall (on the Y-axis) - thus making it big enough to see all of the detail. Next, I reduced the model to a single color, and then selected Iron Block as the material for the entire model.


With CraftMaster, it’s easy to place the model wherever I want it in a Minecraft world - it’s pretty cool seeing the Eiffel Tower just outside a village.


With millions of models and an unlimited range of possibilities for finishing them using CraftMaster, you can look forward to hours upon hours of exploration and fun. And, your Minecraft worlds will never be the same.

Please subscribe to our blog for additional tips, tricks, and inspiration for how you can amplify your creativity using CraftMaster.

Thursday, September 29, 2016

MINECON 2016 Post Mortem

Phew, what a wild ride it was last weekend at MINECON 2016 in Anaheim! The CraftMaster booth was located in the exhibit hall, right next to the Mesa Biome and not far from the MINECON Store, which had a huge line most of the weekend (something about a purple sheep!).



Our booth was crowded pretty much the whole time. We had live demos of CraftMaster and a new demo video on display (check it out on our YouTube channel: https://www.youtube.com/c/CraftMasterSoftware).

Visitors were quite impressed with the cool stuff you can build using CraftMaster, and the ability to share their creations via Sketchfab to Facebook and Twitter. "Wowwww!" was a common reactionespecially from kids who saw how easy it was to build iconic structures by importing 3D models into their Minecraft worlds. Michael Calvert, the gaming evangelist from Sketchfab, was on-hand and brought free buttons and stickers.

What an amazing crowd MINECON attracts! People of all ages and backgrounds - adults and kids, girls and boys alike. We met people from all over the United States and around the globe - as far away as Australia and New Zealand and even a couple of folks from Spain! What's most memorable, though, is the energy of the show - so positive, such a high level of enthusiasm, and fun! Anyone who thinks that Minecraft is your typical video game needs to go to a MINECON show.

The highlights from the weekend included our two drawings for Xbox One game consoles with Minecraft. The Saturday winner was Mark Glotfelty from New York City, who attended the show with his son. When he found out he won, Mark's e-mail response was: "I can't believe it!! This is very exciting. I hope you are not pulling my leg." And, on Sunday the winner was Jody Novakosky, founder of GamED Academy. You can read her heartwarming Minecraft story here: http://gamedacademy.com/our-story/.

All in all it was a great weekend for CraftMaster Software. Thanks to everyone who stopped by to say hello!!

What did you think of the show? We'd love to hear your comments...

Tuesday, September 20, 2016

Hello and welcome to the CraftMaster Software blog! Here we'll share our observations, talk about what we're currently working on, offer some sneak peaks, and generally engage with you, our users. First some background on who we are…

CraftMaster Software officially came into being in September of 2015. But the genesis of the company was earlier than that. CraftMaster grew out of the joy we experienced playing Minecraft™ together and with our kids, not to mention Pete's tinkering with various custom Minecraft extensions, which has been going on for years.

As you probably know, Minecraft is a global phenomenon, with over 100M users and the momentum keeps going strong. You may also know that Minecraft is not your typical video game - rather, an open-ended platform to explore, solve problems, be creative, and much more. In April of 2016 the New York Times Magazine published an extensive article that profiled the Minecraft phenomenon with a particular emphasis on its usage in education settings. It’s a good overview and definitely worth reading:

http://www.nytimes.com/2016/04/17/magazine/the-minecraft-generation.html

Since we come out of the broader 3D technology industry, we like to think of Minecraft as the most pervasive 3D modeling tool in the world. Within this context, we've long believed that if we could create a portal that allowed content to flow freely between Minecraft and the broader 3D technology ecosystem, both communities would benefit enormously.

This is our goal for CraftMaster. And our vision is starting to come into focus. In fact, we're getting ready to launch the beta versions of our first products at Minecon 2016. So, the next phase of our journey is about to begin.

In the meantime, please visit our web site (www.craftmastersoftware.com) to sign up for our beta program, or just to get on our e-mail newsletter list.

We're looking forward to sharing that experience with you!

Pete, Andy, and Kevin
Co-founders, CraftMaster Software