相关疑难解决方法(0)

在SceneKit中使用MPMoviePlayerController作为纹理

我在scenekit中创建了一个多维数据集,并尝试使用MPMoviePlayerController的实例作为其材质.它很有用,但效果不是很好:视频看起来很跳跃,就好像它会在视频帧之间跳跃(基本上是从开始到最后一点播放的帧重放).声音还可以.

我对正在发生的事情做了一个简短的屏幕截图,我想这很明显来自视频:Youtube视频

这是处理映射到多维数据集和创建播放器的代码:

var moviePlayer: MPMoviePlayerController?

func startPlayingVideo(){
    let mainBundle = NSBundle.mainBundle()
    let url = mainBundle.URLForResource("Sample", withExtension: "m4v")
    moviePlayer = MPMoviePlayerController(contentURL: url)

    if let player = moviePlayer{
        /* Listen for the notification that the movie player sends us whenever it finishes playing */
        NSNotificationCenter.defaultCenter().addObserver(self, selector: "videoHasFinishedPlaying:", name: MPMoviePlayerPlaybackDidFinishNotification, object: nil)
        println("Successfully instantiated the movie player")
        player.scalingMode = .AspectFit

        var materials = [SCNMaterial]()
        for i in 1...6 {
            let material = SCNMaterial()
            material.diffuse.contents = player.view.layer
            player.view.frame = CGRectMake(0, 0, 200, …
Run Code Online (Sandbox Code Playgroud)

video textures ios scenekit swift

2
推荐指数
1
解决办法
864
查看次数

标签 统计

ios ×1

scenekit ×1

swift ×1

textures ×1

video ×1