Most, 3D Printers provide their own 3D printing software (or Slicing software) that can open and print STL files. An STL file is the standard file format that you might use to print your 3D model into a physical object. It contains the information (series of triangles and their XYZ coordinates) needed to produce a physical object layer by layer. Like a traditional 2D printer, with a 3D printing software you can rotate, scale and resize the model. You can also choose different 3D print settings like layer thickness and fill type. However, to design and create your own objects, you may need a 3D modeling software. There are a wide variety of 3D modeling softwares both free and commercial that will help you bring your creation alive (123D Design, Sketchup, Autodesk Inventors Fusion…). The STL file can be generated using most 3D modeling programs.