SceneKit Ruang nama
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi.
Kelas
_SCNShaderModifiers |
Kamus cuplikan shader. |
SCNAccelerationConstraint |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNAction |
Melakukan tindakan pada SCNNode, termasuk perubahan pada tampilan, geometri, animasi, atau fungsi arbitrer. |
SCNActionable |
Memungkinkan tindakan diterapkan. |
SCNActionable_Extensions |
Metode ekstensi ke ISCNActionable antarmuka untuk mendukung semua metode dari SCNActionable protokol. |
SCNAnimatable |
Memungkinkan animasi diterapkan. |
SCNAnimatable_Extensions |
Metode ekstensi ke ISCNAnimatable antarmuka untuk mendukung semua metode dari SCNAnimatable protokol. |
SCNAnimatableExtensions |
Metode ekstensi untuk ISCNAnimatable. |
SCNAnimation |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNAnimationEvent |
Melakukan fungsi pada waktu tertentu selama animasi. |
SCNAnimationPlayer |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNAudioPlayer |
SCNAudioSource Menahan atau AVAudioNode untuk digunakan dengan audio posisi. |
SCNAudioSource |
Sumber audio yang dapat digunakan kembali untuk audio posisi di adegan SceneKit. |
SCNAvoidOccluderConstraint |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNAvoidOccluderConstraintDelegate |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNAvoidOccluderConstraintDelegate_Extensions |
Metode ekstensi ke ISCNAvoidOccluderConstraintDelegate antarmuka untuk mendukung semua metode dari SCNAvoidOccluderConstraintDelegate protokol. |
SCNBillboardConstraint |
Secara otomatis membatasi SCNNode sehingga selalu menunjuk ke simpul penyajian saat ini. |
SCNBoundingVolume |
Fungsi yang menentukan volume dalam ruang 3D. |
SCNBox |
Yang SCNGeometry wajahnya semua persegi panjang. |
SCNCamera |
Menentukan kamera, dengan atribut seperti bidang pandang dan kedalaman tampilan. |
SCNCameraController |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNCameraControllerDelegate |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNCameraControllerDelegate_Extensions |
Metode ekstensi ke ISCNCameraControllerDelegate antarmuka untuk mendukung semua metode dari SCNCameraControllerDelegate protokol. |
SCNCapsule |
Yang SCNGeometry merupakan silinder dengan ujung tertutup. |
SCNCone |
Itu SCNGeometry adalah frustum melingkar. Atau, topi pesta. |
SCNConstraint |
Secara otomatis menyesuaikan transformasi simpul. |
SCNCylinder |
Itu SCNGeometry adalah silinder melingkar yang tepat. |
SCNDistanceConstraint |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNErrorCodeExtensions |
Metode ekstensi untuk enumerasi SceneKit.SCNErrorCode. |
SCNFloor |
Itu SCNGeometry adalah pesawat tak terbatas. |
SCNGeometry |
Kelas dasar untuk objek geometri SceneKit |
SCNGeometryElement |
Menggabungkan informasi tentang simpul dan primitif gambar. Memetakan ke satu perintah gambar yang dikirim ke GPU. |
SCNGeometrySource |
Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D. |
SCNGeometrySourceSemantic |
Menghitung atribut mode vertex. |
SCNGeometryTessellator |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNHitTest |
Konstanta untuk digunakan dengan |
SCNHitTestOptions |
Opsi konfigurasi untuk pengujian hit di SCNNode dan SCNSceneRenderer |
SCNHitTestResult |
Informasi tentang SCNNode (jika ada) yang terletak di titik tertentu atau di sepanjang sinar. |
SCNIKConstraint |
Yang SCNConstraint menerapkan kinematik terbalik. |
SCNJavaScript |
Kelas statis yang berisi metode untuk mengekspor modul JavaScript. |
SCNLayer |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNLevelOfDetail |
Mengontrol geometri alternatif yang dirender pada ambang di ruang dunia atau ruang layar. |
SCNLight |
Sumber cahaya, digunakan untuk semua SCNLightTypes. |
SCNLightAttribute |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNLightingModel |
Konstanta untuk digunakan dengan properti P:SceneKit.SCNMaterial.LightingModel , yang mendefinisikan cara lampu dan bahan digabungkan untuk menghasilkan warna yang dirender tertentu. |
SCNLightType |
Menghitung jenis SCNLight. |
SCNLookAtConstraint |
Yang SCNConstraint mengarahkan simpul untuk menunjuk ke node lain. |
SCNMaterial |
Menentukan karakteristik pencahayaan dan bayangan permukaan SCNGeometry. |
SCNMaterialProperty |
Mengonfigurasi berbagai properti (seperti warna dan tekstur) dari SCNMaterial. |
SCNMorpher |
Transformasi animasi SCNGeometry menjadi satu atau beberapa objek SCNGeometry target. |
SCNNode |
Simpul dalam grafik adegan. |
SCNNodeRendererDelegate |
Antarmuka yang mendefinisikan fungsi objek delegasi untuk menambahkan kode gambar OpenGL kustom. |
SCNNodeRendererDelegate_Extensions |
Metode ekstensi ke ISCNNodeRendererDelegate antarmuka untuk mendukung semua metode dari SCNNodeRendererDelegate protokol. |
SCNParticleProperty |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNParticlePropertyController |
Menganimasikan properti partikel yang dipancarkan oleh SCNParticleSystem. |
SCNParticleSystem |
Memancarkan sprite kecil yang perilakunya ditentukan pengembang. |
SCNPhysicsBallSocketJoint |
SCNPhysicsBehavior yang memungkinkan dua objek SCNPhysicsBody untuk saling berpivot. |
SCNPhysicsBehavior |
Mengontrol perilaku satu atau beberapa objek SCNPhysicsBody. |
SCNPhysicsBody |
Menambahkan simulasi fisika ke SCNNode. |
SCNPhysicsConeTwistJoint |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNPhysicsContact |
Bagaimana dua objek SCNPhysicsBody berhubungan satu sama lain. |
SCNPhysicsContactDelegate |
Mendelegasikan fungsi objek yang merespons sentuhan antar SCNPhysicsBody objek.. |
SCNPhysicsContactDelegate_Extensions |
Metode ekstensi ke ISCNPhysicsContactDelegate antarmuka untuk mendukung semua metode dari SCNPhysicsContactDelegate protokol. |
SCNPhysicsContactEventArgs |
Menyediakan data untuk DidUpdateContact, E:SceneKit.SCNPhysicsContactEventArgs.DidEndContact dan E:SceneKit.SCNPhysicsContactEventArgs.DidUpdateContact events. |
SCNPhysicsField |
Menerapkan gaya ke semua objek SCNPhysicsBody dalam volume tertentu. |
SCNPhysicsHingeJoint |
SCNPhysicsBehavior yang melampirkan dua objek SCNPhysicsBody di sepanjang sumbu tunggal. |
SCNPhysicsShape |
Volume solid untuk SCNPhysicsBody. Digunakan dalam deteksi tabrakan. |
SCNPhysicsShapeOptions |
Kunci yang valid untuk kamus yang |
SCNPhysicsShapeOptionsKeys |
Menentukan kunci yang valid untuk digunakan dengan |
SCNPhysicsShapeOptionsTypes |
Jenis geometris yang terkait dengan SCNPhysicsShapes. |
SCNPhysicsSliderJoint |
SCNPhysicsBehavior yang menghubungkan dua objek SCNPhysicsBody, memungkinkan mereka untuk menggeser dan memutar di sekitar titik penghubung mereka. |
SCNPhysicsTest |
Opsi yang valid untuk digunakan dengan M:SceneKit.SCNPhysicsWorld.ContactTest*. |
SCNPhysicsTestKeys |
Berisi nilai yang mengontrol pencarian, pemusnahan backface, dan pengujian tabrakan. |
SCNPhysicsTestSearchModeKeys |
Menghitung nilai yang mengontrol hasil pencarian tabrakan mana yang dikembalikan. |
SCNPhysicsVehicle |
SCNPhysicsBehavior yang mensimulasikan fisika kendaraan beroda. |
SCNPhysicsVehicleWheel |
Penampilan dan karakteristik fisik roda pada SCNPhysicsVehicle. |
SCNPhysicsWorld |
Simulasi fisika yang memodelkan tabrakan dan properti terkait fisika lainnya dalam SCNScene. |
SCNPlane |
Yang SCNGeometry merupakan bidang terbatas satu sisi persegi panjang. |
SCNProgram |
Melakukan penyajian kustom menggunakan shader yang ditulis dalam OpenGL Shading Language. |
SCNProgramDelegate |
Delegasikan objek untuk objek SCNProgram. |
SCNProgramDelegate_Extensions |
Metode ekstensi ke ISCNProgramDelegate antarmuka untuk mendukung semua metode dari SCNProgramDelegate protokol. |
SCNProgramSemanticOptions |
MappingChannel Menentukan untuk digunakan dengan SetSemantic(NSString, String, SCNProgramSemanticOptions). |
SCNPropertyControllers |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNPyramid |
Piramida SCNGeometry persegi panjang yang tepat. |
SCNReferenceNode |
SCNNode yang memuat kontennya dari file adegan. |
SCNRenderer |
Merender SCNScene ke dalam konteks OpenGL. |
SCNRenderingArguments |
Mendefinisikan kunci untuk digunakan dengan Render(SCNNode, SCNRenderer, NSDictionary) dan SetSemantic(NSString, String, SCNProgramSemanticOptions). |
SCNRenderingOptions |
DictionaryContainer yang mendefinisikan |
SCNReplicatorConstraint |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNScene |
Deskripsi tingkat tertinggi dari adegan 3D. |
SCNSceneExportDelegate |
Protokol yang menentukan metode untuk menangani ekspor adegan ke file. |
SCNSceneExportDelegate_Extensions |
Metode ekstensi ke ISCNSceneExportDelegate antarmuka untuk mendukung semua metode dari SCNSceneExportDelegate protokol. |
SCNSceneLoadingOptions |
Opsi untuk pemuatan adegan. |
SCNSceneRenderer |
Kelas implementasi ISCNSceneRenderer antarmuka. |
SCNSceneRenderer_Extensions |
Metode ekstensi ke ISCNSceneRenderer antarmuka untuk mendukung semua metode dari SCNSceneRenderer protokol. |
SCNSceneRendererDelegate |
Delegasikan objek untuk kelas SCNRenderer, menentukan metode yang mencerminkan peristiwa penyajian. |
SCNSceneRendererDelegate_Extensions |
Metode ekstensi ke ISCNSceneRendererDelegate antarmuka untuk mendukung semua metode dari SCNSceneRendererDelegate protokol. |
SCNSceneSource |
Membaca data yang menentukan adegan dari file atau objek NSData. |
SCNSceneSourceLoadErrors |
Menghitung jenis kesalahan yang dapat terjadi saat memuat SCNSceneSources. |
SCNSceneSourceLoading |
Opsi untuk membuat dan memuat objek SCNScene. |
SCNSceneSourceProperties |
Kunci metadata yang terkait dengan file adegan. Digunakan dengan GetProperty(NSString). |
SCNShadable |
ISCNShadableImplementasi . |
SCNShadable_Extensions |
Metode ekstensi ke ISCNShadable antarmuka untuk mendukung semua metode dari SCNShadable protokol. |
SCNShaderModifiers |
Berisi DictionaryContainer opsi untuk shader. |
SCNShape |
Dibuat SCNGeometry dari jalur 2D, secara opsional dikecualikan menjadi tiga dimensi. |
SCNSkinner |
Mengakses grafik adegan untuk mendukung animasi kerangka. |
SCNSliderConstraint |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNSphere |
Itu SCNGeometry bola. |
SCNTechnique |
Menyediakan pass gambar tambahan, yang masing-masing menerapkan shader. |
SCNTechniqueSupport |
ISCNTechniqueSupport Implementasi itu hanya memegang referensi ke SCNTechnique. |
SCNText |
SCNGeometry Berdasarkan string, secara opsional dikecualikan menjadi tiga dimensi. |
SCNTimingFunction |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNTorus |
Sebuah SCNGeometry yang berbentuk cincin padat. |
SCNTransaction |
Memungkinkan serangkaian modifikasi diterapkan secara atomik. |
SCNTransformConstraint |
SCNConstraint Yang menjalankan fungsi yang menentukan perubahan transformasi (posisi, rotasi, dan skala) ke simpul atau simpul. |
SCNTube |
SCNGeometry Yang merupakan silinder dengan lubang di sepanjang sumbu pusatnya. |
SCNView | |
SCNView.SCNViewAppearance |
Kelas penampilan untuk objek jenis SCNView. |
Struct
SCNMatrix4 |
Matriks 4x4. |
SCNQuaternion |
Mewakili kuaternion dan berisi metode yang beroperasi padanya. |
SCNVector3 |
Vektor 3 komponen. |
SCNVector4 |
Vektor 4 komponen. |
Antarmuka
ISCNActionable |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNActionable. |
ISCNAnimatable |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNAnimatable. |
ISCNAnimationProtocol |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
ISCNAvoidOccluderConstraintDelegate |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNAvoidOccluderConstraintDelegate. |
ISCNBoundingVolume |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNBoundingVolume. |
ISCNBufferStream |
Antarmuka untuk mengelola buffer Logam shader kustom. |
ISCNCameraControlConfiguration |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
ISCNCameraControllerDelegate |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNCameraControllerDelegate. |
ISCNNodeRendererDelegate |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNNodeRendererDelegate. |
ISCNPhysicsContactDelegate |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNPhysicsContactDelegate. |
ISCNProgramDelegate |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNProgramDelegate. |
ISCNSceneExportDelegate |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNSceneExportDelegate. |
ISCNSceneRenderer |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNSceneRenderer. |
ISCNSceneRendererDelegate |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNSceneRendererDelegate. |
ISCNShadable |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNShadable. |
ISCNTechniqueSupport |
Antarmuka yang mewakili metode yang diperlukan (jika ada) dari protokol SCNTechniqueSupport. |
Enum
SCNActionTimingMode |
Menghitung kurva laju untuk digunakan dengan SCNAction objek. |
SCNAnimationImportPolicy |
Menghitung kebijakan impor animasi. |
SCNAntialiasingMode |
Menghitung nilai yang mengontrol perilaku antialisis. |
SCNBillboardAxis |
Enumerasi kunci sumbu yang tersedia untuk simpul yang dibatasi oleh SCNBillboardConstraint. |
SCNBlendMode |
Enumerasi cara SceneKit dapat memadukan warna dari bahan dengan warna yang sudah ada di target render. |
SCNBufferFrequency |
Menghitung nilai yang mengontrol apakah handler dipanggil per bingkai, per simpul per bingkai, atau per simpul per bingkai per bayangan yang dapat dirender. |
SCNCameraProjectionDirection |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNChamferMode |
Menghitung cara-cara dapat SCNShape di-chamfer; di depan, belakang, atau kedua sisinya. |
SCNColorMask |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNCullMode |
Enumerasi yang menentukan wajah permukaan SCNMaterial mana yang dirender. |
SCNDebugOptions |
Menghitung opsi overlay debug. |
SCNErrorCode |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNFillMode |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNFilterMode |
Enumerasi mode pemfilteran tekstur. |
SCNGeometryPrimitiveType |
Enumerasi primitif geometri 2D. |
SCNGeometrySourceSemantics |
Menghitung semantik untuk data geometri. |
SCNHitTestSearchMode |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNInteractionMode |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNMorpherCalculationMode |
Enumerasi rumus interpolasi yang valid untuk CalculationMode. |
SCNMovabilityHint |
Menghitung nilai yang memberi tahu SceneKit apakah simpul diharapkan bergerak dari waktu ke waktu. |
SCNNodeFocusBehavior |
Menghitung status yang dapat difokuskan dari .SCNNode |
SCNParticleBirthDirection |
Menghitung arah awal partikel yang dipancarkan oleh SCNParticleSystem. |
SCNParticleBirthLocation |
Enumerasi lokasi awal partikel yang dipancarkan oleh SCNParticleSystem. |
SCNParticleBlendMode |
Enumerasi cara-cara di mana partikel tumpang tindih yang SCNParticleSystem dipancarkan oleh akan dirender. |
SCNParticleEvent |
Enumerasi peristiwa siklus hidup untuk partikel yang SCNParticleSystemdipancarkan oleh . Digunakan dengan HandleEvent(SCNParticleEvent, NSString[], SCNParticleEventHandler). |
SCNParticleImageSequenceAnimationMode |
Enumerasi mode bermain untuk SCNParticleSystem's yang partikelnya dirender sebagai urutan gambar. |
SCNParticleInputMode |
Menghitung bagaimana properti partikel dianimasikan (selama masa pakai partikel, saat partikel berjalan dari jarak jauh, atau berdasarkan properti lain). Digunakan dengan InputMode. |
SCNParticleModifierStage |
Menghitung momen ketika pengubah yang ditentukan di AddModifier(NSString[], SCNParticleModifierStage, SCNParticleModifierHandler) harus diterapkan. |
SCNParticleOrientationMode |
Menghitung perataan partikel yang dipancarkan oleh SCNParticleSystem. Digunakan dengan OrientationMode. |
SCNParticleSortingMode |
Enumerasi yang menentukan urutan di mana partikel yang dipancarkan oleh T:SceneKit.SCNParticleScene dirender. |
SCNPhysicsBodyType |
Enumerasi yang menentukan apakah SCNPhysicsBody dinamis, kinematik, atau statis. Digunakan dengan CreateBody(SCNPhysicsBodyType, SCNPhysicsShape). |
SCNPhysicsCollisionCategory |
Default untuk properti tabrakan dari SCNPhysicsBody. |
SCNPhysicsFieldScope |
Menghitung nilai yang menentukan apakah mempengaruhi SCNPhysicsField objek di dalam atau di luar batasnya. |
SCNPhysicsSearchMode |
Menghitung nilai yang mengontrol hasil pencarian fisika mana yang dikembalikan. |
SCNPhysicsShapeType |
Enumerasi kategori untuk SCNPhysicsShapes. |
SCNReferenceLoadingPolicy |
Menghitung kemungkinan kebijakan pemuatan untuk SCNReferenceNode objek. |
SCNRenderingApi |
Menghitung nilai yang menandakan API Metal atau OpenGLES2. |
SCNSceneSourceStatus |
Menghitung status SCNSceneSource. |
SCNShadowMode |
Pengontrol enumerasi saat bayangan dihitung. |
SCNTessellationSmoothingMode |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNTransparencyMode |
Menghitung teknik untuk menghitung transparansi. |
SCNWrapMode |
Menghitung teknik pembungkusan tekstur. |
Delegasikan
SCNActionNodeWithElapsedTimeHandler |
Handler penyelesaian yang digunakan dengan CustomAction(Double, SCNActionNodeWithElapsedTimeHandler). |
SCNAnimationDidStartHandler |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNAnimationDidStopHandler |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNAnimationEventHandler |
Handler penyelesaian untuk digunakan dengan Create(nfloat, SCNAnimationEventHandler). |
SCNBindingHandler |
Handler penyelesaian yang digunakan dengan HandleBinding(String, SCNBindingHandler). |
SCNBufferBindingHandler |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNFieldForceEvaluator |
Delegasikan untuk metode .CustomField(SCNFieldForceEvaluator) |
SCNNodeHandler |
Namespace sceneKit menyediakan grafik 3D berbasis grafik adegan tingkat tinggi. |
SCNNodePredicate |
Delegasikan untuk digunakan dengan EnumerateChildNodes(SCNNodePredicate). |
SCNParticleEventHandler |
Handler penyelesaian untuk digunakan dengan HandleEvent(SCNParticleEvent, NSString[], SCNParticleEventHandler). |
SCNParticleModifierHandler |
Delegasi digunakan sebagai dalam |
SCNSceneExportProgressHandler |
Handler kelanjutan yang berulang kali dipanggil SceneKit saat mengekspor adegan. |
SCNSceneSourceFilter |
Delegasikan yang menguji objek di adegan untuk dimasukkan. |
SCNSceneSourceStatusHandler |
Panggilan balik yang digunakan untuk mencerminkan kemajuan selama eksekusi SceneFromOptions(SCNSceneLoadingOptions, SCNSceneSourceStatusHandler). |
SCNTransformConstraintHandler |
Delegasikan yang digunakan dalam panggilan ke Create(Boolean, SCNTransformConstraintHandler). |
Keterangan
Scene Kit adalah kerangka kerja untuk grafik 3D, berdasarkan grafik adegan hierarkis.
Kelas dasar dalam Scene Kit adalah SCNScene, yang menyimpan semua konten, dan T:CoreGraphics.SceneKit.SCNView, UIView yang merender SCNScene.
SCNScene memiliki RootNode properti jenis SCNNode. SCNNode's memiliki P:SceneKit.SCNNode.ChildNodes dan terapkan System.Collections.Generic.IEnumerable`1<class MonoTouch.SceneKit.SCNNode>
. Properti termasuk SCNNodeCamera, dari jenis SCNCamera, Geometry, dari jenis SCNGeometry, dan Light, dari jenis SCNLight.
Selain itu, setiap SCNNode memiliki Position properti yang mendefinisikan lokasi di ruang relatif terhadap SCNNode's ParentNode dan P:SceneKit.SCNNode.FirstMaterial dan P:SceneKit.SCNNode.Materials yang membuat SCNNodetampilan.
Contoh berikut menunjukkan tampilan Scene Kit minimal:
public MySceneView (RectangleF frame) : base(frame)
{
BackgroundColor = UIColor.Blue;
this.Scene = new SCNScene ();
var material = new SCNMaterial ();
material.Diffuse.Contents = UIImage.FromFile("textureX.png");
material.Specular.Contents = UIColor.Gray;
material.LocksAmbientWithDiffuse = true;
Scene.RootNode.Geometry = new SCNBox {
Width = 1,
Height = 1,
Length = 1,
ChamferRadius = 0.2f,
FirstMaterial = material
};
Scene.RootNode.Light = new SCNLight {
LightType = SCNLightType.Ambient,
Color = UIColor.Gray,
};
var camera = new SCNCamera ();
var cameraNode = new SCNNode () {
Camera = camera,
Position = new SCNVector3 (3, 3, 3),
Constraints = new SCNConstraint[] { SCNLookAtConstraint.Create(Scene.RootNode) }
};
Scene.RootNode.AddChildNode (cameraNode);
}
Geometri
Semua geometri di SceneKit dijelaskan oleh subkelas dari SCNGeometry:
SCNCapsule | Kapsul berbentuk pil dengan tutup ujung yang dapat disesuaikan | |
SCNCone | Kerujut yang bagian atasnya dapat dipotong | |
SCNBox | Kotak persegi panjang. | |
SCNCylinder | Sebuah silinder. | |
SCNFloor | Bidang tak terbatas dengan kemampuan untuk mencerminkan geometri di atasnya. | |
SCNPlane | Persegi panjang satu sisi. | |
SCNPyramid | Sebuah tetrahedron. | |
SCNShape | Bentuk 2D yang telah dikecualikan ke dalam dimensi ke-3. | |
SCNSphere | Sebuah bola. | |
SCNText | Teks yang dilewati. | |
SCNTorus | Bentuk donat. | |
SCNTube | Silinder yang tidak disapu. |
Selain itu, SceneKit dapat memuat seluruh adegan dari . File DAE dengan FromFile metode .
Terakhir, pengembang dapat membuat geometri kustom menggunakan M:SceneKit.SCNGeometry.Create(SceneKit.SCNGeometrySource[], metode SceneKit.SCNGeometryElement[]* dengan array yang sesuai SCNGeometrySource dan SCNGeometryElement objek. Berikut ini menunjukkan pembuatan piramida kustom:
//Lower-left
var a = new SCNVector3(-1, -1, 0);
//Upper-right
var b = new SCNVector3(1, 1, 0);
var halfX = (c.X + a.X) / 2;
var halfY = (c.Y + a.Y) / 2;
var halfZ = (c.Z + a.Z) / 2;
var b = new SCNVector3(a.X, c.Y, halfZ);
var d = new SCNVector3(c.X, a.Y, halfZ);
//Elevate the midpoint so that it's clearly a pyramid
var midPoint = new SCNVector3(halfX, halfY, halfZ + 1.0);
//The vertices of the geometry
var locs = new [] {
a, b, c, d, midPoint
};
var locSource = SCNGeometrySource.FromVertices(locs);
//Note that this relies on the ordering of locs above
//and it defines triangles (could be triangle strips, etc.)
var indices = new [] {
//Triangles are defined counter-clockwise!
4, 1, 0,
1, 4, 2,
2, 4, 3,
3, 4, 0
};
var idxArray = new byte[indices.Length][];
for(int i = 0; i < idxArray.Length; i++)
{
idxArray[i] = BitConverter.GetBytes(indices[i]);
}
var idxData = NSData.FromArray(idxArray.SelectMany(id => id).ToArray());
//Note that this relies on indices defining triangles
var element = SCNGeometryElement.FromData(idxData, SCNGeometryPrimitiveType.Triangles, indices.Length / 3, sizeof(int));
//Normals are relative to geometry
var normals = new [] {
new SCNVector3(0, 0, 1),
new SCNVector3(0, 0, 1),
new SCNVector3(0, 0, 1),
new SCNVector3(0, 0, 1),
new SCNVector3(0, 0, 1),
};;
var normSource = SCNGeometrySource.FromNormals(normals);
//These texture coords will cause the texture to wrap
var txCoords = new [] {
new CGPoint(-1, -1),
new CGPoint(-1, 1),
new CGPoint(1, 1),
new CGPoint(1, -1)
};
var txCoordsSource = SCNGeometrySource.FromTextureCoordinates(txCoords);
var geometry = SCNGeometry.Create(new [] { locSource, normSource, txCoordsSource }, new [] { element });