Jump to content
Unity Insider Forum

Build zu schnell!?


Sakura Hanami

Recommended Posts

Hallo,

 

ich habe mal zum Testen und Einarbeiten in Unity ein kleines Spiel (Sokoban-Clone) erstellt. Während die Geschwindigkeiten des Player im Editor gut eingestellt sind, ist er nach dem Build so schnell. Ich habe ein Playerscript und ein Cubescript. Ich hänge sie bei an. Build

Hat jemand eine Idee woran es liegen könnte? Buildversuche (Windows 32, aber auch 64)

Lg Thomas

 

Cube.cs PlayerMovement.cs

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo!

Ich verstehe es zwar nicht wirklich, aber ich habe jetzt mal die Variablen für das Build neu eingestellt. Nun funktioniert es wieder. 

    //public float walkSpeed = 30;
    //public float runSpeed = 60;
    //public float pushSpeed = 40;
    public float rotationSpeed = 15;

    private float walkSpeed = 3;
    private float runSpeed = 6;
    private float pushSpeed = 4;

Die öffentliche Variante verwende ich zum testen und die private Variante verwende ich dann zum builden. Ich verstehe es nur nicht, weil ich doch immer den Korrektur-Faktor Time.deltaTime verwendet habe.

LG Thomas

Link zu diesem Kommentar
Auf anderen Seiten teilen

Möglicherweise hattest du die public Variablen im Inspector geändert und damit dann Dinge getestet.
Und später hast du im Code die public Varablen neu gesetzt und gedacht, dass diese neuen Werte im Code auch dann genutzt würden.
Das ist aber so nicht. Wenn du Public Variablen im Inspector änderst, dann gelten diese Änderungen, egal wie oft du danach im Code andere Werte reinschreibst.
Du kannst aber im Inspector die Werte resetten. Aber Obacht! Es ist dann wirklich alles so wie im Code. ;)
reset.png.35de012161820d52531bee1083750c4f.png

Auf die Schieberegler mal rechts drauf klicken und reset auswählen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich hab mal drüber geschaut und kann bestätigen, dass Time.deltaTime korrekt verwendet wird. Ist nicht 100% deterministisch, da du nicht FixedUpdate benutzt, aber es sollte immer noch einigermaßen gleich sein. Von daher ist @malzbies Theorie, dass das etwas mit den Werten zu tun hat, die im Editor eingestellt wurden, schon sehr gut.

Ich wundere mich aber etwas, weil du eigentlich im Editor und im Build die gleichen Ergebnisse sehen solltest. Egal, was du mit deinen Werten so angestellt hast.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor einer Stunde schrieb Sascha:

Ich hab mal drüber geschaut und kann bestätigen, dass Time.deltaTime korrekt verwendet wird. Ist nicht 100% deterministisch, da du nicht FixedUpdate benutzt, aber es sollte immer noch einigermaßen gleich sein. Von daher ist @malzbies Theorie, dass das etwas mit den Werten zu tun hat, die im Editor eingestellt wurden, schon sehr gut.

Ich wundere mich aber etwas, weil du eigentlich im Editor und im Build die gleichen Ergebnisse sehen solltest. Egal, was du mit deinen Werten so angestellt hast.

Ich habe jetzt mal die Input-Abfragen in die Update-Funktion gepackt und FixedUpdate übernimmt nun allein die Physik. Es läuft sogar wesentlich ruhiger und das Build-"Problem" ist damit auch behoben. Vielen Dank für deinen wertvollen Hinweis.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 2 Stunden schrieb malzbie:

Möglicherweise hattest du die public Variablen im Inspector geändert und damit dann Dinge getestet.
Und später hast du im Code die public Varablen neu gesetzt und gedacht, dass diese neuen Werte im Code auch dann genutzt würden.
Das ist aber so nicht. Wenn du Public Variablen im Inspector änderst, dann gelten diese Änderungen, egal wie oft du danach im Code andere Werte reinschreibst.
Du kannst aber im Inspector die Werte resetten. Aber Obacht! Es ist dann wirklich alles so wie im Code. ;)
reset.png.35de012161820d52531bee1083750c4f.png

Auf die Schieberegler mal rechts drauf klicken und reset auswählen.

Das ist ein guter und praktischer Hinweis. So habe ich meine vorgegebenen Werte und kann aber darüber hinaus mit Werten experimentieren. Ist schon Wahnsinn wie gut solche Programme durchdacht sind!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...