-
Content count
440 -
Joined
-
Last visited
-
Days Won
11
HortusLongus last won the day on September 18 2017
HortusLongus had the most liked content!
Community Reputation
72 ExcellentAbout HortusLongus
-
Rank
Advanced Member
- Birthday 12/15/1949
Profile Information
-
Gender
Male
-
Location
CH-Neuenhof
-
Interests
Alles und noch viel mehr. :-)
-
Moin. 🙂 Das Unity-Asset-Pack ist fertig, und ein paar Games liegen auch noch obendrauf; viel preiswerter geht es wohl nicht, viel Spaß: https://www.humblebundle.com/games/unity-bundle?hmb_source=humble_home&hmb_medium=product_tile&hmb_campaign=mosaic_section_1_layout_index_1_layout_type_twos_tile_index_1
-
Hi, Philip. Der Sprung von Position 1 zu Position 2 beim ersten Tastendruck hängt damit zusammen, daß du den Cosinus nicht für die richtige Stelle berechnest. Und das Problem mit der richtigen Drehung löst der Befehl "LookAt(...)".
-
>> Oh man... Also auch noch im Unity Source rumzupfuschen da komm ich mir nicht sehr... konfident vor Ist doch nur der UNet-Code, und du kommst in den Zeugenschutz. ;-) >> Reicht es denn wirklich aus wenn ich das mittels Vererbung löse? Probiers aus, hängt von deinem Code ab. Das ist doch das Grundprinzip, wenn du ein Programm entwirfst: ne Idee entwickeln, diese in eine Programmiersprache zwängen und testen. >> Du weißt ja wie das ist, wenn du dir mal den Code ansiehst den du vor 4 Jahren geschrieben hast und du denkst "Gott was hab ich damals fürn Mist verzapft" XD Nöö, hatte ich die letzten 30 Jahre nicht mehr wirklich. ;-)
-
Hi. >> willst du damit sagen, dass man inzwischen generische Klassen übers Netzwerk senden kann? Jaein. :-) Ich kann das, weil ich den Code entsprechend angepaßt habe. Was das spezielle Problem bei dir ist, kann ich nicht sagen, ich sehe den Code ja nicht. Mit deinem De-/Serialisierungshinweis kannst du recht haben, UNet zickt da manchmal rum; versuch einfach mal. Oder ent-generifiziere :-) deine Klassen vielleicht erst einmal nach dem Muster: "public class testword : test<word>", damit sollten einige Probleme gelöst sein. >> Ich hab das letzte mal mit Networking unter Unity 4.x gearbeitet ... UNet hat so gut wie nix mehr damit am Hut, es ist Klassen besser geworden. Das Problem ist, es arbeiten mehrere Gruppen unabhängig voneinander daran weiter, und die mehr oder weniger "federführende" Gruppe ist leider weder die flotteste noch die geschickteste, die haben auch kein Problem damit, ab und zu mal wieder zurückzufeaturen. :-( UNet ist kein Kind mehr, es ist gewachsen, aber nicht mal halbstark, das sollte man auch immer im Hinterkopf haben. >> Oder warum hast du mir den Source geschickt? Naja, wenn ein Programm nicht das macht, was ich möchte und ich seinen Sourcecode habe, passe ich den eben entsprechend an. Das ist schon alles.
-
Vielleicht hilft dir OnEnable() weiter?
-
Hi. Eigentlich bringt C# von sich aus alles mit, um solche "Probleme" ;-) zu lösen. Du kannst sogar Scripts während der Laufzeit neu erstellen oder ändern; bestimmen, ob nur im Speicher kompiliert wird oder den neuen Code in eine Datei schicken usw.; du kannst auch Inline-Code "injizieren". Und natürlich kann man auch Code, der mit den Variablennamen "m, o, f, i, h, m1" läuft, verändern und testen, ob er auch mit den Variablennamen "meine, oma, faehrt, im, huehnerstall, motorrad" funktioniert. Falls es dich interessiert, schau dir mal die Klassen "CodeDomProvider" und "CSharpCodeProvider" an.
-
Hi. Ich glaube, du gehst da zu kompliziert ran. Guck dir mal in Ruhe den Sourcecode an, da kannst du ausreichend anpassen.
-
Einschätzung zur generellen Machbarkeit einer Spielidee
HortusLongus replied to creativeConny's topic in Allgemeine Hilfe
>> ist das eine deutliche Komplexitätssteigerung oder in einer rudimentären Ausbaustufe noch einfach umsetzbar? Das Erstere. Multiplayer wird gern unterschätzt und dann landen auch gute Ideen oftmals im Papierkorb. Aber Unity hat sich diesbezüglich mittlerweile auch deutlich verbessert. Und ich hab dir mal was rausgesucht, das dir einen kleinen Einblick darüber verschaffen kann. Ich weiß nicht, wie gut es ist, weil wir sowas selbst schreiben, aber zum "MalReinGucken" wird es wohl taugen. -
Einschätzung zur generellen Machbarkeit einer Spielidee
HortusLongus replied to creativeConny's topic in Allgemeine Hilfe
Hi. Das bekommst du innerhalb Unity ohne Probleme hin. Du baust vier Szenen, drei davon sind je eines deiner Minispiele. Die vierte Scene ist dann der Konferenzraum, dazu genügt eigentlich einfach ein GUI, das als Sceneswitcher fungiert. Du findest sogar kostenlose Beispiele im Assetstore, hier nur mal ein Beispiel für den Anfang. Das bekommst du in der Zeit locker hin, viel Erfolg. -
Eine dicke fette Liste mit Vorschlägen für mehrere 100 guten Unity-Free-Tools: http://www.procedural-worlds.com/blog/best-free-unity-assets-categorised-mega-list/
-
-
1
-
- Report
-
Na ja, vielleicht sind meine Ansprüche einfach zu hoch, wenn ich denke, daß bei der Antwort von jemandem, der ne Moderator-Binde trägt, schon eine gewisse Sorgfalt vorhanden sein sollte. Nebenbei, array.findall gabs schon bei Basic 3. Aber laß uns den Kram einfach beenden.
-
Na ja, liest du deine eigenen Postings nicht? :-) Du hast doch in deiner ersten Antwort gleich einen möglichen Ansatz vorgeschlagen; bei dem ist mir allerdings aufgefallen, daß du dabei Sortierverrenkungen machst, die gefühlt schon zu Zuses Zeiten veraltet waren und mehr Basic sind als C#. Folgt man deinem Ansatz, schiebt man 1.) Kojotes zahlenArray in ein Array.Sort(), das man dann 2.) Array.FindAll() übergibt mit der Bedingung x==x.nachbar; schwupps, fertig. Das ist ein Zweizeiler. Wo siehst du ein Problem? Cu, Horst.
-
"Kenne ich nicht" soll ja ein Problem sein, das man abstellen kann, habe ich gehört. ;-) Mal eine Lösung mit FindAll, die dir das erklärt, direkt aus der Microsoft-Hilfe übernommen: using System; using System.Collections.Generic; public class Example { public static void Main() { // Get an array of n random integers. int[] values = GetArray(50, 0, 1000); int lBound = 300; int uBound = 600; int[] matchedItems = Array.FindAll(values, x => x >= lBound && x <= uBound); for (int ctr = 0; ctr < matchedItems.Length; ctr++) { Console.Write("{0} ", matchedItems[ctr]); if ((ctr + 1) % 12 == 0) Console.WriteLine(); } } private static int[] GetArray(int n, int lower, int upper) { Random rnd = new Random(); List<int> list = new List<int>(); for (int ctr = 1; ctr <= n; ctr++) list.Add(rnd.Next(lower, upper + 1)); return list.ToArray(); } } // The example displays output similar to the following: // 542 398 356 351 348 301 562 599 575 400 569 306 // 535 416 393 385
-
Und wenn man array.Find() bzw. array.FindAll() bzw. array.FindLast() bzw. array.FindIndex() bzw. array.FindLastIndex() benutzen würde, würde man sogar erleben, wie bequem und flott sowas zu lösen ist. ;-)
-
Wenn du bereit bist, das ein ganz klein wenig ;-) aufzubohren, findest du hier einen sicheren Weg.