Я пытаюсь использовать Skvideonode в качестве источника текстуры видео для Scnsphere в моем scnview < /p>
Я следую над этим ответом: < /p>
skvideonode (вступил в Skscene) в качестве текстуры для моего кода. Вопрос) Я получаю видео и воспроизведение звука. < /p>
Я применяю шкалу к узлу сферы, просто чтобы отменить узлы текстуры: < /p>
sphereNode.scale = SCNVector3Make(-1, 1, 1)
< /code>
Но комментировать, что это не имеет эффекта. < /p>
Все это тестируется на устройстве (iPhone 6+, используя iOS 9.1): < /p>
let sphere = SCNSphere(radius: 1)
.
.
.
func setupView() {
// setup the sphere
sphere.segmentCount = 55
// sphere material
sceneMaterial = SCNMaterial()
// setup the sphereNode
sphereNode = SCNNode(geometry: sphere)
sphereNode.position = SCNVector3Make(0, 0, 0)
sphereNode.scale = SCNVector3Make(-1, 1, 1)
let apperture = 75.0
// setup the camera
camera = SCNCamera()
camera.xFov = apperture
camera.zFar = 10000
camera.yFov = apperture
camera.zNear = 0.5
camera.aperture = 1/10
cameraNode.position = SCNVector3Make(0, 0, 0)
cameraNode.camera = camera
// light node
let lightNode = SCNNode()
lightNode.position = SCNVector3Make(0, 0, 0)
// light
let ambientLight = SCNLight()
ambientLight.type = SCNLightTypeAmbient
ambientLight.color = UIColor(white: 0.7, alpha: 1)
lightNode.light = ambientLight
// add top sceneView
topScene.scene = scene
bottomScene.scene = scene
// setup the sceneView
scene.rootNode.addChildNode(sphereNode)
scene.rootNode.addChildNode(cameraNode)
// video reader
let path = NSBundle.mainBundle().pathForResource("tb", ofType: "mp4")
let url = NSURL(fileURLWithPath: path!)
let asset = AVURLAsset(URL: url,options: nil)
let playerItem = AVPlayerItem(asset: asset)
let player = AVPlayer(playerItem: playerItem)
let videoNode = SKVideoNode(AVPlayer: player)
// check the sizes
let size = CGFloat(1000.0)
let spriteScene = SKScene(size: CGSizeMake(size,size))
videoNode.size.width = size
videoNode.size.height = size
spriteScene.addChild(videoNode)
// the image
sceneMaterial.specular.contents = UIColor.whiteColor()
sceneMaterial.doubleSided = true
sceneMaterial.shininess = 1
sceneMaterial.diffuse.contents = spriteScene
sphere.materials = [sceneMaterial]
videoNode.play()
}
Подробнее здесь: https://stackoverflow.com/questions/333 ... -scnsphere
Skvideonode как текстура для Scnsphere ⇐ IOS
Программируем под IOS
1758474203
Anonymous
Я пытаюсь использовать Skvideonode в качестве источника текстуры видео для Scnsphere в моем scnview < /p>
Я следую над этим ответом: < /p>
skvideonode (вступил в Skscene) в качестве текстуры для моего кода. Вопрос) Я получаю видео и воспроизведение звука. < /p>
Я применяю шкалу к узлу сферы, просто чтобы отменить узлы текстуры: < /p>
sphereNode.scale = SCNVector3Make(-1, 1, 1)
< /code>
Но комментировать, что это не имеет эффекта. < /p>
Все это тестируется на устройстве (iPhone 6+, используя iOS 9.1): < /p>
let sphere = SCNSphere(radius: 1)
.
.
.
func setupView() {
// setup the sphere
sphere.segmentCount = 55
// sphere material
sceneMaterial = SCNMaterial()
// setup the sphereNode
sphereNode = SCNNode(geometry: sphere)
sphereNode.position = SCNVector3Make(0, 0, 0)
sphereNode.scale = SCNVector3Make(-1, 1, 1)
let apperture = 75.0
// setup the camera
camera = SCNCamera()
camera.xFov = apperture
camera.zFar = 10000
camera.yFov = apperture
camera.zNear = 0.5
camera.aperture = 1/10
cameraNode.position = SCNVector3Make(0, 0, 0)
cameraNode.camera = camera
// light node
let lightNode = SCNNode()
lightNode.position = SCNVector3Make(0, 0, 0)
// light
let ambientLight = SCNLight()
ambientLight.type = SCNLightTypeAmbient
ambientLight.color = UIColor(white: 0.7, alpha: 1)
lightNode.light = ambientLight
// add top sceneView
topScene.scene = scene
bottomScene.scene = scene
// setup the sceneView
scene.rootNode.addChildNode(sphereNode)
scene.rootNode.addChildNode(cameraNode)
// video reader
let path = NSBundle.mainBundle().pathForResource("tb", ofType: "mp4")
let url = NSURL(fileURLWithPath: path!)
let asset = AVURLAsset(URL: url,options: nil)
let playerItem = AVPlayerItem(asset: asset)
let player = AVPlayer(playerItem: playerItem)
let videoNode = SKVideoNode(AVPlayer: player)
// check the sizes
let size = CGFloat(1000.0)
let spriteScene = SKScene(size: CGSizeMake(size,size))
videoNode.size.width = size
videoNode.size.height = size
spriteScene.addChild(videoNode)
// the image
sceneMaterial.specular.contents = UIColor.whiteColor()
sceneMaterial.doubleSided = true
sceneMaterial.shininess = 1
sceneMaterial.diffuse.contents = spriteScene
sphere.materials = [sceneMaterial]
videoNode.play()
}
Подробнее здесь: [url]https://stackoverflow.com/questions/33381234/skvideonode-as-texture-for-scnsphere[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия