Blender is a free and open source 3D creation suite. It supports the entirety of the 3D pipeline—modeling, rigging, animation, simulation, rendering, video editing, and animation.
In this tutorial, we will be using 3 programs, all of which are free to download:
Blender (available on PC, Mac, or Linux)
Reality Converter (free on App Store or with Apple ID for MacBook)
Reality Composer (free on App Store with Apple ID for MacBook)
When starting a new Blender project, this is the first screen you seen. While it may look daunting, we will only be using a few tools in this tutorial to create new objects and perform minor edits on them.
The vertical toolbar on the left side of the screen is where we'll find most of the options we need for object manipulation.
This toolbar is very similar to what you might see in Photoshop. When an object is selected, these buttons let you edit its basic properties in the viewer window. Most important for our purposes are the Move, Rotate, Scale, and Transform buttons (3rd-6th buttons counting down, in the group of four tools). These let you edit your object in the standard ways you would expect.
A slightly more advanced tool that may be useful is the Extrude tool, which allows you to take a single face of your object and pull it outward. To access this tool, you must first change the mode you are in from Object Mode to Edit Mode from the drop down just above the manipulation tools.
Now, extruding our default cube once we are in edit mode takes just a few steps. First, just to the right of Edit Mode on the toolbar are 3 options that let us choose whether we want to select points, edges, or faces. The third option allows us to choose a face to extrude.
Now pick which face of our default square we want to pull outward:
Finally, one of the choices on the expanded Object Manipulation toolbar on the left is called Extrude Region. Choosing this tool will let you pull outward, expanding your object in one direction.
The toolbar on the right displays both the collection of objects within our current scene and the properties of that object.
The top of the pane lists all the objects in the current scene and allows you to select them or make them visible/invisible (again, very similar to Photoshop). The lower window displays the object properties, which can be edited directly here. This includes the manipulation properties which you can also edit in the viewing frame itself. There are many other properties, but we don't need to worry about them for now.
Blender comes with a number of pre-created basic objects that you can then manipulate to create what you want. To add a new object, just go to Add on the toolbar next to Object Mode.
Once you have chosen your mesh, you can manipulate it or extrude it as needed to create the object you want.
Apple's Reality Composer program allows you to import .usdz 3D files. Unfortunately, Blender doesn't let you automatically export files in this format. I recommend exporting your object as a .glb file, as this will let you keep the texture, then you have two options for a quick conversion:
Use Apple's Reality Converter tool to quickly drag-and-drop your model to convert it.
Upload your model to Sketchfab and then download it as a .usdz (see tutorial here)
Note that you cannot change the color/texture of imported objects once they are in Reality Composer. As such, you should color/texture your objects in Blender and export as a .glb to keep the material attached. This can be done in the "material" options under the properties of a specific object.