All Projects → bialylis → ThickRedLine

bialylis / ThickRedLine

Licence: MIT License
Thick Red Line - drawing thick lines for SceneKit with metal shaders

Programming Languages

Metal
113 projects
swift
15916 projects

Projects that are alternatives of or similar to ThickRedLine

HelloMetal
A Suite of Metal Examples written in Swift 4.2. Highlights: Model I/O - SceneKit - OpenEXR.
Stars: ✭ 36 (-10%)
Mutual labels:  metal, shaders, scenekit
Herebedragons
A basic 3D scene implemented with various engines, frameworks or APIs.
Stars: ✭ 1,616 (+3940%)
Mutual labels:  metal, scenekit
YALCT
Yet Another Live Coding Tool - Powered by Veldrid and elbow grease
Stars: ✭ 25 (-37.5%)
Mutual labels:  metal, shaders
Satin
A 3D Graphics Framework built on Apple's Metal
Stars: ✭ 182 (+355%)
Mutual labels:  metal, shaders
Flocking
An example showing how to use SwiftUI, Satin, Forge and Youi to simulate birds flocking via a compute particle system (n-body).
Stars: ✭ 63 (+57.5%)
Mutual labels:  metal, shaders
Ios Learning Materials
📚Curated list of articles, web-resources, tutorials and code repositories that may help you dig a little bit deeper into iOS [and Apple Platforms].
Stars: ✭ 1,380 (+3350%)
Mutual labels:  metal, scenekit
Shadertoy Browser
Shadertoy browser & viewer for Mac built in Rust
Stars: ✭ 176 (+340%)
Mutual labels:  metal, shaders
Metalscope
Metal-backed 360° panorama view for iOS
Stars: ✭ 293 (+632.5%)
Mutual labels:  metal, scenekit
mule
Minimal USD Layout Editor
Stars: ✭ 27 (-32.5%)
Mutual labels:  metal, scenekit
Methanekit
🎲 Modern 3D graphics made simple with cross-platform C++17 meta-API on top of DirectX 12 & Metal (Vulkan is coming)
Stars: ✭ 197 (+392.5%)
Mutual labels:  metal, shaders
Arkit Sampler
Code examples for ARKit.
Stars: ✭ 1,334 (+3235%)
Mutual labels:  metal, scenekit
metal camera
iOS metal camera with GPU shaders.
Stars: ✭ 68 (+70%)
Mutual labels:  metal, shaders
Videngine
3D graphics for iOS using Metal and Swift
Stars: ✭ 86 (+115%)
Mutual labels:  metal, shaders
Glsl Optimizer
GLSL optimizer based on Mesa's GLSL compiler. Used to be used in Unity for mobile shader optimization.
Stars: ✭ 1,506 (+3665%)
Mutual labels:  metal, shaders
Gravitational Waves Playground
Make gravitational waves visible in an interactive iPad simulation.
Stars: ✭ 33 (-17.5%)
Mutual labels:  metal, scenekit
Gltfkit
An Objective-C glTF 2.0 loader and Metal-based renderer
Stars: ✭ 138 (+245%)
Mutual labels:  metal, scenekit
JSceneKit
Port of SceneKit framework to JavaScript
Stars: ✭ 69 (+72.5%)
Mutual labels:  scenekit, scenekit-framework
The Forge
The Forge Cross-Platform Rendering Framework PC Windows, Linux, Ray Tracing, macOS / iOS, Android, XBOX, PS4, PS5, Switch, Quest 2
Stars: ✭ 2,710 (+6675%)
Mutual labels:  metal, shaders
RavEngine
A fast, easy to use C++20 3D game library for modern computers
Stars: ✭ 122 (+205%)
Mutual labels:  metal, shaders
MetalPlayer
A video player using Metal.
Stars: ✭ 68 (+70%)
Mutual labels:  metal, shaders

ThickRedLine

Thick Red Line - drawing thick lines with constant on-screen width independent of perspective, for SceneKit with metal shaders

Example:

let geometry = SCNGeometry.lineThrough(points: [SCNVector3(0, 0,0), SCNVector3(0, 10, 0), SCNVector3(10, 10, 0)],
                                       width: 20,
                                       closed: false,
                                       color: UIColor.red.cgColor)
let node = SCNNode(geometry: geometry)
scene.rootNode.addChildNode(node)

Thick line gif

Parameters:

  • points - array of SCNVector3 indicating points on the line
  • width - (int) width of line in points
  • closed - (bool) if line should for a loop
  • color - (CGColor) color of the line
  • mitter - (bool) if line should form a sharp mitter at the joints. Feature is WIP - not supported with closed (the first and last joint will not be mittered) and there are artefacts when angle between the lines is too small

img1 img2 img3

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].