Skip to content

Releases: SynrgStudio/STL-Renderer

STL Renderer v1.1.0

Choose a tag to compare

@SynrgStudio SynrgStudio released this 03 Nov 14:08
c216dc2

STL Renderer 1.1.0

A big under-the-hood update: everything that was documented now actually works, files that used to fail now load, and the app no longer needs anything extra installed.

Download

  • STLRenderer-Setup-1.1.0.msi – installer. If you have 1.0.0 installed it gets replaced automatically.
  • STLRenderer-1.1.0-portable-x64.zip – no install needed, just unzip and run. Settings are kept in that same folder.
  • SHA256SUMS.txt – checksums.

Drag-and-drop works exactly as before: drop one or more STL files (or a folder!) onto STLRenderer.exe and you get <name>_png.png next to each one.

What's fixed

  • Command line options now work. -c, -bg, -a, -o and -s were documented but ignored. They're validated now, and there are new ones: --width, --height, --transparent, --opaque.
  • The PNG uses the resolution you set. Saving from the GUI used to export at the window size.
  • The exported image looks like the preview. The lighting used to be different.
  • Images with odd widths no longer come out skewed.
  • More STL files load: binary STLs whose header starts with solid (common from some CAD exporters) used to fail. Broken/truncated files are rejected safely instead of misbehaving, and a failed file no longer wipes the model you had loaded.
  • Folders and filenames with accents or ñ now work everywhere (open/save dialogs, drag-and-drop, command line).
  • .STL in uppercase is no longer ignored.
  • Consistent output names: always <name>_png.png, no matter how you opened the file.
  • Batch errors are reported: the exit code is 0 if everything rendered, 1 if any file failed, 2 for invalid options.
  • No more Visual C++ Redistributable needed: the exe runs on a clean Windows install.
  • The app now installs as 64-bit.

Good to know

  • Settings now live in %APPDATA%\STLRenderer\config.ini (the install folder isn't writable). Your old 1.0.0 settings aren't carried over.
  • Command line options only apply to that run and don't change your saved GUI settings.
  • Requires Windows 10 or newer and an OpenGL 3.3 compatible GPU.

Command line examples

STLRenderer --width 1920 --height 1080 -c 0.9 0.4 0.1 --transparent parts/
STLRenderer -o preview.png -a 45 bracket.stl

Run STLRenderer --help for every option.


Developed with ❤️ by Damian from SynrgStudio and Claude ❤️

STL Renderer v1.0.0

Choose a tag to compare

@SynrgStudio SynrgStudio released this 24 Mar 08:36

Why STL Renderer?

One thing I've been using A LOT is stltopng from Papa's Best but the project didn't see any update past 2021 and to be honest... it was SUPER NECESARY to make an update haaha, so I've made a new app:

GUI to set the camera angle and zoom
Directory rendering (Render all STL files from a specific directory)
Single and Multi Drag-n-drop behaviour in the same exe

The idea is that you can drag-n-drop a single stl or multiple stl and it'll create the corresponding PNG renders at ULTRA FRECKING MEGA FAST SPEED with all your settings.... with transparent background too :D

STL Renderer

STL Renderer is a high-performance application for converting STL files to PNG images. It is designed to be extremely fast and allow both individual and batch processing.

STL Renderer

Features

  • 🚀 Ultra-fast rendering of STL files to PNG
  • 🎨 Support for transparent backgrounds
  • 🖌️ Customizable color settings for model and background
  • 📷 Precise camera control (rotation, distance, zoom)
  • 📁 Batch processing of entire folders
  • 🖱️ Drag and drop functionality (single or multiple files)
  • 💻 Intuitive graphical interface
  • 🔧 Configuration saved between sessions

Usage

Drag and Drop

Simply drag one or more STL files onto the STLRenderer.exe executable. This will automatically generate PNG images with the same name (adding _png.png) in the same folder as the original files.

Graphical Interface

To open the graphical interface, double-click on the STLRenderer.exe executable. From here you can:

  1. Open STL files from the File > Open menu
  2. Adjust model and background colors in the Colors panel
  3. Configure camera rotation and distance with the Camera controls
  4. Interactively rotate the model with the mouse in the preview window
  5. Process entire folders with STL files from File > Process folder
  6. Save the current image from File > Save image

Command Line

STL Renderer can also be used from the command line to automate tasks:

stlrenderer [options] [stl_files]

Available options:

  • -h, --help - Show help
  • -v, --version - Show version
  • -s, --silent - Silent mode (no GUI)
  • -c, --color R G B - Set model color (values between 0.0 and 1.0)
  • -bg, --background R G B - Set background color (values between 0.0 and 1.0)
  • -a, --angle A - Set camera angle in degrees
  • -o, --output FILE - Set output file for rendered image

System Requirements

  • Windows 7 or higher
  • Graphics card compatible with OpenGL 3.3+

Building from Source

Requirements

  • CMake 3.10 or higher
  • C++17 compatible compiler (MSVC, GCC, Clang)
  • OpenGL 3.3 or higher

Steps

  1. Clone the repository:

    git clone https://github.com/SynrgStudio/stl-renderer.git
    cd stl-renderer
  2. Create build directory:

    mkdir build
    cd build
  3. Configure with CMake:

    cmake ..
  4. Build:

    cmake --build . --config Release
  5. The executable will be available in the build/Release/ folder

Contributing

Contributions are welcome. Please check CONTRIBUTING.md for more details on the contribution process.

Documentation

To better understand the code structure and how it works internally, see DOCUMENTATION.md.

Roadmap

Some features we plan to add in the future:

  • Support for other 3D formats (OBJ, FBX, etc.)
  • Additional lighting modes
  • Customizable shaders
  • Export to additional formats (JPG, SVG, etc.)
  • Support for Linux and macOS

License

This project is licensed under the GNU GPL v3 License - see the LICENSE file for details. This ensures that any derivative work also remains as free and open-source software.

Contact

If you have any questions or suggestions, feel free to open an issue in this repository.


Developed with ❤️ by Damian from SynrgStudio and Claude ❤️ (Yeah, I'm not a good dev, and Claude helped me a lot on this one, get over it XD)