Jump to content
Unity Insider Forum
  • Announcements

    • Lars

      Allgemeine Forenregeln   03/13/2017

      Forenregeln Nimm dir bitte einen Moment um die nachfolgenden Regeln durchzulesen. Wenn du diese Regeln akzeptierst und die Registration fortsetzen willst, klick einfach auf den "Mit der Registrierung fortfahren"-Button. Um diese Registration abzubrechen, klick bitte einfach auf den "Zurück" Button deines Browsers. Wir garantieren nicht für die Richtigkeit, Vollständigkeit und Brauchbarkeit der Nachrichten und sind auch nicht dafür verantwortlich. Die Beiträge drücken die Meinung des Autors des Beitrags aus, nicht zwangsläufig das, wofür die Forensoftware steht. Jeder Nutzer, der denkt, dass ein veröffentlichter Beitrag unzulässig bzw. störend ist, ist aufgefordert uns unverzüglich per E-Mail zu kontaktieren. Wir haben das Recht störende Beiträge zu löschen und bemühen uns, das in einem realistischem Zeitraum zu erledigen (sofern wir beschlossen haben, dass die Löschung notwendig ist). Du akzeptierst, durchgehend während der Nutzung dieses Services, dass du dieses Forum nicht dazu missbrauchen wirst, Inhalte zu veröffentlichen, welche bewusst falsch und/oder verleumderisch, ungenau, beleidigend, vulgär, hasserfüllt, belästigend, obszön, sexuell belästigend, bedrohlich, die Privatsphäre einer Person verletzend oder in irgend einer Art und Weise das Gesetz verletzen. Des Weiteren akzeptierst du, dass du keine urheberrechtlich geschützte Inhalte ohne Erlaubnis des Besitzers in diesem Forum veröffentlichst. Mit dem Klick auf den "Mit der Registrierung fortfahren"-Button, akzeptierst du zudem unsere Datenschutzerklärung und stimmst der Speicherung deiner IP-Adresse und personenbezogenen Daten zu, die dafür benötigt werden, um dich im Falle einer rechtswidrigen Tat zurückverfolgen zu können bzw. permanent oder temporär aus dem Forum ausschließen zu können. Es besteht keine Pflicht zur Abgabe der Einwilligung, dies erfolgt alles auf freiwilliger Basis.   Zusatzinformationen Der Forenbetreiber hat das Recht, Nutzer ohne Angabe von Gründen permanent aus dem Forum auszuschließen. Des Weiteren hat er das Recht, Beiträge, Dateianhänge, Umfrage, Blogeinträge, Galleriebilder oder Signaturen ohne Angabe von Gründen zu entfernen. Mit der Registrierung verzichtest du auf alle Rechte an den von dir erstellten Inhalten, bzw. treten diese an das Unity-Insider.de und Unity-Community.de ab. Dies bedeutet im Klartext, dass das Unity-Insider.de und Unity-Community.de frei über deine Texte verfügen kann, sofern diese nicht wiederum die Rechte anderer verletzen. Es besteht weiterhin kein Anspruch von registrierten Nutzern bzw. ehemaligen registrierten Nutzern darauf, dass erstellte Inhalte und/oder die Mitgliedschaft (User) wieder gelöscht werden (Erhaltung der Konsistenz dieses Forums).   Einwilligungserklärung Wenn du mit der Speicherung deiner personenbezogenen Daten sowie den vorstehenden Regeln und Bestimmungen einverstanden bist, kannst du mit einem Klick auf den Mit der Registrierung fortfahren-Button unten fortfahren. Ansonsten drücke bitte Zurück. Stand: 07.03.2011

GelegenheitsProgrammierer

Members
  • Content count

    159
  • Joined

  • Last visited

Community Reputation

21 Excellent

About GelegenheitsProgrammierer

  • Rank
    Advanced Member
  • Birthday 11/26/1994

