@@ -73,53 +73,6 @@ public final class GameView: View {
7373 }
7474 }
7575
76- public override func touchesBegan( _ touches: Set < Touch > ) {
77- self . gameViewController? . touchesBegan ( touches)
78- }
79- public override func touchesMoved( _ touches: Set < Touch > ) {
80- self . gameViewController? . touchesMoved ( touches)
81- }
82- public override func touchesEnded( _ touches: Set < Touch > ) {
83- self . gameViewController? . touchesEnded ( touches)
84- }
85- public override func touchesCanceled( _ touches: Set < Touch > ) {
86- self . gameViewController? . touchesCanceled ( touches)
87- }
88-
89- public override func surfaceTouchesBegan( _ touches: Set < SurfaceTouch > , mouse: Mouse ) {
90- self . gameViewController? . surfaceTouchesBegan ( touches, mouse: mouse)
91- }
92- public override func surfaceTouchesMoved( _ touches: Set < SurfaceTouch > , mouse: Mouse ) {
93- self . gameViewController? . surfaceTouchesMoved ( touches, mouse: mouse)
94- }
95- public override func surfaceTouchesEnded( _ touches: Set < SurfaceTouch > , mouse: Mouse ) {
96- self . gameViewController? . surfaceTouchesEnded ( touches, mouse: mouse)
97- }
98- public override func surfaceTouchesCanceled( _ touches: Set < SurfaceTouch > , mouse: Mouse ) {
99- self . gameViewController? . surfaceTouchesCanceled ( touches, mouse: mouse)
100- }
101-
102- public override func cursorEntered( _ cursor: Mouse ) {
103- self . gameViewController? . cursorEntered ( cursor)
104- }
105- public override func cursorMoved( _ cursor: Mouse ) {
106- self . gameViewController? . cursorMoved ( cursor)
107- }
108- public override func cursorExited( _ cursor: Mouse ) {
109- self . gameViewController? . cursorExited ( cursor)
110- }
111-
112- public override func cursorButtonDown( button: MouseButton , mouse: Mouse ) {
113- self . gameViewController? . cursorButtonDown ( button: button, mouse: mouse)
114- }
115- public override func cursorButtonUp( button: MouseButton , mouse: Mouse ) {
116- self . gameViewController? . cursorButtonUp ( button: button, mouse: mouse)
117- }
118-
119- public override func scrolled( _ delta: Position2 , isPlatformGeneratedMomentum isMomentum: Bool ) {
120- self . gameViewController? . scrolled ( delta, isPlatformGeneratedMomentum: isMomentum)
121- }
122-
12376 enum Mode {
12477 case screen
12578 case offScreen
@@ -249,7 +202,11 @@ open class GameViewController: ViewController {
249202
250203 internal override func _update( withTimePassed deltaTime: Float ) async {
251204 await super. _update ( withTimePassed: deltaTime)
252- self . shouldSkipRendering = ( await context. shouldRenderAfterUpdate ( withTimePassed: deltaTime) == false )
205+ if view. superView != nil {
206+ self . shouldSkipRendering = ( await context. shouldRenderAfterUpdate ( withTimePassed: deltaTime) == false )
207+ } else {
208+ self . shouldSkipRendering = true
209+ }
253210 }
254211
255212 @MainActor
@@ -260,53 +217,6 @@ open class GameViewController: ViewController {
260217 open func render( context: ECSContext , into view: GameView , withTimePassed deltaTime: Float ) {
261218
262219 }
263-
264- open func touchesBegan( _ touches: Set < Touch > ) {
265-
266- }
267- open func touchesMoved( _ touches: Set < Touch > ) {
268-
269- }
270- open func touchesEnded( _ touches: Set < Touch > ) {
271-
272- }
273- open func touchesCanceled( _ touches: Set < Touch > ) {
274-
275- }
276-
277- open func surfaceTouchesBegan( _ touches: Set < SurfaceTouch > , mouse: Mouse ) {
278-
279- }
280- open func surfaceTouchesMoved( _ touches: Set < SurfaceTouch > , mouse: Mouse ) {
281-
282- }
283- open func surfaceTouchesEnded( _ touches: Set < SurfaceTouch > , mouse: Mouse ) {
284-
285- }
286- open func surfaceTouchesCanceled( _ touches: Set < SurfaceTouch > , mouse: Mouse ) {
287-
288- }
289-
290- open func cursorEntered( _ cursor: Mouse ) {
291-
292- }
293- open func cursorMoved( _ cursor: Mouse ) {
294-
295- }
296- open func cursorExited( _ cursor: Mouse ) {
297-
298- }
299-
300- open func cursorButtonDown( button: MouseButton , mouse: Mouse ) {
301-
302- }
303- open func cursorButtonUp( button: MouseButton , mouse: Mouse ) {
304-
305- }
306-
307- open func scrolled( _ delta: Position2 , isPlatformGeneratedMomentum isMomentum: Bool ) {
308-
309- }
310220}
311221
312222extension GameView {
@@ -355,8 +265,23 @@ extension GameView {
355265 let p2 = Position3 ( dx * far, dy * far, far) * inverseView
356266
357267 return Ray3D ( from: p1, toward: p2)
358- case . orthographic( _) :
359- fatalError ( " Not implemented " )
268+ case . orthographic( let center) :
269+ let size = self . bounds. size * interfaceScale
270+ var position = position * interfaceScale
271+ switch center {
272+ case . topLeft:
273+ break
274+ case . center:
275+ position -= size / 2
276+ }
277+
278+ let x = position. x
279+ let y = position. y
280+
281+ let inverseView = camera. matricies ( withViewportSize: size) . view. inverse
282+ let start = Position3 ( x, y, - 1 ) * inverseView
283+
284+ return Ray3D ( from: start, toward: camera. transform. rotation. forward)
360285 }
361286 }
362287}
0 commit comments