Bir Roguelike üzerinde çalışıyorum ve bunun için sağlam bir daire içindeki her noktaya Bresenham çizgilerini çizmekten oluşan bir ışın izleme / döküm görüş alanı (FoV) algoritması oluşturdum. Artefakt içermez (ve makul derecede etkilidir), ancak benim için önemli bir gereksinim eksik: simetri (bir canavarı görebiliyorsanız, sizi de görebilmelidir).
İşte kodumun simetrik olmayan davranışına bir örnek. Sol resimde bir köşede duruyorum (kırmızı 'X' blokları = duvar). Sağ üst karoları görebiliyorum. Ancak, bu döşemelerden birine (sağ görüntü) geçersem, artık geldiğim döşemeyi göremiyorum.
Bence İzin Verici Bir Görüş Alanından sonra olabilirim , ama sadece Roguebasin makalesi simetriye izin vermesini önerdiğinden. Simetri elde etmenin alternatif yolları var mı?