Swiftpack.co - sbehnke/SwiftlyRT as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by sbehnke.
sbehnke/SwiftlyRT 1.0
An implementation of the Ray Tracer Challenge in Swift
⭐️ 9
🕓 2 weeks ago
.package(url: "https://github.com/sbehnke/SwiftlyRT.git", from: "1.0")


Build Status

An implementation of the Ray Tracer Challenge by Jamis Buck, written in Swift 5.0.

Primitives Supported:

  • Sphere
  • Cube
  • Cone
  • Triangle
  • Cylinder
  • CSG (Constructive Solid Geometry)
    • Union
    • Intersection
    • Difference
  • Group
  • Waveform OBJ Files


  • Point Light
  • Area Light

Texture Mapping:

  • Spherical
  • Planar
  • Cylindrical
  • Cube

Image Formats:

  • PPM

Scene Description Format:

  • Yaml

Bounding Boxes:

  • Dividing Scene based on largest dimension

All existing tests from the book's 17 chapters have been implemented and currently pass. In addition the 3 available bonus chapters have also been implemented along wifh multiple light support and material inheritance. This was a project for me to learn Swift while doing something enjoyable like tranforming mathematics into pretty pictures.


Stars: 9
Last commit: 1 week ago
jonrohan Something's broken? Yell at me @ptrpavlik. Praise and feedback (and money) is also welcome.


Release Notes

Initial Release
1 year ago

Initial release updated for Xcode 12.2 and build as a universal binary that has been notarized by Apple.

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics