Nếu cảnh không hoàn toàn vừa với bộ nhớ, bạn đang bước vào lĩnh vực kết xuất ngoài lõi. Về cơ bản có hai cách tiếp cận ở đây: a) Tạo cảnh của bạn theo yêu cầu b) Tải cảnh của bạn theo yêu cầu
Cách tiếp cận trước đây phù hợp với hầu hết các quy trình hoạt hình, trong đó các mô hình được phân chia rất nhiều bằng cách sử dụng, ví dụ Catmull-Clark và có thể trở nên rất tốn bộ nhớ, nhưng bản thân các lưới cơ sở dễ dàng phù hợp với bộ nhớ. Pixar có một vài bài viết về điều này (ví dụ: Vi sai Ray và Bộ đệm hình học đa biến đối với truy tìm tia phân phối trong các cảnh phức tạp ), nhưng ý chính của nó là các mô hình chỉ được chia nhỏ khi chúng bị tia chiếu và chỉ được chia nhỏ như vậy. hợp lý cho một tia như vậy (ví dụ xen kẽ khuếch tán cần độ chính xác thấp hơn so với phản xạ gương). Phần còn lại được xử lý bởi bộ đệm hình học, giúp giữ các mô hình được chia nhỏ trong bộ nhớ và hy vọng làm cho quá trình hiệu quả bằng một chiến lược đuổi tốt.
Miễn là tất cả các lưới cơ sở của bạn thoải mái phù hợp với bộ nhớ, bạn có thể dễ dàng đi ra khỏi lõi và kết xuất các lưới ở các cấp độ phân chia không bao giờ phù hợp với bộ nhớ. Bộ nhớ cache hình học cũng chia tỷ lệ độc đáo với dung lượng bộ nhớ bạn có, cho phép bạn cân RAM so với thời gian kết xuất. Điều này cũng đã được sử dụng trong Ô tô tôi tin.
Cách tiếp cận thứ hai là tổng quát hơn và không dựa vào việc sử dụng nhiều phân khu. Thay vào đó, nó dựa vào thực tế là cảnh của bạn rất có thể được thực hiện bởi một nghệ sĩ và đã được phân vùng thành các vật thể nhỏ hợp lý phù hợp với từng bộ nhớ. Ý tưởng sau đó là giữ hai cấu trúc phân cấp (kD-tree hoặc phân cấp âm lượng giới hạn): Một hệ thống phân cấp cấp cao nhất chỉ lưu trữ các hộp giới hạn của các đối tượng trong cảnh của bạn và phân cấp cấp thấp lưu trữ hình học thực tế. Có một hệ thống phân cấp cấp thấp như vậy cho mỗi đối tượng.
Trong phương pháp này, lý tưởng nhất là bạn đã lưu trữ một hộp giới hạn cùng với từng đối tượng trên đĩa. Khi cảnh được tải, ban đầu bạn chỉ xây dựng hệ thống phân cấp cấp cao nhất, nghĩa là bạn chỉ phải nhìn vào các hộp giới hạn chứ không phải hình học. Sau đó, bạn bắt đầu truy tìm các tia và đi qua chúng qua hệ thống phân cấp. Bất cứ khi nào một tia chạm vào một nút lá trong hệ thống phân cấp cấp cao nhất (tức là nó chạm vào khung giới hạn của một đối tượng), thì đối tượng đó được tải vào bộ nhớ và hệ thống phân cấp cấp thấp của nó được xây dựng. Các tia sau đó tiếp tục đi xuống truy tìm đối tượng đó. Kết hợp với bộ đệm đối tượng giữ càng nhiều phân cấp cấp thấp trong bộ nhớ càng tốt, điều này có thể thực hiện hợp lý tốt.
Lợi ích đầu tiên của cách tiếp cận như vậy là các vật thể không bao giờ bị bắn không bao giờ được tải, có nghĩa là nó tự động thích nghi với khả năng hiển thị trong cảnh của bạn. Lợi ích thứ hai là nếu bạn truy tìm được nhiều tia, bạn không phải tải một vật ngay lập tức vì nó bị tia chiếu trúng; thay vào đó, bạn có thể giữ tia đó và đợi cho đến khi đủ tia chiếu vào vật thể đó, phân bổ tải trọng qua nhiều lần chiếu tia.
Bạn cũng có thể kết hợp phương pháp này với một thuật toán sắp xếp tia, chẳng hạn như Shading hoãn lại được sắp xếp theo dõi đường dẫn sản xuất để tránh bị đập do các tia không liên tục. Bài báo được đề cập mô tả kiến trúc của trình kết xuất Hyperion của Disney, được sử dụng cho Big Hero 6 tôi tin, vì vậy rất có thể nó có thể xử lý các cảnh ở quy mô sản xuất.