POV-ray'ı indirdim ve bu parlak metal küre 90'ların stilini oluşturdum:
Göreviniz aynı şeyi yapmak, ancak render motorunu mümkün olduğunca az baytta kendiniz uygulayarak yapmaktır. Bu tam görüntüyü kopyalamak zorunda değilsiniz - sonsuz bir dama tahtası üzerindeki yansıtıcı bir kürenin herhangi bir görüntüsü, aşağıdaki ölçütleri karşıladığı sürece yapacaktır.
Kurallar:
Görüntü, sonsuz bir dama tahtası üzerinde uçan yansıtıcı bir küreyi tasvir etmelidir. Hem dama tahtasının kendisi hem de küredeki yansıması resimde gösterilmelidir. Gördüğümüz bu görsel olarak açık olmalıdır. Bunun ötesinde geometrinin, renklerin, malzeme özelliklerinin vs. detayları size kalmış.
Sahnede bir miktar aydınlatma olmalı: kürenin parçaları diğer bölümlerden daha karanlık olmalı ve görsel olarak ışığın nereden geldiğini söylemek mümkün olmalıdır. Bunun ötesinde, aydınlatma modelinin detayları size kalmış. (İsterseniz kendi basitleştirilmiş aydınlatma modelinizi icat edebilirsiniz.) Kürenin gölge atması gerekmez.
Yukarıdaki iki kriter - gerçekten bir ışık kaynağı tarafından aydınlatılan bir dama tahtasının üzerinde parlak bir küre gibi görünse de - oylama kullanılarak topluluk tarafından değerlendirilecektir. Bu nedenle, bir cevabın kazanmaya uygun olması için olumlu bir puanı olmalıdır.
Çıktı en az 300x300 piksel olmalıdır. Ekranda görüntülenebilir veya bir dosyaya yazılabilir, ya da iyidir.
Kodunuz makul ve modern bir bilgisayarda bir saatten az bir sürede çalışmalıdır. (Bu cömerttir - POV-ışını yukarıdaki sahneyi pratik olarak anında oluşturur.)
Yerleşik ışın izleme işlevi kullanılamaz - oluşturucuyu kendiniz uygulamanız gerekir.
Bu kod golf , bu nedenle en kısa kod (bayt cinsinden) ile pozitif puanlama kazanır. Bununla birlikte, hoş bir resim çizerek (kodu elbette kısa tutarken) en fazla oyu almanın meta oyununu da oynayabilirsiniz.
Bu meydan okuma gülünç derecede zor görünebilir, ancak geometri sabit olduğundan, böyle bir sahneyi ışın izlemeyle oluşturma algoritması oldukça basittir. Bu sadece çıktı görüntüsündeki her piksel üzerinde yineleme ve hangi rengin olması gerektiğini görmek için matematiksel bir ifadeyi değerlendirme örneğidir, bu yüzden bazı iyi cevaplar göreceğimiz konusunda iyimserim.