質問編集履歴

3

タイトル変更

2015/08/04 03:34

投稿

taratail
taratail

スコア76

test CHANGED
@@ -1 +1 @@
1
- [SpriteKit]クラスにskScene渡してaddChildすと、うまく表示されない?
1
+ [SpriteKit]オブジェクトプールようなもの
test CHANGED
File without changes

2

コメント追加

2015/08/04 03:34

投稿

taratail
taratail

スコア76

test CHANGED
File without changes
test CHANGED
@@ -8,11 +8,11 @@
8
8
 
9
9
  class MyView: SKView {
10
10
 
11
- private var skScene: SKScene!
11
+ private var skScene: SKScene! // 各スプライトが描画されるシーン
12
-
13
- private var mover: Mover!
14
12
 
15
13
  ...
14
+
15
+ // ここからはじまる
16
16
 
17
17
  func initialize() {
18
18
 
@@ -26,7 +26,9 @@
26
26
 
27
27
  pool = Pool(parentScene: skScene)
28
28
 
29
+
30
+
29
-
31
+ var mover: Mover! // プールに登録するオブジェクト
30
32
 
31
33
  mover = pool.createMover()
32
34
 
@@ -72,6 +74,8 @@
72
74
 
73
75
 
74
76
 
77
+ // 新しいオブジェクトMoverをpool配列からを取得 or pool配列に生成
78
+
75
79
  private func getNewMoverInstance() -> Mover? {
76
80
 
77
81
  for var i=0; i<pool.count; i++ {
@@ -94,6 +98,8 @@
94
98
 
95
99
 
96
100
 
101
+ // オブジェクトMover作成と、nodeをシーン追加する
102
+
97
103
  func createMover() -> Mover? {
98
104
 
99
105
  let newInstance = getNewMoverInstance()
@@ -109,6 +115,8 @@
109
115
  }
110
116
 
111
117
 
118
+
119
+ // 描画されるSKNodeと、描画先のSKSceneなどを備えたオブジェクトMoverの定義
112
120
 
113
121
  class Mover {
114
122
 
@@ -128,6 +136,8 @@
128
136
 
129
137
  ...
130
138
 
139
+ // オブジェクトのnodeの設定
140
+
131
141
  func setNode() {
132
142
 
133
143
  self.node = SKShapeNode(ellipseOfSize: ...)

1

誤植:正しいクラス名に変更

2015/08/03 11:57

投稿

taratail
taratail

スコア76

test CHANGED
File without changes
test CHANGED
@@ -54,7 +54,7 @@
54
54
 
55
55
  class Pool : NSObject {
56
56
 
57
- private var pool = [LampMover?]()
57
+ private var pool = [Mover?]()
58
58
 
59
59
  private let parentScene: SKScene
60
60