0

私はシーンキットで180本の魚眼のビデオを再生しようとしていますが、私が見つけた例の1つは360度のビデオを再生するAVPlayersジオメトリとして球を使用しています。180°ビデオを再生する球の代わりに半球上のAVPlayer

私が使用しているビデオは180°魚眼カメラでキャプチャされているため、半球で表示する必要があります。

私は2日間コードを操作していましたが運がありませんでした。

私はこのテーマに慣れていないので、AVPlayerを部分的にフルスフィアに置くか、SCNSphereを半分にカットしてみました。

以下のコードは、360ビデオを再生し、simple360player_iOS GitHubのレポから、

var screenScale : CGFloat          = 1.0 
     if PROCESSOR_64BITS { 
      screenScale             = CGFloat(3.0) 
     } 

     player               = AVPlayer(URL: fileURL!) 
     let videoSpriteKitNodeLeft          = SKVideoNode(AVPlayer: player) 
     let videoNodeLeft            = SCNNode() 
     let spriteKitScene1            = SKScene(size: CGSize(width: 1280 * screenScale, height: 1280 * screenScale)) 
     spriteKitScene1.shouldRasterize         = true 
     var spriteKitScenes            = [spriteKitScene1] 

     videoNodeLeft.geometry           = SCNSphere(radius: 30) 
     spriteKitScene1.scaleMode          = .AspectFit 
     videoSpriteKitNodeLeft.position         = CGPoint(x: spriteKitScene1.size.width/2.0, y: spriteKitScene1.size.height/2.0) 
     videoSpriteKitNodeLeft.size          = spriteKitScene1.size 

答えて

0

は部分球面、部分的マッピング、またはそうでなければ、その目標は、おそらく最も高貴なパスで実現し、他のオブジェクトを設定するためのものです。しかし、プロジェクトのコンテキストによっては、180度のビデオを持っている場合は、ビデオの幅を倍にして、黒または選択したスペースで余分なスペースを埋める方が速いことがよくあります。これは、今後360本のビデオを視聴する可能性がある場合に特に便利です。

関連する問題