Skip to content

Commit 3e71840

Browse files
author
Satoshi Hattori
committed
fix: day24
1 parent f2b36d7 commit 3e71840

File tree

5 files changed

+22
-66
lines changed

5 files changed

+22
-66
lines changed

Day24/Day24.xcodeproj/project.pbxproj

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
8E9DD1612A82C9C800E8B32F /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E9DD1602A82C9C800E8B32F /* ContentView.swift */; };
1212
8E9DD1632A82C9C800E8B32F /* ImmersiveView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E9DD1622A82C9C800E8B32F /* ImmersiveView.swift */; };
1313
8E9DD1682A82C9CB00E8B32F /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 8E9DD1672A82C9CB00E8B32F /* Preview Assets.xcassets */; };
14-
8E9DD16F2A82D43200E8B32F /* ViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E9DD16E2A82D43200E8B32F /* ViewModel.swift */; };
1514
8E9DD1722A82E12400E8B32F /* ayutthaya.mp4 in Resources */ = {isa = PBXBuildFile; fileRef = 8E9DD1712A82E12400E8B32F /* ayutthaya.mp4 */; };
1615
8EE7DD812A862B59004A1D14 /* Sphere.usda in Resources */ = {isa = PBXBuildFile; fileRef = 8EE7DD802A862B59004A1D14 /* Sphere.usda */; };
1716
/* End PBXBuildFile section */
@@ -22,7 +21,6 @@
2221
8E9DD1602A82C9C800E8B32F /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
2322
8E9DD1622A82C9C800E8B32F /* ImmersiveView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImmersiveView.swift; sourceTree = "<group>"; };
2423
8E9DD1672A82C9CB00E8B32F /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = "<group>"; };
25-
8E9DD16E2A82D43200E8B32F /* ViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewModel.swift; sourceTree = "<group>"; };
2624
8E9DD1712A82E12400E8B32F /* ayutthaya.mp4 */ = {isa = PBXFileReference; lastKnownFileType = file; path = ayutthaya.mp4; sourceTree = "<group>"; };
2725
8EE7DD802A862B59004A1D14 /* Sphere.usda */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Sphere.usda; sourceTree = "<group>"; };
2826
/* End PBXFileReference section */
@@ -59,7 +57,6 @@
5957
children = (
6058
8E9DD1702A82E0FD00E8B32F /* Resources */,
6159
8E9DD15E2A82C9C800E8B32F /* Day24App.swift */,
62-
8E9DD16E2A82D43200E8B32F /* ViewModel.swift */,
6360
8E9DD1602A82C9C800E8B32F /* ContentView.swift */,
6461
8E9DD1622A82C9C800E8B32F /* ImmersiveView.swift */,
6562
8E9DD1662A82C9CB00E8B32F /* Preview Content */,
@@ -159,7 +156,6 @@
159156
files = (
160157
8E9DD1612A82C9C800E8B32F /* ContentView.swift in Sources */,
161158
8E9DD15F2A82C9C800E8B32F /* Day24App.swift in Sources */,
162-
8E9DD16F2A82D43200E8B32F /* ViewModel.swift in Sources */,
163159
8E9DD1632A82C9C800E8B32F /* ImmersiveView.swift in Sources */,
164160
);
165161
runOnlyForDeploymentPostprocessing = 0;

Day24/Day24/ContentView.swift

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ import RealityKit
33

44
struct ContentView: View {
55

6-
var viewModel: ViewModel
7-
86
@State private var showImmersiveSpace = false
97

108
@Environment(\.openImmersiveSpace) var openImmersiveSpace
@@ -30,5 +28,5 @@ struct ContentView: View {
3028
}
3129

3230
#Preview {
33-
ContentView(viewModel: ViewModel())
31+
ContentView()
3432
}

Day24/Day24/Day24App.swift

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,13 @@ import SwiftUI
33
@main
44
struct Day24App: App {
55

6-
@State private var viewModel = ViewModel()
7-
86
var body: some Scene {
97
WindowGroup {
10-
ContentView(viewModel: viewModel)
8+
ContentView()
119
}
1210

1311
ImmersiveSpace(id: "ImmersiveSpace") {
14-
ImmersiveView(viewModel: viewModel)
12+
ImmersiveView()
1513
}.immersionStyle(selection: .constant(.full), in: .full)
1614
}
1715
}

Day24/Day24/ImmersiveView.swift

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,29 @@
11
import SwiftUI
22
import RealityKit
3+
import AVFoundation
34

45
struct ImmersiveView: View {
56

6-
var viewModel: ViewModel
7-
87
var body: some View {
98
RealityView { content in
10-
content.add(viewModel.setupContentEntity())
11-
}
12-
.onAppear() {
13-
viewModel.play()
14-
}
15-
.onDisappear() {
16-
viewModel.pause()
9+
10+
let avPlayer = AVPlayer()
11+
12+
let url = Bundle.main.url(forResource: "ayutthaya", withExtension: "mp4")!
13+
let asset = AVAsset(url: url)
14+
let playerItem = AVPlayerItem(asset: asset)
15+
16+
let material = VideoMaterial(avPlayer: avPlayer)
17+
18+
let videoEntity = Entity()
19+
videoEntity.components.set(ModelComponent(mesh: .generateSphere(radius: 1E3), materials: [material]))
20+
videoEntity.scale *= SIMD3(-1, 1, 1)
21+
videoEntity.orientation *= simd_quatf(angle: .pi / 2, axis: [0, 1, 0])
22+
23+
content.add(videoEntity)
24+
25+
avPlayer.replaceCurrentItem(with: playerItem)
26+
avPlayer.play()
1727
}
1828
}
1929
}
20-
21-
#Preview {
22-
ImmersiveView(viewModel: ViewModel())
23-
.previewLayout(.sizeThatFits)
24-
}

Day24/Day24/ViewModel.swift

Lines changed: 0 additions & 41 deletions
This file was deleted.

0 commit comments

Comments
 (0)