Jika adegan tidak sepenuhnya sesuai dengan memori, Anda memasuki bidang rendering out-of-core. Pada dasarnya ada dua pendekatan di sini: a) Hasilkan adegan Anda sesuai permintaan b) Muat adegan Anda sesuai permintaan
Pendekatan sebelumnya selaras dengan sebagian besar alur kerja animasi, di mana model sangat terbagi menggunakan misalnya Catmull-Clark dan dapat menjadi sangat intensif memori, tetapi basis meshes sendiri dengan mudah masuk ke dalam memori. Pixar memiliki beberapa makalah tentang ini (misalnya Ray Differentials dan Multiresolution Caching Geometry untuk Distribusi Ray Tracing dalam Scene Kompleks ), tetapi intinya adalah bahwa model hanya dibagi lagi ketika mereka terkena sinar, dan hanya dibagi lagi sebanyak masuk akal untuk sinar seperti itu (misalnya interrefleksi difus membutuhkan akurasi kurang dari refleksi cermin). Selebihnya ditangani oleh cache geometri, yang menjaga model terbagi dalam memori dan mudah-mudahan membuat proses ini efisien dengan strategi pengusiran yang baik.
Selama semua mesh dasar Anda dengan nyaman masuk ke dalam memori, Anda dapat dengan mudah keluar dari core dan membuat mesh pada tingkat subdivisi yang tidak akan pernah masuk ke dalam memori. Cache geometri juga diskalakan dengan baik dengan jumlah memori yang Anda miliki, memungkinkan Anda untuk menimbang RAM vs waktu render. Ini juga digunakan di Mobil saya percaya.
Pendekatan kedua lebih umum dan tidak bergantung pada penggunaan subdivisi yang berat. Sebaliknya, itu bergantung pada kenyataan bahwa adegan Anda kemungkinan besar dibuat oleh seorang seniman dan sudah dipartisi menjadi objek yang cukup kecil yang masuk ke memori secara individual. Idenya adalah untuk mempertahankan dua hierarki (kD-tree atau hierarki volume terikat): Hirarki tingkat atas yang hanya menyimpan kotak pembatas objek dalam adegan Anda, dan hierarki tingkat rendah yang menyimpan geometri aktual. Ada satu hierarki tingkat rendah untuk setiap objek.
Dalam pendekatan ini, Anda idealnya sudah menyimpan kotak pembatas bersama dengan setiap objek pada disk. Saat adegan dimuat, Anda hanya membangun hierarki tingkat atas pada awalnya, artinya Anda hanya perlu melihat kotak pembatas dan bukan geometri. Anda kemudian mulai melacak sinar dan melintasi mereka melalui hierarki. Kapan saja sinar menyentuh simpul daun di hierarki tingkat atas (yaitu menyentuh kotak pembatas suatu objek), objek tersebut dimuat ke dalam memori dan hierarki tingkat rendahnya dibangun. Sinar kemudian terus turun ke melacak objek itu. Dikombinasikan dengan cache objek yang menyimpan sebanyak mungkin hierarki level rendah dalam memori, ini dapat berkinerja cukup baik.
Manfaat pertama dari pendekatan semacam itu adalah bahwa objek yang tidak pernah mengenai tidak pernah dimuat, yang berarti bahwa secara otomatis beradaptasi dengan visibilitas dalam adegan Anda. Manfaat kedua adalah bahwa jika Anda melacak banyak sinar, Anda tidak harus segera memuat objek karena terkena sinar; sebagai gantinya, Anda dapat menahan sinar itu dan menunggu sampai cukup banyak sinar mengenai objek itu, mengamortisasi beban melalui beberapa serangan sinar.
Anda juga dapat menggabungkan pendekatan ini dengan algoritma pengurutan sinar seperti Pengurutan Penangguhan yang Ditangguhkan untuk Pelacakan Jalur Produksi untuk menghindari benturan karena sinar yang tidak jelas. Makalah yang disebutkan menggambarkan arsitektur penyaji Hyperion Disney, digunakan untuk Big Hero 6 saya percaya, sehingga kemungkinan besar dapat menangani adegan pada skala produksi.