Requirements and Tips:
- Views should be no larger than 400×400
- If your views require image/audio/video assets, please send those along as well.
- Be creative with your design. Think about how standard buttons and sliders can be mapped in fun and novel ways.
- Consider using a timer and/or randomizer to modulate the signal over time.
- You may or may not require some internal @State for your component views based on their complexity.
___________________________________________________________________________________________
Main Test Code will look something like”
import SwiftUIstruct Signal {
// Range: 0 - 10
var intValue: Int // Range: 0 - 1.0
var floatValue: Float // True or False
var toggleValue: Bool
}struct ContentView: View {
@State var signal = Signal(intValue: 0, floatValue: 0, toggleValue: false) var body: some View {
VStack {
NiensController(signal: $signal) Spacer() NiensVisualizer(signal: signal)
}
}
}
- A controller file with your name. e.g. NiensController.swift
struct NiensController: View {
@Binding var signal: Signal var body: some View {
//
// Add your buttons, knobs, etc. here.
// Update signal appropriately.
// Text("Controller")
}
}
- A visualizer file with your name. e.g. NiensVisualizer.swift
struct NiensVisualizer: View {
var signal: Signal var body: some View {
//
// Create visuals/animations here.
// Text("Visualizer")
}
}