Jump to content
Unity Insider Forum

All Activity

This stream auto-updates     

  1. Yesterday
  2. Klingt, als wäre es eventuell ein Problem in deiner Animation-State Machine.
  3. äh... ok das hatte ich etwas falsch verstanden dann ^^° beide hinteren schulter tasten werden zum glück nicht gleichzeitig gebraucht und sollten so eigentlich kein problem geben wenn dann nichts passiert ^^ ich habe es jetzt mal so probiert wie ich es aus deinem post verstanden habe... ... float RT_Fire = Input.GetAxis ("Fire2"); if (Input.GetAxis("Fire2") >= 0.5f) { anim.SetBool ("RT_Fire", true); MOVE = false; speed = 0.0f; } if (Input.GetAxis("Fire2") <= 0.4f) { anim.SetBool ("RT_Fire", false); MOVE = true; speed = 1.0f; } ... Leider springt so der Trigger immer wieder an,aus,an,aus... obwohl ich den RT Button fest halte. das liegt dann wohl am update per frame wie ich mal stark vermute. langsam bin ich echt am verzweifeln 😰 aber ich habe mir nun gedacht das ich es etwas eigenständig umbauen werde. Ich baue das ganze jetzt so um das ich den float weiterhin benutze und aber nach dem ende der animation eine abfrage starte ob noch genug magie für einen weiteren zauber vorhanden ist. wenn nein dann setze ich den float auf 0.0f und somit kommt ja dann keine weitere animation. das sollte ja eigentlich die lösung sein. ich habe auch schon etwas im internet gesucht aber leider nicht so ganz verstanden wie man die genaue animations zeit in einem " void Update ()" aus liest. hättet ihr da evtl einen tipp für mich? 😊 ansonsten weis ich langsam echt nicht mehr weiter wie ich es anstellen soll 🙁
  4. Wahrscheinlich ist der Grundaufbau meines Projektes zu laienhaft. Ich erstelle eine Szene, indem ich ein Sprite (1024x512, PPU100) in die Hierarchy lege. Der auf dem Sprite dargestellte Raum ist nun die Szene (Sprite.Küche == Scene.Küche). Alle interessanten Objekte des Raumes werden zu GameObjekten der Szene mit ihren erwünschten Eigenschaften (Collider, Script,etc.). Wenn der Spieler den Raum verlassen will, gelangt er durch Click auf den Button "Gehe Zu" mittels Scenemanger.LoadScene(x) in den Raum/die Szene seiner Wahl. Also hier verfolgt die Kamera nicht den Spieler, der Spieler klickt sich mit der Maus von Gameobjekt zu GameObjekt(untersuche, öffne, nehme, kombiniere, etc). In dem oben beschriebenen Spiel läuft der Spieler (mittels Kamera, als First Person Adventurer), wie ja in vielen Games, durch die Szene. Diese ist aber im Gegensatz zu meiner, "unendlich" groß, also er läuft vom Erdgeschoss ins Obergeschoss und wieder zurück in den Keller ohne einmal einen Szenenwechsel-Button betätigen zu müssen !. Das o.g. Spiel hatte ich nur angesprochen, weil es meiner Story und meinem Spielaufbau sehr ähnlich ist. Diese beschriebene Technik ist mir unbekannt; ich stelle mir also vor, viele (ca.40) Sprites (Bild eines Raumes) in eine "Szene" zu packen und dann den Spieler (im Sinne eines FPS, aber ohne Shooting) durch das Haus sausen zu lassen. Alles vermutlich sehr, sehr Anfänger-like, aber nur durch Fragen und Probieren und natürlich viel, viel Lesen wird man Fortschritte erleben. Als Rentner habe ich zumindest Zeit... Grüße von der Ostseeküste Peter (Nordseekrabbe)
  5. Hm... Spricht für dich etwas dagegen, alle Räume in einer Szene zu haben und im Spielverlauf die Räume einfach zu deaktivieren und beim Betreten wieder zu aktivieren?
  6. Danke für die prompte Antwort. Bilder oder ein Video kann ich leider nicht übermitteln. Der Spieler betritt die Diele und kann nun durch das komplette Gebäude laufen. In meinem Projekt komme ich von Raum zu Raum nur über ein Skript "Szenenwechsel", was den SceneManager aufruft. Das genannte Spiel entspricht somit der Realität, kontinuierliche Bewegung im Raum, die Kamera folgt dem Spieler; Raumteile und andere Räume, die bislang nicht sichtbar sind, zeigt die Kamera mit der fortschreitenden Bewegung des Spielers im Raum. Das alles spielt sich, so wie ich mir das vorstelle, in einer Szene ab. Garnicht so einfach, einen einfachen Ablauf im Alltag verständlich zu beschreiben. Ich hoffe, du konntest nachvollziehen, was ich meine.
  7. Öh... hatte ich doch weiter oben schon gepostet? Ja, können sie ja auch nur. Deshalb musst du eine Grenze setzen (im Beispiel 0.5, also 50%), wie weit man den Trigger runterdrücken muss, damit er wie ein Knopf als "gedrückt" zählt. Hier landet man aber eben ganz schnell in der Falle, die @malzbie beschrieben hat. Drückst du beide Trigger exakt gleichzeitig runter, bleibt der Wert immer auf 0. Um beide Trigger gleichzeitig und unabhängig voneinander abfragen zu können, musst du vom alten Standard-Input-System weg. Ob das neue System da besser ist, weiß ich nicht. Wie gesagt, @malzbie und ich benutzen beide Plugins für Controller-Support. So eins zu bauen oder auch nur zu besorgen ist jetzt nicht mehr unbedingt Anfängerstoff.
  8. Unity ist das richtige Programm wann immer du Echtzeitgrafik haben willst, also eine 2D- oder 3D-Welt, die durchgehend neu gezeichnet wird. Wenn du eine App bauen willst, die eigentlich nur Text und Bilder anzeigt, und die sich kaum verändert, wenn man nichts drückt (stelle dir eine Einkaufslisten-App oder einen Kalender vor), dann geht das mit Unity auch, ist aber irgendwie mit Kanonen auf Spatzen schießen. Zum Thema habe ich vor ein paar Jahren mal etwas geschrieben. Ist etwas "direkt" formuliert, aber ich denke, Keine Ahnung, ich hab davon vorher noch nie gehört und beim Suchen gerade nur andere Apps gefunden. Wenn du dir mal meinen verlinken Post durchgelesen hast, würde ich sagen: Du nimmst dir ein Blatt Papier oder eine Textdatei und schreibst einfach mal auf, wie dein Spiel funktionieren soll. Das geht gerne auch als Diagramm. Du setzt dich an Grundlagentutorials, damit du über kurz oder lang genügend lernst, um dieses Konzept selber zu implementieren. Bei Fragen und Problemen, die dabei entstehen, können wir dir hier gut helfen
  9. Wenn du irgendwie eine Beschreibung, Bilder oder ein Video darüber hättest, was du meinst, das wäre nett Da ich das Spiel nicht gespielt habe, weiß ich nämlich nicht, worum es geht.
  10. Hast meinen Post nicht so richtig gelesen, oder? Es geht darum, wann OnEnable auf dem suchenden Objekt ausgeführt wird. Dass du im Inspektor die Referenz auf den SMR siehst, ist für mich nur ein Hinweis, dass du mehrere Stellen hast, an denen mit dem Wert des Feldes gearbeitet wird. Setzt du den noch irgendwo anders? Zum Beispiel im Inspektor? Ansonsten schau halt mal, was ein Debug.Log(smr); unter der GetComponentInChildren-Zeile sagt.
  11. Moin, moin, bin vor ein paar Tagen dem Spiel "Layers of Fear" begegnet, das meinem Projektversuch von der Spiellogik her sehr ähnlich ist (natürlich ist dieses Spiel 10000mal professioneller !!). Meine Frage: hier begegnet man vielen Räumen in einer Szene, in meinem Spiel habe ich dafür ca. 40 Szenen, was das ganze erheblich komplizierter macht. Also, wie hat dieses Team diese Vielzahl von Backgrounds in eine Szene gepackt. Welche Technik ? Geht das mit Tilemaps oder wie auch immer ? Eine schöne Woche noch und Gruß von der Ostseeküste Peter (Nordseekrabbe)
  12. Last week
  13. Hallo liebe Community, Ich bin auf dem Programmier Gebiet noch sehr neu und bin deshalb auf eure Hilfe angewiesen. Ich habe vor ein Spiel im Prinzip von "Piccolo-Trinkspiel" zu machen. Nur habe ich leider kein geeignetes Tutorial oder einen geeigneten Kurs gefunden das genau zeigt wie so etwas simples geht. Wie nennt man überhaupt dieses Spielprinzip? Und ist Unity das richtige Programm dafür? Freue mich über Rückmeldungen! LG
  14. Deswegen ja hier das True, dass sagt, dass auch deaktivierte Komponente gefunden werden: actionTriggerCol = GetComponentInChildren<BoxCollider>(true); smr = GetComponentInChildren<SkinnedMeshRenderer>(true); Aber wie gesagt, schau mal auf Bild 2 wars glaub ich, da steht ja im Inspector drin, dass er den SMR gefunden hat. Das wundert mich halt. Er findet ihn, aber drauf zugreifen darf man nicht.
  15. hm... ok 😳 auf die idee bin ich jetzt noch ned gekommen... 😓 werde ich morgen dann mal testen weil bisher dachte ich immer das diese LT und RT tasten nur float werte geben können.
  16. Ist halt nur minimal anders. if (Input.GetButton("Ein Button")) if (Input.GetAxis("Ein Trigger") >= 0.5f) // mindestens halb runtergedrückt
  17. Da dein ganzes Objekt deaktiviert ist, schau mal, ob OnEnable überhaupt jemals ausgeführt wird. Ansonsten übergibst du ja true, womit er theoretisch auch deaktivierte Objekte finden kann (sofern der Code überhaupt ausgeführt wird).
  18. Also der Fehler kommt genau bei der Zeile: material = smr.material; Da ich aber eine Zeile vorher ja den SkinnedMeshRenderer finde, frage ich mich, wo sein Problem ist: smr = GetComponentInChildren<SkinnedMeshRenderer>();
  19. joa das die hinteren tasten für zb autorennen gedacht sind wegen der stufenlosen beschleunigung etc ist mir ja klar. ich hatte nur gehofft das ich diese auch genau so ansteuern kann wie einen A, B, X oder Y button 😕 da ich in meinem spiel nunmal die 4 schulter tasten so belegen muss damit die steuerung nicht zu kompliziert wird. oder meintest du mit deiner antwort das man diese auch wie ein button ansteuern kann??? 😳
  20. Sehr cool. Ja, das Schiff ist eines der wenigen im Asset Store das gut aussieht und irgendwie als Racer taugt mit Cockpit. Alles andere sind immer nur Schiffe für Ballerspiele von denen es ja auch so wenige gibt. Und 90% haben kein Cockpit. Deshalb habe ich ja das ganze Spiel auf Open World umgebaut um dort Rennstrecken auf Planeten, zwischen Planeten oder vielleicht sogar zwischen verschiedenen Systemen machen zu können (träum 😎). Was bei mir unmengen an Zeit frist sind halt die Planetenoverflächen. Einen Planeten aus dem All gut aussehen zu lassen sind nicht so zeitraubend. Da kann man sich auch Maps aus Space Engine exportieren und benutzen. Zu EVE: Ja, das sieht schon geil aus in EVE, aber ich finde deine Szene sieht auch gut aus. Kommt halt darauf an was man will. In ED z.B. ist alles schwarz mit Sternen.
  21. GetComponent (und alle Varianten davon) werfen keinen Fehler, wenn die gesuchte Komponente nicht gefunden wird. Sie geben einfach null zurück. Eine NullReferenceException wird nur dann geworfen, wenn du eine Variable hast, dessen Wert null ist, und du dann mit dem (nicht vorhandenen) Objekt arbeiten willst. var thing = GetComponent<Thing>(); // Es gibt kein Thing auf diesem GameObject, GetComponent gibt null zurück thing.DoStuff(); // HIER fliegt eine NullReference- (oder ähnliche) Exception Eine NullReferenceException kann daher nur dort auftreten, wo du mit Punktnotation oder Indexer auf eine Variable zugreifst: thing.DoStuff() thing.someField thing[index] Da nichts davon hier der Fall ist, stimmt die Zeilennummer der Exception vermutlich einfach nicht. Speichere mal deinen gesamten Code. Und nur um sicherzugehen, re-importiere ihn nochmal. Probier's dann nochmal aus.
  22. Also ich weiß nicht genau ob es Daran liegt aber lass mal das true weg. Also: private void OnEnable() { actionTriggerCol = GetComponentInChildren<BoxCollider>(); smr = GetComponentInChildren<SkinnedMeshRenderer>(); material = smr.material; col = material.GetColor("_Color"); } Habe da noch nie ein True rein gemacht
  23. Lustig, ich hatte selbe Idea und ich habe sogar das selbe ship benutzt, aber nach dem ich eine Demo gemacht habe, hat es sich angefühlt als ob was felt. Es ist nicht so einfach eine schone Scene zu basteln wie in EVE z.b, zonst hätte ich so ein spiel schon bei Steam ) edit Ich meine natürlich nur das Imspace teil. Bei mir gabt es einfach eine Strecke aus Rings von der Erder zum Mond und Zuruck.
  24. doublepost, wie kann ich den ein komment löchen?
  25. Hi! Sagt mal, könnt ihr mal auf die Grafiken einen Blick werfen: Ich versuche in der OnEnable-Methode einige Komponenten zu finden: private void OnEnable() { actionTriggerCol = GetComponentInChildren<BoxCollider>(true); smr = GetComponentInChildren<SkinnedMeshRenderer>(true); material = smr.material; col = material.GetColor("_Color"); } Laut Inspector wurde alles gefunden, trotzdem bekomme ich ne Fehlermeldung, dass er den SkinnedMeshRenderer nicht findet. Seht ihr da irgendwo nen Fehler? Grüße von Kojote
  26. Weils keine Taste ist, sondern eine Achse. Die Trigger sind nichts anderes als ein Joystick, der von rechts nach links oder von oben nach unten geht. Der Sinn dieser beiden Tasten ist es ein Fahrzeug zu beschleunigen oder zu bremsen und sowas soll ja auch nicht wie ein Schalter passieren, sondern wie ein Pedal. Aber egal. Dein Problem liegt entweder im Verständnis, wie man aus einem quasi analogen Signal ein digitales Signal macht, oder aber an der Animation selbst. Hast du denn mal probiert dein gewünschtes Szenario mit ein Button hin zu kriegen? Wenn nein, dann mach das mal, denn ich kann nur vermuten was bei dir nicht funktioniert. Ob ich damit richtig liege kann ich nicht sagen, denn außer deinem Code habe ich nichts gesehen und auch jetzt erst von deinem Zauber erfahren. Und das wäre eine wichtige Info gewesen. Also teste es mal mit nem Button. Wenns da auch nicht geht, brauchen wir über den Trigger nicht mehr reden.
  1. Load more activity

Announcements

Hy, wir programmieren für dich Apps(Android & iOS):

Weiterleitung zum Entwickler "daubit"



×
×
  • Create New...