|
Das UpdateProbe.cs Script in Kapitel6 erzeugt insgesamt 4 Error Meldungen in 21,31 und 28,39 (Unity5.0.2, Windows): Ich vermute es gibt Probleme mit bool, die Scripting-Api von Reflection.Probe sagt dass RenderProbe targetTexture will:
ReflectionProbe.RenderProbeSwitch to Manual
Dementsprechend startet auch in Traces_Prototype_070 der gameMode nicht, Unity verlangt Compilererrors to be fixed...
Die Anordnung von Reflection Probe im Inspector weicht in Unity 5.0.2 geringfügig von Abb. 6.43 ab (im screenshot grün markiertes Feld Type hat zwei Tabs "Refresh Mode2 + "Time Slicing" falls realtime-type selected), deswegen denke ich dass es kürzlich in Unity leichte änderungen hier gab,.... |
|
|
|
|
|
|
|
Danke für den Bugreport! Da hat sich tatsächlich die API geändert - und auch die GUI von Reflection Probes im Editor/Inspector. Als Quick-Fix ist es sicher, die Variable timeSliced komplett aus dem Script UpdateProbe.cs zu entfernen, also in Zeile 11 die komplette Deklaration (public bool timeSliced = false;), und dann in Zeile 22 und 29 den Parameter in dem Aufruf probe.RenderProbe(timeSliced); (was dann natürlich probe.RenderProbe(); heissen muss). Bei den drei Reflection Probes in der Szene (Tracer-00 / Body / Reflection Probe Body, Tracer-00 / WheelFront / Reflection Probe Front und Tracer-00 / WheelBack / Reflection Probe Back) würde ich dann noch Refresh Mode auf Via Scripting umstellen. Man könnte hier allerdings auch den Refresh Mode auf Every Frame stellen, und sich dann entweder das komplette Script UpdateProbe.cs sparen (das ist jetzt gar nicht mehr unbedingt notwendig), oder zumindest den Parameter everyFrame und den dazugehörigen Codepfad entfernen (es würde dann ausreichen, das Script zu aktivieren, wenn Refresh Mode auf Via Scripting steht - bzw. könnte man es sogar automatisch deaktivieren, wenn die Reflection Probe entsprechende Einstellungen hat). Das lasse ich jetzt mal, wie es ist, schreibe aber einen entsprechenden Kommentar an die Stelle ;-) Ich ändere das auch in dem Projekt und lade gleich eine neue Version hoch. In der nächsten Auflage korrigiere ich dann auch den Screenshot (und schreibe das eben in Errata) ;-) PS: Ah, eine Sache noch: Time Slicing würde ich auf "No time slicing" stellen, sofern das im jeweiligen Fall nicht zu sehr auf die Performance geht. Bei diesem Projekt fällt es ziemlich deutlich auf, wenn man Time Slicing aktiv hat, also würde ich es nach Möglichkeit einschalten (bei langsameren Bewegungen, die nicht so krass auffallen wie beim Fahren eines praktisch perfekten Spiegels über ein Raster, wird man das normalerweise natürlich eingeschaltet lassen). |
|
beantwortet04.06.2015 Jashan Chittesh 301
|
|
|
|
|
Supercool! Danke auch für die ausführliche Antwort - wie im Buch super verständlich beschrieben... Und schönen Urlaub noch! |
|
|
beantwortet04.06.2015 tobiasros 145
|
|
|