Jump to content
Unity Insider Forum

Brighthell96

Members
  • Content Count

    29
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by Brighthell96

  1. Das mit der Datei finde ich cool! Danke! Schade nur dass es da nichts von Unity selbst gibt.. 100 nicht.. aber so 3 stück hab ich wöchentlich minimum schon. ich nehme wöchentlich an sehr vielen kleinen Gamejams teil. Daher hab ich sehr viele Projekte die nur über mehrere Tage gehen^^ das werde ich mir wohl auch mal ansehen müssen. Habe aktuell noch keine ahnung wie man Unity Pakete macht.
  2. Hi, mache gerade für die Weekly Game Jam ein 2d isometic Game mit einem Raster / Grid Movement. und einer tilemap. das Movement vom Boot hab ich mit folgendem Code soweit hinbekommen: void Update() { if(Input.GetKeyDown(KeyCode.LeftArrow)) { transform.position += new Vector3(-0.5f, 0.295f, 0); animator.SetFloat("Horizontal", -1f); animator.SetFloat("Vertical", 0f); } else if(Input.GetKeyDown(KeyCode.RightArrow)) { transform.position += new Vector3(0.5f, -0.295f, 0); animator.SetFloat("H
  3. Hi again, oh junge ich weiß nicht so wirklich wo ich anfangen soll mit meiner Frage. Ich habe mich wiedermal dazu breitschlagen lassen ein neues Projekt anzufangen. ein platformer mit ihm als hauptcharakter: dieser Charakter soll in der lage sein, sein schwert (welches er im spielverlauf zu beginn findet) auszurüsten aber auch abzulegen: Anhand dessen ob er das Schwert equipped hat oder nicht soll er zwischen schwertkampf und faustkampf wechseln können. Diese unterscheiden sich nicht nur optisch sondern haben auch teilweise andere Eigenschaften. als Schwerkämpfer
  4. Hi! Ich hoffe das ist der richtige Forumsbereich ich fand jetzt nichts was zu dem Thema besser passen würde außer evtl. "Unity Benutzeroberfläche". und zwar wollte ich Fragen ob es einen Weg gibt die Standard Projektstruktur eines neuen Projekts anzupassen? Meine Unity Projekte haben eigentlich immer grob das selbe Format und daher hab ich mir ein "leeres Projekt" erstellt mit folgender Projektstruktur die ich dann verwende: Assets ├── Scenes ├── Prefabs ├── Scripts ├── Fonts ├── usw. │ └── . . . und diese Ordner Copy paste ich immer in mein neues Projekt aber das ist
  5. alles klar dankeschön! hab jetzt ein system hinbekommen mit dem system von dir in der fixedUpdate und dem bool. danke danke danke ❤️
  6. hallo sascha danke erstmal dass du mir noch so spät so schnell antwortest. genau. ob der Spieler springt, rennt, fällt soll keinen Einfluss haben ob die Kiste bei Kontakt kaputt geht oder nicht. Daher konnte ich das relativeVelocity nicht benutzen. das Problem ist dass man Kisten auch schieben kann und sollten sie irgendwo runterfallen dann können sie dadurch auch kaputt gehen. Sorry dass ich das nicht erwähnt habe vorher. Jedenfalls scheint dein Ansatz eigentlich zu passen für mich.. Aber kann sowas nicht zu Problemen führen wenn die fps mal dropen oder so? Sorry b
  7. Hi, in meinem 2D Platformer Game habe ich Kisten: und Gegner die diese Kisten auf den Spieler werfen können: + = Ich möchte dass diese Boxen wenn sie mit einer gewissen Wucht auf etwas stoßen (Terrain oder Spieler) zerstört werden. Dafür hatte ich erst die OnCollisionEnter2D Funktion benutzen. Das sah dann so aus: private void OnCollisionEnter2D(Collision2D collision) { if (!collision.collider.isTrigger && !collision.collider.CompareTag("Enemy")) { //wenn die Velocity x oder y größer als 5 ist. if (Mathf.Abs(collision.relat
  8. naja mehr oder weniger. Unity empfiehlt diese LTS Versionen ja wenn man Unity neu Installiert. Ob das jetzt LTS ist oder nicht ist mir eigentlich egal ich verstehe eh nicht genau was es dmait auf sich hat. Außerdem habe ich das Gefühl dass die 2020er Versionen deutlich langsamer auf meinem Computer laufen. Evtl auch nur Einbildung. Ich arbeite oft an meinem sehr schwachen Laptop evtl kommt der auch einfach nicht klar mit den neuen Versionen. heißt ich soll die Warnings einfach ignorieren? mich stören sie ja nicht sonderlich aber ich dachte dass sie evtl negative Auswirkungen auf das Ga
  9. hi, ich bekomme seit ich mein Projekt auf die Version 2019.4 geupdated habe immer genau 5x folgene Nachricht wenn ich Unity bzw das Projekt starte: was genau ist dieses SendMessage und wie kann ich verhindern dass es random genau 5x gecalled wird? Ich bin alle meine Skripts nochmal durchgegangen und finde keine Stelle wo ich irgendwo was mit SendMessage benutze. Wenn müsste es also vermutlich von einem Importierten Skript kommen aber In meinem Projekt benutze ich eigentlich nur A* Pathfinding, Textmeshpro, URP und Inputsystem als Addons/packages.
  10. Ich habe meinen Fehler dank dieser Seite hier: https://forum.unity.com/threads/learning-new-inputsystem-when-and-how-is-the-cancelled-callback-used.969501/ endlich funden. Mein Fehler war scheinbar dass ich statt Action Type: "Button" den Action Type: "Pass Through" verwenden musste. ich verstehe nicht so ganz warum aber scheinbar resettet "performed" nicht wenn man Button als action type hat. bei "Pass Through" schon. Aber damit dass passiert muss man statt "Hold" bei Pass Through wohl für den selben Effekt "Slow Tap" benutzen (Siehe Bild). ich werd niemals schlau aus dem Inputsystem...
  11. hast du es mal mit "passh through" probiert? funktioniert wunderbar bei mir. Hier die Klasse: public class FooBar : MonoBehaviour, InputManager.IMouseClickTestActions { private InputManager input; void Awake() { input = new InputManager(); input.MouseClickTest.SetCallbacks(this); } public void OnClick(InputAction.CallbackContext context) { Vector2 selectPosition = Camera.main.ScreenToWorldPoint(context.ReadValue<Vector2>()); Debug.Log($"Select position is: {selectPosition.x}|{selectPosition.y}"); } private void OnEnable(
  12. okay das stimmt natürlich. aber du hast ja bereits eine Action auf deiner Map die du per event triggern kannst: public void Select(InputAction.CallbackContext context) { if(//Device ist Maus) { Vector2 selectedPosition = Camera.main.ScreenToWorldPoint(Mouse.current.position.ReadValue()); Debug.Log($"Select position is: {selectPosition.x}|{selectPosition.y}"); } else if(//Device ist Touchscreen) { Vector2 selectedPosition = Camera.main.ScreenToWorldPoint(Touchscreen.current.position.ReadValue()); Debug.Log($"Select position is: {selectPosition.x}|{sel
  13. Ich habe wiedermal meine Probleme mit dem (neuen) Inputsystem wofür ich leider online keine Lösung finde. Also im ernst ich bin aktuell am überlegen das Inputsystem wieder zu wechseln. Weil fürs alte gibt es genügend spezifische Tutorials und Hilfestellungen. Und zwar bin ich aktuell an einem 2D Platformer am arbeiten. Da ich meine Jump performence ein wenig aufpolieren wollte habe ich mir ein paar Tutorials auf YT angeguckt und bin dann bei dem hier: hängen geblieben da mir das Konzept sehr gut gefällt. Nun.. leider benutzt er in seinem Video das alte InputSystem und dadu
  14. verstehe ich das richtig dass du einen Mauscklick erfassen willst und seine Position in einer variable Speichern willst? wenn das alles ist brauchst du nur folgende Line: Vector2 selectedPosition = Camera.main.ScreenToWorldPoint(Mouse.current.position.ReadValue()); zumindest Klappt das für die Maus. mit Touchscreen hab ich mich nicht befasst aber da gibts safe auch eine Methode die ähnlich aussieht. Musst dafür auch keine Actions für deine Map festlegen aber würde sich je nachdem anbieten wenn du verschiedene Controls benutzt. Edit: für den Touchscreen wäre das Äquivalent wo
  15. okay danke leute ich schaue mir den Beitrag Morgen an aber jetzt gehts erstmal ins Bett
  16. alles klar danke! wo wir grad bei dem Thema sind, wo ist eigentlich der unterschied zwischen: [System.NonSerialized] und dem hier?: [HideInInspector] Generell wollte ich fragen kennst du ein gutes Video oder ne Seite welche diese ganzen Unity-Eigenen, in eckigen Klammern stehenden Features umfasst? Natürlich gibt es die offizielle Dokumentation aber wenn ich etwas nicht kenne (z.b. [System.NonSerialized] war mir nicht bekannt) kann ich schlecht nach sowas suchen. Ich hab oft das Gefühl das man damit richtig coole Sachen machen kann aber hab keine Ahnung davon. Es gibt
  17. Danke erstmal für die Antworten. dank euch bin ich jetzt auf die Idee für ein funktionierendes System gekommen. klar das möchte ich auch garnicht. Es soll ja so simpel wie möglich sein. Das Problem war jedoch dass ich praktisch dem LoadScene() 2 dinge mitgeben können müsste: die Position der verknüpften Tür in der geladenen Scene an der der Spieler spawnen soll. diese Tür muss eine "onOpen" Animation spielen, bei der sie sich öffnet wo dann der Spieler rauskommt. Ich hab jetzt mit dem was ihr mir geschrieben habt ein funktionierendes System hinbekommen: ich
  18. Hi, ich hab ein kleines Problem bei dem ich grade nicht so ganz weiterkomme... Und zwar hab ich aktuell in meinem 2D Platformer auf jeder Stage 2 Türen und jede Stage ist eine eigene Scene. Die eine Tür soll einen eine Stage weiter führen, die andere eine Stage zurück. Also soll zum Beispiel die Tür am Ende der Stage 2 verbunden sein mit der Eingangstür zu Stage 3. Die Endtür von Stage 3 wiederrum mit der Eingangstür von Stage 4 und so weiter. Aktuell habe ich das ganze mit folgendem System umgesetzt: Jede Tür hat nen bool isEntry welcher dann true ist wenn die Tür die "Eingan
  19. ja das dachte ich auch schon weil LeftStick/Down im Gegensatz zu "Axis" LefStick ja eigentlich nur ein Button Input ist. Aber dann würde es ja wie gesagt nichts ändern wenn ich die globale Deadzone ändere: Mir wurde gesagt dass man sich als frischer Unity Developer von Anfang an an das "neue" InputSystem gewöhnen soll, da es ja scheinbar das andere nicht mehr ewig geben wird. Nur darum benutze ich das überhaupt. Stimmt das nicht? Jedenfalls werd ich mal weiter rumprobieren. Eventuell finde ich den Fehler irgendwie. Edit: Du hattest recht. Es ist wie ich gesagt habe: Le
  20. danke für die Antwort. Du bist gefühlt in jedem Beitrag anwesend und hilfst den Leuten das finde ich unglaublich aber genug geschleimt. Was die ScritableObjects angeht.. ich muss mir das wohl wirklich alles nochmal angucken. Mein Verständnis für die Teile ist leider... 😕 so lala. Ich habe mir bereits tutorials angeschaut wie man sie erstellt und grob anwendet aber ich verstehe noch nicht so ganz wann man sie anwendet und wie man das ganze strukturieren soll. Als Beispiel habe Ich noch ein anderes, pausiertes Projekt. und zwar eine Art 2D RPG. in diesem RPG wird es ähnlich wie bei Zeldag
  21. ja das könnte ich machen. Der Code ist allerdings knapp 700 lines lang. daher hier nur der JSON teil im Code der für die Platformen zuständig ist: { ""name"": ""Platforms"", ""id"": ""eab35586-2325-4aa2-aed3-6851ee75d13f"", ""actions"": [ { ""name"": ""TogglePlatform"", ""type"": ""Button"", ""id"": ""4a886440-3f8c-4311-b622-93f179958c69"", ""expectedControlType"": ""Button"", ""processors"": """", ""interactions"": """"
  22. keiner eine Idee? bin leider noch nicht viel weiter mit dem Problem 😔
  23. Geniales Beispiel 😆😆 mir fällt es immer sehr schwer mich daran zu halten. Natürlich achte ich sehr darauf immer alles private zu machen was auch private sein sollte. aber solche Referenzen auf andere Objekte benutze ich leider viel zu oft. in meinem aktuellen Projekt (2d Platformer) habe ich z.b. einen Spieler dessen leben (int health) static und public ist damit auch bloß jeder darauf zugreifen kann. zufrieden bin ich damit absolut nicht. Leider weiß ich nie so recht wie ich sowas anstellen soll. oder wie man es allgemein machen sollte.
  24. also wenn ich dich richtig verstehe willst du lediglich dass in deinem Button Textfeld z.b. sowas steht wie "Foward Walk = W" wenn die w taste gedrückt wird oder? wenn ja verstehe ich tbh nicht wofür der ganze code ist. evtl verstehe ich dein Anliegen auch falsch aber sollte das wirklich alles sein was du willst dann reicht diese code: public class Tastatur : MonoBehaviour { public Text myTextFromButton; public void LoadText() { myTextFromButton.text = "Forward Walk = " + Input.inputString; } } mehr solltest du eigentlich nicht brauchen. die "LoadText" Methode
×
×
  • Create New...