{"id":3245,"date":"2014-11-03T20:22:57","date_gmt":"2014-11-03T11:22:57","guid":{"rendered":"http:\/\/lepetit-prince.net\/ios\/?p=3245"},"modified":"2014-11-03T20:22:57","modified_gmt":"2014-11-03T11:22:57","slug":"%e3%82%b7%e3%83%a7%e3%83%bc%e3%82%b1%e3%83%bc%e3%82%b9%e7%ab%8b%e4%bd%93","status":"publish","type":"post","link":"https:\/\/lepetit-prince.net\/ios\/?p=3245","title":{"rendered":"\u30b7\u30e7\u30fc\u30b1\u30fc\u30b9\u7acb\u4f53"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/-cgR6GEEVYxY\/VFdlOGhZL1I\/AAAAAAAAC3Q\/lBNUsqqZHyY\/s288\/Screen%2520Shot%25202014-11-03%2520at%25208.20.22%2520PM.png\" width=\"288\" height=\"164\" alt=\"iPhone\u30b7\u30e7\u30fc\u30b1\u30fc\u30b9\u7acb\u4f53\" class=\"alignnone\" \/><br \/>\n<\/p>\n<p>\n\u5546\u54c1\u3092\uff13D\u3067\u304f\u308b\u3063\u3068\u898b\u305b\u308b\u30b7\u30e7\u30fc\u30b1\u30fc\u30b9\u3063\u307d\u3044iPhone\u30a2\u30d7\u30ea\u306e\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3092\u63cf\u3044\u3066\u307f\u307e\u3059\u3002\n<\/p>\n<p><!--more--><\/p>\n<p>\n<iframe loading=\"lazy\" width=\"467\" height=\"350\" src=\"https:\/\/www.youtube.com\/embed\/WKLPuB_4NNI?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #d12f1b\"><span style=\"color: #78492a\">#import <\/span>&#8220;ViewController.h&#8221;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span style=\"color: #bb2ca2\">@import<\/span> SceneKit;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #bb2ca2\">@interface<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #4f8187\">ViewController<\/span><span style=\"color: #000000\"> () &lt;<\/span>SCNSceneRendererDelegate<span style=\"color: #000000\">&gt;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #bb2ca2\">@property<span style=\"color: #000000\"> (<\/span>nonatomic<span style=\"color: #000000\">, <\/span>weak<span style=\"color: #000000\">) <\/span><span style=\"color: #703daa\">SCNView<\/span><span style=\"color: #000000\"> *sceneView;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #bb2ca2\">@property<span style=\"color: #000000\"> (<\/span>nonatomic<span style=\"color: #000000\">, <\/span>weak<span style=\"color: #000000\">) <\/span><span style=\"color: #703daa\">SCNScene<\/span><span style=\"color: #000000\"> *scene;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #bb2ca2\">@end<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span style=\"color: #bb2ca2\">@implementation<\/span> ViewController<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)viewDidLoad {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<\/span><span style=\"color: #bb2ca2\">super<\/span><span style=\"color: #000000\"> <\/span>viewDidLoad<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span>view<span style=\"color: #000000\">.<\/span>backgroundColor<span style=\"color: #000000\"> = [<\/span>UIColor<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">lightGrayColor<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #31595d\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\"> <\/span>setupScene<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #31595d\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\"> <\/span>createShowcase<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #31595d\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\"> <\/span>createItems<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #31595d\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\"> <\/span>createCamera<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #31595d\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\"> <\/span>createLight<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)setupScene {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">float<\/span> w = <span style=\"color: #3d1d81\">CGRectGetMaxX<\/span>(<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #703daa\">view<\/span>.<span style=\"color: #703daa\">bounds<\/span>);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SCNView<\/span> *sv = [[<span style=\"color: #703daa\">SCNView<\/span> <span style=\"color: #3d1d81\">alloc<\/span>] <span style=\"color: #3d1d81\">initWithFrame<\/span>:<span style=\"color: #3d1d81\">CGRectMake<\/span>(<span style=\"color: #272ad8\">0<\/span>, <span style=\"color: #272ad8\">0<\/span>, w, w)];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #272ad8\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>sv.<\/span><span style=\"color: #703daa\">backgroundColor<\/span><span style=\"color: #000000\"> = [<\/span><span style=\"color: #703daa\">UIColor<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">colorWithRed<\/span><span style=\"color: #000000\">:<\/span>125.0<span style=\"color: #000000\">\/<\/span>255.0<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">green<\/span><span style=\"color: #000000\">:<\/span>138.0<span style=\"color: #000000\">\/<\/span>255.0<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">blue<\/span><span style=\"color: #000000\">:<\/span>46.0<span style=\"color: #000000\">\/<\/span>255.0<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">alpha<\/span><span style=\"color: #000000\">:<\/span>1<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>sv.<span style=\"color: #703daa\">scene<\/span> = [<span style=\"color: #703daa\">SCNScene<\/span> <span style=\"color: #3d1d81\">scene<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>sv.<span style=\"color: #703daa\">delegate<\/span> = <span style=\"color: #bb2ca2\">self<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #703daa\">view<\/span> <span style=\"color: #3d1d81\">addSubview<\/span>:sv];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">scene<\/span> = sv.<span style=\"color: #703daa\">scene<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">sceneView<\/span> = sv;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)createShowcase {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">for<\/span> (<span style=\"color: #bb2ca2\">int<\/span> i=<span style=\"color: #272ad8\">0<\/span>; i&lt;<span style=\"color: #272ad8\">3<\/span>; i++) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SCNCylinder<\/span> *disk = [<span style=\"color: #703daa\">SCNCylinder<\/span> <span style=\"color: #3d1d81\">cylinderWithRadius<\/span>:<span style=\"color: #272ad8\">2<\/span> <span style=\"color: #3d1d81\">height<\/span>:<span style=\"color: #272ad8\">0.2<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>disk.<\/span>firstMaterial<span style=\"color: #000000\">.<\/span>diffuse<span style=\"color: #000000\">.<\/span>contents<span style=\"color: #000000\"> = [<\/span>UIColor<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">whiteColor<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SCNNode<\/span> *diskNode = [<span style=\"color: #703daa\">SCNNode<\/span> <span style=\"color: #3d1d81\">nodeWithGeometry<\/span>:disk];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>diskNode.<span style=\"color: #703daa\">name<\/span> = [<span style=\"color: #703daa\">NSString<\/span> <span style=\"color: #3d1d81\">stringWithFormat<\/span>:<span style=\"color: #d12f1b\">@&#8221;disk%d&#8221;<\/span>, i];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>diskNode.<span style=\"color: #703daa\">position<\/span> = <span style=\"color: #3d1d81\">SCNVector3Make<\/span>(i * <span style=\"color: #272ad8\">8<\/span> &#8211; <span style=\"color: #272ad8\">8<\/span>, &#8211;<span style=\"color: #272ad8\">10<\/span>, <span style=\"color: #272ad8\">0<\/span>);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">scene<\/span>.<span style=\"color: #703daa\">rootNode<\/span> <span style=\"color: #3d1d81\">addChildNode<\/span>:diskNode];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SCNCylinder<\/span> *mainDisk = [<span style=\"color: #703daa\">SCNCylinder<\/span> <span style=\"color: #3d1d81\">cylinderWithRadius<\/span>:<span style=\"color: #272ad8\">8<\/span> <span style=\"color: #3d1d81\">height<\/span>:<span style=\"color: #272ad8\">0.2<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>mainDisk.<\/span>firstMaterial<span style=\"color: #000000\">.<\/span>diffuse<span style=\"color: #000000\">.<\/span>contents<span style=\"color: #000000\"> = [<\/span>UIColor<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">whiteColor<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SCNNode<\/span> *maindiskNode = [<span style=\"color: #703daa\">SCNNode<\/span> <span style=\"color: #3d1d81\">nodeWithGeometry<\/span>:mainDisk];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>maindiskNode.<span style=\"color: #703daa\">name<\/span> = <span style=\"color: #d12f1b\">@&#8221;mainDisk&#8221;<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">scene<\/span>.<span style=\"color: #703daa\">rootNode<\/span> <span style=\"color: #3d1d81\">addChildNode<\/span>:maindiskNode];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)createItems {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #703daa\">SCNBox<\/span><span style=\"color: #000000\"> *box = [<\/span><span style=\"color: #703daa\">SCNBox<\/span><span style=\"color: #000000\"> <\/span>boxWithWidth<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">4<\/span><span style=\"color: #000000\"> <\/span>height<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">4<\/span><span style=\"color: #000000\"> <\/span>length<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">4<\/span><span style=\"color: #000000\"> <\/span>chamferRadius<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">0<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>box.<\/span>firstMaterial<span style=\"color: #000000\">.<\/span>diffuse<span style=\"color: #000000\">.<\/span>contents<span style=\"color: #000000\"> = [<\/span>UIColor<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">colorWithRed<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">201.0<\/span><span style=\"color: #000000\">\/<\/span><span style=\"color: #272ad8\">255.0<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">green<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">215.0<\/span><span style=\"color: #000000\">\/<\/span><span style=\"color: #272ad8\">255.0<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">blue<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">135.0<\/span><span style=\"color: #000000\">\/<\/span><span style=\"color: #272ad8\">255.0<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">alpha<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">1<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #703daa\">SCNTorus<\/span><span style=\"color: #000000\"> *ball = [<\/span><span style=\"color: #703daa\">SCNTorus<\/span><span style=\"color: #000000\"> <\/span>torusWithRingRadius<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">2<\/span><span style=\"color: #000000\"> <\/span>pipeRadius<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">1<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>ball.<\/span>firstMaterial<span style=\"color: #000000\">.<\/span>diffuse<span style=\"color: #000000\">.<\/span>contents<span style=\"color: #000000\"> = [<\/span>UIColor<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">colorWithRed<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">255.0<\/span><span style=\"color: #000000\">\/<\/span><span style=\"color: #272ad8\">255.0<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">green<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">192.0<\/span><span style=\"color: #000000\">\/<\/span><span style=\"color: #272ad8\">255.0<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">blue<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">169.0<\/span><span style=\"color: #000000\">\/<\/span><span style=\"color: #272ad8\">255.0<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">alpha<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">1<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #703daa\">SCNPyramid<\/span><span style=\"color: #000000\"> *pyramid = [<\/span><span style=\"color: #703daa\">SCNPyramid<\/span><span style=\"color: #000000\"> <\/span>pyramidWithWidth<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">4<\/span><span style=\"color: #000000\"> <\/span>height<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">4<\/span><span style=\"color: #000000\"> <\/span>length<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">4<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>pyramid.<\/span>firstMaterial<span style=\"color: #000000\">.<\/span>diffuse<span style=\"color: #000000\">.<\/span>contents<span style=\"color: #000000\"> = [<\/span>UIColor<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">colorWithRed<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">255.0<\/span><span style=\"color: #000000\">\/<\/span><span style=\"color: #272ad8\">255.0<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">green<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">133.0<\/span><span style=\"color: #000000\">\/<\/span><span style=\"color: #272ad8\">255.0<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">blue<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">152.0<\/span><span style=\"color: #000000\">\/<\/span><span style=\"color: #272ad8\">255.0<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">alpha<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">1<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">NSArray<\/span> *geometories = <span style=\"color: #272ad8\">@[<\/span>box, ball, pyramid<span style=\"color: #272ad8\">]<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">for<\/span> (<span style=\"color: #bb2ca2\">int<\/span> i=<span style=\"color: #272ad8\">0<\/span>; i&lt;<span style=\"color: #272ad8\">3<\/span>; i++) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><\/span><span style=\"color: #703daa\">SCNNode<\/span><span style=\"color: #000000\"> *disk = [<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span><span style=\"color: #4f8187\">scene<\/span><span style=\"color: #000000\">.<\/span><span style=\"color: #703daa\">rootNode<\/span><span style=\"color: #000000\"> <\/span>childNodeWithName<span style=\"color: #000000\">:[<\/span><span style=\"color: #703daa\">NSString<\/span><span style=\"color: #000000\"> <\/span>stringWithFormat<span style=\"color: #000000\">:<\/span><span style=\"color: #d12f1b\">@&#8221;disk%d&#8221;<\/span><span style=\"color: #000000\">, i] <\/span>recursively<span style=\"color: #000000\">:<\/span><span style=\"color: #bb2ca2\">false<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SCNNode<\/span> *item = [<span style=\"color: #703daa\">SCNNode<\/span> <span style=\"color: #3d1d81\">nodeWithGeometry<\/span>:geometories[i]];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>item.<span style=\"color: #703daa\">name<\/span> = <span style=\"color: #d12f1b\">@&#8221;item&#8221;<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>item.<span style=\"color: #703daa\">position<\/span> = <span style=\"color: #3d1d81\">SCNVector3Make<\/span>(disk.<span style=\"color: #703daa\">position<\/span>.<span style=\"color: #703daa\">x<\/span>, disk.<span style=\"color: #703daa\">position<\/span>.<span style=\"color: #703daa\">y<\/span> + <span style=\"color: #272ad8\">3<\/span>, disk.<span style=\"color: #703daa\">position<\/span>.<span style=\"color: #703daa\">z<\/span>);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">scene<\/span>.<span style=\"color: #703daa\">rootNode<\/span> <span style=\"color: #3d1d81\">addChildNode<\/span>:item];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)createCamera {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SCNNode<\/span> *camera = [<span style=\"color: #703daa\">SCNNode<\/span> <span style=\"color: #3d1d81\">node<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>camera.<span style=\"color: #703daa\">camera<\/span> = [<span style=\"color: #703daa\">SCNCamera<\/span> <span style=\"color: #3d1d81\">camera<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>camera.<span style=\"color: #703daa\">position<\/span> = <span style=\"color: #3d1d81\">SCNVector3Make<\/span>(<span style=\"color: #272ad8\">0<\/span>, <span style=\"color: #272ad8\">2<\/span>, <span style=\"color: #272ad8\">25<\/span>);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">scene<\/span>.<span style=\"color: #703daa\">rootNode<\/span> <span style=\"color: #3d1d81\">addChildNode<\/span>:camera];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)createLight {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SCNLight<\/span> *light = [<span style=\"color: #703daa\">SCNLight<\/span> <span style=\"color: #3d1d81\">light<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>light.<\/span>type<span style=\"color: #000000\"> = <\/span>SCNLightTypeOmni<span style=\"color: #000000\">;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SCNNode<\/span> *lightNode = [<span style=\"color: #703daa\">SCNNode<\/span> <span style=\"color: #3d1d81\">node<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>lightNode.<span style=\"color: #703daa\">light<\/span> = light;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>lightNode.<span style=\"color: #703daa\">position<\/span> = <span style=\"color: #3d1d81\">SCNVector3Make<\/span>(<span style=\"color: #272ad8\">0<\/span>, <span style=\"color: #272ad8\">20<\/span>, <span style=\"color: #272ad8\">60<\/span>);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">scene<\/span>.<span style=\"color: #703daa\">rootNode<\/span> <span style=\"color: #3d1d81\">addChildNode<\/span>:lightNode];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)touchesBegan:(<span style=\"color: #703daa\">NSSet<\/span> *)touches withEvent:(<span style=\"color: #703daa\">UIEvent<\/span> *)event<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">{<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">CGPoint<\/span> p = [[touches <span style=\"color: #3d1d81\">anyObject<\/span>] <span style=\"color: #3d1d81\">locationInView<\/span>:<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">sceneView<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">NSArray<\/span> *hits = [<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">sceneView<\/span> <span style=\"color: #3d1d81\">hitTest<\/span>:p <span style=\"color: #3d1d81\">options<\/span>:<span style=\"color: #bb2ca2\">nil<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">for<\/span> (<span style=\"color: #703daa\">SCNHitTestResult<\/span> *hit <span style=\"color: #bb2ca2\">in<\/span> hits) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">if<\/span> ([hit.<span style=\"color: #703daa\">node<\/span>.<span style=\"color: #703daa\">name<\/span> <span style=\"color: #3d1d81\">isEqual<\/span>:<span style=\"color: #d12f1b\">@&#8221;item&#8221;<\/span>]) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span>hit.<\/span>node<span style=\"color: #000000\">.<\/span>physicsBody<span style=\"color: #000000\"> = [<\/span>SCNPhysicsBody<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">dynamicBody<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span>[hit.<\/span><span style=\"color: #703daa\">node<\/span><span style=\"color: #000000\">.<\/span><span style=\"color: #703daa\">physicsBody<\/span><span style=\"color: #000000\"> <\/span>applyForce<span style=\"color: #000000\">:<\/span>SCNVector3Make<span style=\"color: #000000\">(<\/span><span style=\"color: #272ad8\">0<\/span><span style=\"color: #000000\">, <\/span><span style=\"color: #272ad8\">5<\/span><span style=\"color: #000000\">, <\/span><span style=\"color: #272ad8\">0<\/span><span style=\"color: #000000\">) <\/span>impulse<span style=\"color: #000000\">:<\/span><span style=\"color: #bb2ca2\">YES<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span>[hit.<span style=\"color: #703daa\">node<\/span>.<span style=\"color: #703daa\">physicsBody<\/span> <span style=\"color: #3d1d81\">applyTorque<\/span>:<span style=\"color: #3d1d81\">SCNVector4Make<\/span>(<span style=\"color: #272ad8\">0<\/span>, <span style=\"color: #272ad8\">1<\/span>, <span style=\"color: #272ad8\">0<\/span>, <span style=\"color: #272ad8\">2.0<\/span>) <span style=\"color: #3d1d81\">impulse<\/span>:<span style=\"color: #bb2ca2\">YES<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span> <span style=\"color: #31595d\">showMainDisk<\/span>:hit.<span style=\"color: #703daa\">node<\/span>.<span style=\"color: #703daa\">geometry<\/span>.<span style=\"color: #3d1d81\">copy<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)showMainDisk:(<span style=\"color: #703daa\">SCNGeometry<\/span>*)geometory {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #703daa\">SCNNode<\/span><span style=\"color: #000000\"> *old = [<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span><span style=\"color: #4f8187\">scene<\/span><span style=\"color: #000000\">.<\/span><span style=\"color: #703daa\">rootNode<\/span><span style=\"color: #000000\"> <\/span>childNodeWithName<span style=\"color: #000000\">:<\/span><span style=\"color: #d12f1b\">@&#8221;mainItem&#8221;<\/span><span style=\"color: #000000\"> <\/span>recursively<span style=\"color: #000000\">:<\/span><span style=\"color: #bb2ca2\">NO<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">if<\/span> (old) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>[old <\/span>removeFromParentNode<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SCNNode<\/span> *mainItem = [<span style=\"color: #703daa\">SCNNode<\/span> <span style=\"color: #3d1d81\">nodeWithGeometry<\/span>:geometory];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>mainItem.<span style=\"color: #703daa\">name<\/span> = <span style=\"color: #d12f1b\">@&#8221;mainItem&#8221;<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>mainItem.<span style=\"color: #703daa\">scale<\/span> = <span style=\"color: #3d1d81\">SCNVector3Make<\/span>(<span style=\"color: #272ad8\">2.2<\/span>, <span style=\"color: #272ad8\">2.2<\/span>, <span style=\"color: #272ad8\">2.2<\/span>);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>mainItem.<span style=\"color: #703daa\">position<\/span> = <span style=\"color: #3d1d81\">SCNVector3Make<\/span>(<span style=\"color: #272ad8\">0<\/span>, <span style=\"color: #272ad8\">8.0<\/span>, <span style=\"color: #272ad8\">0<\/span>);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[mainItem <\/span>runAction<span style=\"color: #000000\">:[<\/span><span style=\"color: #703daa\">SCNAction<\/span><span style=\"color: #000000\"> <\/span>repeatActionForever<span style=\"color: #000000\">:[<\/span><span style=\"color: #703daa\">SCNAction<\/span><span style=\"color: #000000\"> <\/span>sequence<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">@[<\/span><span style=\"color: #000000\">[<\/span><span style=\"color: #703daa\">SCNAction<\/span><span style=\"color: #000000\"> <\/span>rotateByX<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">0<\/span><span style=\"color: #000000\"> <\/span>y<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">1<\/span><span style=\"color: #000000\"> <\/span>z<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">0<\/span><span style=\"color: #000000\"> <\/span>duration<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">0.5<\/span><span style=\"color: #000000\">], [<\/span><span style=\"color: #703daa\">SCNAction<\/span><span style=\"color: #000000\"> <\/span>rotateByX<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">1<\/span><span style=\"color: #000000\"> <\/span>y<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">0<\/span><span style=\"color: #000000\"> <\/span>z<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">0<\/span><span style=\"color: #000000\"> <\/span>duration<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">0.5<\/span><span style=\"color: #000000\">]<\/span><span style=\"color: #272ad8\">]<\/span><span style=\"color: #000000\">]]];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">scene<\/span>.<span style=\"color: #703daa\">rootNode<\/span> <span style=\"color: #3d1d81\">addChildNode<\/span>:mainItem];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)renderer:(<span style=\"color: #bb2ca2\">id<\/span>&lt;<span style=\"color: #703daa\">SCNSceneRenderer<\/span>&gt;)aRenderer updateAtTime:(<span style=\"color: #703daa\">NSTimeInterval<\/span>)time<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">{<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">scene<\/span>.<span style=\"color: #703daa\">rootNode<\/span> <span style=\"color: #3d1d81\">enumerateChildNodesUsingBlock<\/span>:^(<span style=\"color: #703daa\">SCNNode<\/span> *child, <span style=\"color: #bb2ca2\">BOOL<\/span> *stop) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">if<\/span> ([child.<span style=\"color: #703daa\">name<\/span> <span style=\"color: #3d1d81\">isEqual<\/span>:<span style=\"color: #d12f1b\">@&#8221;item&#8221;<\/span>]) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">if<\/span> (child.<span style=\"color: #3d1d81\">presentationNode<\/span>.<span style=\"color: #703daa\">position<\/span>.<span style=\"color: #703daa\">y<\/span> &lt; &#8211;<span style=\"color: #272ad8\">10<\/span> &amp;&amp; child.<span style=\"color: #703daa\">physicsBody<\/span>) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span>child.<span style=\"color: #703daa\">physicsBody<\/span> = <span style=\"color: #bb2ca2\">nil<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span>[child <span style=\"color: #3d1d81\">runAction<\/span>:[<span style=\"color: #703daa\">SCNAction<\/span> <span style=\"color: #3d1d81\">moveTo<\/span>:<span style=\"color: #3d1d81\">SCNVector3Make<\/span>(child.<span style=\"color: #703daa\">position<\/span>.<span style=\"color: #703daa\">x<\/span>, &#8211;<span style=\"color: #272ad8\">7<\/span>, child.<span style=\"color: #703daa\">position<\/span>.<span style=\"color: #703daa\">z<\/span>) <span style=\"color: #3d1d81\">duration<\/span>:<span style=\"color: #272ad8\">0.5<\/span>]];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>}];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #bb2ca2\">@end<\/p>\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5546\u54c1\u3092\uff13D\u3067\u304f\u308b\u3063\u3068\u898b\u305b\u308b\u30b7\u30e7\u30fc\u30b1\u30fc\u30b9\u3063\u307d\u3044iPhone&#8230;<\/p>\n","protected":false},"author":2,"featured_media":3247,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[4],"tags":[125,24,119,126],"class_list":["post-3245","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ios","tag-ios8","tag-iphone","tag-objective-c","tag-scenekit"],"aioseo_notices":[],"jetpack_featured_media_url":"https:\/\/lepetit-prince.net\/ios\/wp-content\/uploads\/2187eeb5662937fa8ba72eddf293a0fc.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/posts\/3245","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3245"}],"version-history":[{"count":1,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/posts\/3245\/revisions"}],"predecessor-version":[{"id":3246,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/posts\/3245\/revisions\/3246"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/media\/3247"}],"wp:attachment":[{"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3245"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3245"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3245"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}