Profile Information

  • Gender
    Male
  • Location
    Köln
  • Interests
    Ich programmiere jetzt ca. seit 2 Jahren in C#, warum weil ich C# für sehr benutzerfreundlich halte und für mich als Dummerchen wie gemacht ist.
    Weil ich schon immer selbst ein Spiel entwickeln wollte hab ich mit programmieren angefangen und Sudiere auc momentan Informatik in Gummersbach. Ich bin einer der bei einer Idee drauf los programmiert, das Projekt nach einer gewissen Zeit einstellt und dann später wieder auspackt um weiter zu entwickeln. Warum ich die Projekte unterbreche, nach einer Pause hat man auf probleme einen ganz anderen blickwinkel und kann sie plötzlich lösen wo man sich vorher den Kopf eingerannt hat.

    Sonst spiele ich noch Vollyball, Magic, Pen und Paper Rollenspiele und lese viel Fantasybücher weshlab ich großer RPG fan bin
  1. Was ist Spieleentwicklung?

    Für mich ist Spieleentwicklung, eine Spielidee umsetzen. Wie man das macht, ob alles selbst modelliert oder gecodet oder aber zusammengekauft macht da erst mal kein unterschied, solange es am Ende spaß macht. Ich denke je nachdem wie du dich entscheidest das Spiel zu entwickeln hat man halt mehr oder weniger Freiheiten. Ich mein es gibt ja in der Entwicklung viele verschiedene Aufgaben/Jobs. Die typischen sind der Grafiker und der Programmierer aber es gibt noch jede Menge mehr. Also dein Part währe, wenn ich das richtig verstehe, der Gamedesigner, also der sich gedanken über den Inhalt des Spiels macht. Also schlechtes Gewissen weil du deine "Schwächen" mit fertigen "Bauteilen" ausgleichst brauchst du nicht zu haben.
  2. Auto-Aim-Turret-Problem

    So ich hab das Problem jetzt endlich lösen können, wenn man draufkommt ist es gar nicht so schwer. Naja Danke dir erst mal Sascha. Irgendwie hat das was du Vorgeschlagen hast nicht funktioniert oder ich hatte deine Idee nicht gerafft(wahrscheinlicher). Hier mal mein Code, wie es jetzt funktioniert. public class TurretContr : MonoBehaviour { //Geschwindigkeit der Drehung public float RotateSpeed = 3.0f; //Das Target was anvisiert werden soll public GameObject activeTarget; //Die Zielerfassung public GameObject TargetAcquisition; //Die Basis des Turms public GameObject Base; //Min und Max rotation des Turm auf der y achse public Vector2 BaseMinMax; //Waffe des Turms public GameObject Weapon; //Min und Max rotation der Waffe auf der x Achse public Vector2 WeaponMinMax; //Temporäre rotation zu Ziel private Quaternion AcquisitionRotation; // Update is called once per frame void Update() { RotateTargetAcquisition(); OrientateTurret(); } void RotateTargetAcquisition() { //Debug.Log(Base.transform.localEulerAngles + " / " + Weapon.transform.localEulerAngles + " / " + TargetAcquisition.transform.localEulerAngles); //Um die Richtung des Targets als Quaternion zu bekommen AcquisitionRotation = Quaternion.LookRotation(activeTarget.transform.position); //Annähern des Targets AcquisitionRotation = Quaternion.RotateTowards(TargetAcquisition.transform.rotation, AcquisitionRotation, RotateSpeed * Time.deltaTime); //Die Rotation setzen TargetAcquisition.transform.localEulerAngles = AcquisitionRotation.eulerAngles; //Die Rotation begrenzen TargetAcquisition.transform.localEulerAngles = new Vector3(ClampEulerAngle(TargetAcquisition.transform.localEulerAngles.x, WeaponMinMax.x, WeaponMinMax.y), ClampEulerAngle(TargetAcquisition.transform.localEulerAngles.y, BaseMinMax.x, BaseMinMax.y), 0); } /// <summary> /// die Modelle Ausrichten /// </summary> void OrientateTurret() { Base.transform.localEulerAngles = new Vector3(0,TargetAcquisition.transform.localEulerAngles.y,0); Weapon.transform.localEulerAngles = new Vector3(TargetAcquisition.transform.localEulerAngles.x, 0,0); } /// <summary> /// Clampfunktion für eulerangles /// </summary> /// <param name="_angle"></param> /// <param name="_min"></param> /// <param name="_max"></param> /// <returns></returns> float ClampEulerAngle(float _angle, float _min, float _max) { float tempAngle = _angle; if(_angle < 180) { tempAngle = Mathf.Clamp(tempAngle,0,_max); } else { tempAngle = Mathf.Clamp(tempAngle, 360 - _min, 360); } return tempAngle; } } Hoffe es kann jemanden helfen.
  3. Auto-Aim-Turret-Problem

    Ok danke werde ich mir gleich nach dem Essen anschauen. Sieht interessant aus
  4. Auto-Aim-Turret-Problem

    Hallo Leute, lange her das ich mich hier mal blicken lassen hab. Doch jetzt bäuchte ich mal wieder eure Hilfe. Das problem ist folgendes: Ich möchte gerne einen Auto-Aim-Turret haben(die überschrift verrät es ja schon). Dieser soll eine Reichweite haben, was ich mit einem Collider machen möchte und soll sich Ziele rauspicken die er dann anvisiert. Nun da ich hier erst mal nicht das Problem für mich sehe, interessiert und das erst mal nicht. Mein Tower ist wie folgt auf gebaut. Ich habe denTurm als model und dann noch die Kanone bzw die waffe. Die waffe ist ein Child von dem Turm. Soweit so gut. Nun möchte ich da der Turm ein einzelnes Testziel anvisiert. Ich hab das erst mal so gelöst. public float speed = 3.0f; GameObject m_target; Vector3 m_lastKnownPosition = Vector3.zero; Quaternion m_lookAtRotation; // Update is called once per frame void Update () { if(m_target){ if(m_lastKnownPosition != m_target.transform.position){ m_lastKnownPosition = m_target.transform.position; m_lookAtRotation = Quaternion.LookRotation(m_lastKnownPosition - transform.position); } if(transform.rotation != m_lookAtRotation){ transform.rotation = Quaternion.RotateTowards(transform.rotation, m_lookAtRotation, speed * Time.deltaTime); } } } War jetzt erst mal nicht so schwer. Nun wollte ich das der Turm sich nur auf der Y-axe gedreht wird und die Kanone auf der x-Axe. Auch das hab ih relativ unschön gelöst bekommen aber es mehr oder weniger genau geklappt. Doch dann bin ich weiter gegangen, denn ich will den Turret begrenzen, was den Drehwinkel angeht. Und genau da liegt jetzt mein Problem, den alles was ich ausprobiert. Ich hab mir gedacht das mit clamp zu tun doch bei Quaternion ist das so ne sache. Mir kommt es so vor das der Ansatz den ich gewählt habe für mein Problem nicht wirklich geignet ist. Meine Frage ist hättet ihr da ne mögliche Lösung oder andere Ansätze. Die ergebnisse meiner Google suche waren eher schwammig und führen auch nicht immer zum Ergebnis. Hoffe ich konnte mein Problem deutlich darstellen und ihr könnt mir weiterhelfen. Mit freundlichen Grüßen Gelegenheitsprogrammierer
  5. Neu in Unity, Feinde erzeugen, Feinde Schaden zufügen, Konstruktoren

    Hier noch ein paar Dinge die helfen könnten. Schau dir Mal Trigger an. Mit denen solltest du einfacher zurechtkommen um Feinde in der Nähe zu finden. Und getComponent sollte dir beim Zugriff auf deine Scripte dann helfen. Hoffe es hilft weiter
  6. Das Material genau unter dem Raycast bekommen

    Hi Leute, ich hatte über Weihnachten ein bisle Zeit wieder, was zu programmieren. Nun hab ich folgendes Problem. Ich hab eine fliegende Insel mit verschiedenen Materials. Nun möchte ich Random verteilt auf dieser Insel Objekte plazieren wie Bäume etc. Wie auch immer, diese Punkte bekomme ich mit einem RaycastHit. Doch das Problem ist wie bekomme ich das Material von dem Hit. Hoffe ihr hab einen Lösungsansatz. Wenn ihr den Code haben wollt sagt bescheid. MFG Felix
  7. Trigger und Damage

    Drücke mal in der Konsole clear, könnte sein das der noch die alten Fehlermeldungen drinnen hat. Oder schmeiß den alten kram aus dem Script raus wenn der noch nicht raus ist.
  8. Trigger und Damage

    Ich weiß es gerde nicht komplet auswendig public void OnTriggerEnter(Collider other) { if (other.gameObject.CompareTag("Player")){ other.gameObject.GetComponent("PlayerHealth").TakeDamage(100); } Irgend wie so war das, wenn ich mich nicht irre
  9. Trigger und Damage

    Wie wärs den wenn du über other die abfrage machst ob das der Spieler ist und ihm dann direkt über getComponent den Schaden reindrückst ? Und noch ne frage. Was genau soll das obere Script tun, also wenn das für ne Kugel ist die auf den Spieler trifft würde es nicht Sinn machen die OnTrigger funktion beim Spieler reinzubasteln ??
  10. GameObjects kopieren

    prefab[i] = (GameObject)Instantiate(field, new Vector3(i * 2.0F, 0, 0), Quaternion.identity); prefab[i] = Instantiate(field, new Vector3(i * 2.0F, 0, 0), Quaternion.identity) as GameObject; versuch mal ein von den beiden dann sollte die Fehlermeldung verschwinden, wenn es die ist, an die ich denke.
  11. GameObject platzieren

    Ich Schätze mal das das Script an den Objekten selber hängt ?
  12. GameObject platzieren

    Naja mit erstellen meinst du natürlich das es dann an dem Ort platziert wird und nicht mehr von der Maus verschoben werden kann, war etwas unglücklich formuliert wenn du das meinst. Wenn du auf deinen Button drückt, erstelltst du ein Gameobject(ich nenn es jetzt einfach mal Cube ersatzweise). Dieser bekommt jedes Update die Position deiner Maus übermittelt. So das der Cube immer da ist wo deine Maus ist. Wenn du jetzt die Mouse los lässt mit GetMouseButtonUp(), musst du einfach in dein GameObject verweis in deinen Script "Null" schreiben. Bei dir wäre das gObject glaub ich also musst du einfach gObject = null; schreiben. Probier das mal. Was vielleicht auch helfen könnte ist das video Das sollte deinem Problem recht ähnlich kommen MFG GelegenheitsProgrammierer
  13. Netzwerk Anfänger ratlos

    Dem würd ich aber auch zustimmen
  14. Welche Pathfinding Lösung?

    In diesem Tutorial wird dir gezeigt wie du ein einfachen A* Algo schreibst und nutzt also, könntest du dir das Pathfinding selber basteln und dann auf deine anforderungen Optimieren.
  15. C# Bücher für Einsteiger gesucht

    Das ist auch nicht übel
×