"Physikalisch basiert" ist kein sehr gut definierter Begriff, daher ist es schwierig, diese Frage genau zu beantworten.
Im Allgemeinen bezieht sich "physikalisch basiert" auf die Tatsache, dass der fragliche Algorithmus von physikalisch basierten Prinzipien abgeleitet ist. Es ist physikalisch nicht korrekt (weil wir uns das nicht leisten können) und einige Annäherungen müssen normalerweise gemacht werden, aber es ist bekannt, was diese Annäherungen sind, und im Idealfall gibt es eine gewisse Intuition darüber, welche Art von Fehler es einführt.
Dies steht im Gegensatz zu Ad-hoc-Modellen, die normalerweise von einem Künstler erstellt werden, der einen Effekt im wirklichen Leben beobachtet und versucht, einen Shader oder ähnliches zu schreiben, der das Aussehen irgendwie nachahmt. Normalerweise sind Ad-hoc-Modelle einfacher und billiger und sind in der Regel die ersten Lösungen für ein bestimmtes Problem. Sie bieten jedoch keinen besonderen Einblick in das, was tatsächlich passiert. Es ist auch praktisch unmöglich zu sagen, wie genau ein solches Modell den Effekt reproduzieren kann, den es zu simulieren versucht.
Im Zusammenhang mit dem Rendern wäre ein "physikalisch basierter Renderer" daher einfach etwas, das ein Bild nach physikalisch basierten Prinzipien rendert, was eine sehr vage Klassifizierung ist. Ein Raytracer ist nicht von Natur aus physikalisch basiert, und die meisten frühen Raytracer verwendeten tatsächlich Ad-hoc-Modelle für Beleuchtung und ähnliches. Nach meiner persönlichen Erfahrung bezog sich "physikalisch basiertes Rendering" normalerweise auf das Lösen der Rendering-Gleichung. Es scheint jedoch, dass in den letzten Jahren viele Spiele-Engines diesen Begriff auch als "wir sparen Energie" oder "wir verwenden kein Phong mehr" bezeichnet haben.
Es gibt also keine genaue Klassifizierung, was "physikalisch basiertes Rendering" bedeutet, und die Verwendung von Raytracing allein macht einen Renderer nicht physisch basiert. Beim Offline-Rendering wird dieser Begriff immer noch hauptsächlich für Renderer verwendet, die die Rendering-Gleichung lösen, während er sich beim Echtzeit-Rendering eher auf die Verwendung von Mikrofacettenmodellen oder ähnlichem bezieht. Es ist jedoch möglich, dass sich die Bedeutung dieses Begriffs im Laufe der Jahre ändert.
Nein, einfach:
Für physikalisch basiertes Rendern ist kein Raytracing erforderlich. Man kann andere Mittel verwenden. *
Raytracing kann verwendet werden, um andere Effekte als physikalisch basiertes Rendern zu erzielen.
Raytracing ist oft am einfachsten zu implementieren und zu überlegen. Daher ist es weit verbreitet für physikalisch basiertes Rendering. Aus dem gleichen Grund verwenden viele nichtrealistische Renderer Raytracing-Tricks, um das zu bekommen, was sie brauchen.
* Ich persönlich habe mit unstrukturierter FEM gespielt, um Bilder zu rendern
quelle