Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

1 591

29.07.2018, 13:56

Auf die Android Portierung freue ich mich tatsächlich. Soweit sieht das Spiel ganz spaßig aus :)
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Schrompf

Alter Hase

Beiträge: 1 470

Wohnort: Dresden

Beruf: Softwareentwickler

  • Private Nachricht senden

1 592

16.08.2018, 22:10

Ich habe für die kleine GameJam ZfxAction letztes Wochenende ein Spiel basierend auf einem Point Cloud Renderer programmiert. Im Endeffekt habe ich kein echtes Gameplay hinbekommen, aber mit der Technik bin ich sehr zufrieden.

a) Ich wollte mal einen Aliasing-freien Renderer ausprobieren. Die Grafikkarte und alle anderen mir bekannten Renderer berechnen den Farbwert für die Pixelmitte, oder im Falle von Multisampling für eine niedrige Anzahl Samples über die Pixelfläche verteilt. Ich dachte mir aber, dass für simple Formen das Flächenintegral doch analytisch lösbar sein müsste. Man sollte also exakt ausrechnen können, wieviel Fläche des Pixels eine Grundform überdeckt. Ursprünglich wollte ich Kreise als Punktform benutzen, aber es stellte sich heraus, dass das Integral hässliche asin() und sqrt()-Funktionen enthielt. In der Demo sind die Punkte jetzt ganz plump quadratisch, was sich recht fix ausrechnen lässt.

Die Wirkung: ein extrem ruhiges, absolut flickerfreies Bild selbst bei Hunderttausenden von Punkten, die nur Bruchteile eines Pixels groß sind.

b) ich habe den Renderer mit Hilfe meines Fiber-basierten Jobsystems auf Boost.Context-Basis weitesgehend parallelisiert. Ich habe zum Beispiel die Punkte nach Tiefe sortieren müssen und habe dafür eine Art parallelen Bucket-Sort implementiert, der auf 4+4 Kernen eine Million Punkte im niedrigen einstelligen Millisekundenbereich ordnet. Ich habe es leider nicht nachgemessen oder gegen std::sort() antreten lassen, das muss ich mal noch machen.

Echtes Gameplay werde ich wahrscheinlich nicht mehr einbauen, aber ich will das eigentliche Rendering noch klug parallelisieren und möchte eigentlich auch noch ne etwas rundere Punktform erproben. Wenn ich die Punktform rund bekäme, könnte ich den Renderer vielleicht auch in nem Compute Shader implementieren und in meinem VoxelSurvival-Projekt verwenden.

Wenn ihr das selbst angucken wollt, könnt ihr http://www.splitterwelten.info/privat/act5.zip runterladen. Umschauen mit der Maus, WASD oder Pfeiltasten zum Bewegen, Shift zum Sprinten, und Plus/Minus auf dem Ziffernblock zum Wechseln der Auflösung.

Bilder - Klick für Groß:
http://www.splitterwelten.info/privat/act5_1.png
http://www.splitterwelten.info/privat/act5_2.png

Die Bilder sind übrigens alle im Bereich von 30kb - keine Ahnung, was das Forum hier jammert.
Häuptling von Dreamworlds. Baut aktuell an nichts konkretem, weil das Vollzeitangestelltenverhältnis ihn fest im Griff hat. Baut daneben nur noch sehr selten an der Open Asset Import Library mit.

Wirago

Alter Hase

Beiträge: 1 193

Wohnort: Stockerau

Beruf: CRM Application Manager

  • Private Nachricht senden

1 593

06.09.2018, 22:13

Nach der Sommerpause geht es auch bei uns weiter. Probieren derzeit ein wenig an einer Art Fallenplatzierung herum. Die Idee ist vielleicht nicht neu, aber es funktioniert.

Martin Mundorf

Treue Seele

Beiträge: 262

Wohnort: Waldorf, Kr. Ahrweiler

Beruf: Althistoriker

  • Private Nachricht senden

1 594

17.09.2018, 19:55

Hallo zusammen :)

abgeleitet von meinem doch eher grottigen Auto (siehe Testversion im Thread), hab ich mich mal an eine "knuffig" wirkende Tankette gewagt.
Auch wenn ich die letzten Tage sehr viel über Bezier-Kurven und Hinge-Joints gelesen habe: Ein c# Script für unity, damit die Ketten sich drehen, war nirgendwo zu sehen. Und die ganzen Youtube-Tutorials zeigen entweder nur das funktionierende Ergebnis,oder wieman in Blender(!) die Ketten erstellt. mein Problem liegt aber genau dazwischen.

Jedenfalls: Aussehen und fahren tut das kleine Ding schonmal ganz passabel :)
»Martin Mundorf« hat folgendes Bild angehängt:
  • tankette_11.png
"Eine Signatur ist das Buchstaben-Zahlen-Zettelchen unten an ein einem Buch in der Bibliothek!"



was ich zur Zeit ausprobiere: 3rd person Shooter <- hierfür suche ich noch Unterstützung.


"Lehrjahre": Im Lande der Hasen
mein ewiges Spielprojekt "Straights & Rows".
meine Grafiken "ohne Verwendungszweck"

Goldwing Studios

Treue Seele

Beiträge: 359

Wohnort: Heidelberg

Beruf: Softwareentwickler, Vertriebler

  • Private Nachricht senden

1 595

18.09.2018, 09:12

früher in der Engine 3D GameStudio konnte man in Models die Animationsschritte durchspielen/durchlaufen.

Geht das auch in Unity?

oder du fummelst da einen Bone pro Kette rein und kannst dann ja den Bone individuell vom Model bewegen.

Oder sind das schon veraltete Techniken?

Martin Mundorf

Treue Seele

Beiträge: 262

Wohnort: Waldorf, Kr. Ahrweiler

Beruf: Althistoriker

  • Private Nachricht senden

1 596

18.09.2018, 15:51

natürlich kann man in unity auch Animationen machen, aber da müßte ich 35 Ketten von Hand verschieben und rotieren!das ist mir was zu aufwendig.
Es gibt auch die Möglichkeit das irgendwie mit Joints (hinge in dem Falle) zu lösen, aber da bin ich noch nicht weitergekommen.

meine Ursprüngliche Idee war, die Kettenglieder entlang einer bezier-Kurve zu führen (mittels time.deltatime * speed). Und diese Kurve ergibt sich aus dem Vektor-Array derKettenglieder zum Start, bzw. was die Rotation betrifft aus dem Quaternion-Array bei Spielbeginn.
allerdings bin ich auch da noch nicht weiter gekommen.

Es gibt wohl externe Helferprogramme für 26,80$ im Asset Store, die extra für Raupenfahrzeugsketten gemacht sind. Aber da ich ja keinen Superpanzer bauen will, sondern lediglich diese Tankette (und ggf. einen landwirtschaftlichen Schlepper für meine Spielfigur "Weitwinkel"), würde mich auch ne 0-8-15 Methode reichen...

C#-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
void Start ()
    {
        foreach (GameObject g in kettenglieder )
        {
            Posi.Add(g.transform.localPosition);
            quaties.Add(g.transform .localRotation);
        }
        legos = speed ;
    }
    
    
    void Update ()
    {
       //
       bewegung
}


    void bewegung()
    {
        
      //  Debug.Log(kettenglieder.Length);

        for (int i = 0; i < kettenglieder.Length; i++)
        {
            step = speed * Time.deltaTime;

        
            if (i < kettenglieder.Length - 1)
            {
                kettenglieder[i].transform.localPosition = Vector3.MoveTowards(transform.position, Posi[i + 1], step);

                kettenglieder[i].transform.localPosition = Posi[i + 1];// kettenglieder[i + 1].transform.localPosition;
                                                                       // kettenglieder[i].transform.localRotation = Quaternion.Euler(Posi[i + 1]);
                                                                       //   kettenglieder[i].transform.localRotation = Quaternion.Euler(kettenglieder[i + 1].transform.localRotation.x, kettenglieder[i + 1].transform.localRotation.y, kettenglieder[i + 1].transform.localRotation.z);
                kettenglieder[i].transform.localRotation = quaties[i + 1];
                
            }
            else
            {
                kettenglieder[i].transform.localPosition = Vector3.MoveTowards(transform.position, Posi[0], step);
                //  kettenglieder[i].transform.localPosition = Posi[0]; //kettenglieder[0].transform.localPosition;
                // kettenglieder[i].transform.localRotation  = Quaternion.Euler(kettenglieder[0].transform.localRotation.x, kettenglieder[0].transform.localRotation.y, kettenglieder[0].transform.localRotation.z);//Quaternion.Euler(Posi[0]);
                kettenglieder[i].transform.localRotation = quaties[0];
                
            }
            
        }
    }
"Eine Signatur ist das Buchstaben-Zahlen-Zettelchen unten an ein einem Buch in der Bibliothek!"



was ich zur Zeit ausprobiere: 3rd person Shooter <- hierfür suche ich noch Unterstützung.


"Lehrjahre": Im Lande der Hasen
mein ewiges Spielprojekt "Straights & Rows".
meine Grafiken "ohne Verwendungszweck"

1 597

18.09.2018, 17:25

Aber da ich ja keinen Superpanzer bauen will, sondern lediglich diese Tankette (und ggf. einen landwirtschaftlichen Schlepper für meine Spielfigur "Weitwinkel"), würde mich auch ne 0-8-15 Methode reichen...

In dem Fall hätte ich folgende Ideen (auch wenn ich mit Unity selber noch keine Erfahrung gesammelt habe):
(1) Statt die Kette bewegen zu lassen, könntest du auch einfach die Textur über die Meshs schieben.
(2) Ähnlich wie Punkt 1, aber etwas anders: die Kette in ihre einzelnen Glieder unterteilen und die Textur dann von Glied zu Glied springen lassen.
(3) Für die einzelnen Glieder relative Koordinaten setzen und das in mind. 3 Positionen, wenn jedes Kettenglied die selbe Textur besitzt oder in mind. 2 Positionen, wenn der Spieler die Drehrichtung an den unterschiedlichen Texturen für jedes Glied erkennt.
(4) Ein Diagramm mit allen relativen Koordinaten der Kette erstellen und die Position der einzelnen Kettenglieder dann mithilfe der Geschwindigkeit und des Graphen berechnen.

Sicher nicht die besten Methoden, aber danach hast du ja auch nicht verlangt. :)

Beiträge: 4

Wohnort: Bayern

  • Private Nachricht senden

1 598

19.09.2018, 13:17

Hey ihr alle ^w^

Huhu!
Bin neu hier. °^° *Standardspruch - check*
Mein Name ist Janine, 25 und aktuell arbeite ich mit dem RpgMaker MV an 2 Projekten.
Bzw. habe ich mein Großprojekt aktuell pausiert und arbeite an einem Projekt im psychological/atmospheric Horror-Genre, welches ich euch damit auch vorstellen möchte. ^w^

Der Name des Projekts ist "Dollmakers Darling" und habe vor einigen Tagen auch eine Demo davon rausgebracht.

Ich will ein Spiel ohne übersteuerte Jumpscares bieten, sondern mit viel Atmosphäre und tollem Soundtrack.
Wenn es also Jumpscares gibt, sind diese nicht beabsichtigt.

Bei Interesse verlinke ich auch gern die Demo vom Spiel. :3

Ich freu mich sehr auf Feedback und einen tollen Austausch! :D
»StarfunpixelGames« hat folgende Bilder angehängt:
  • !ground31.png
  • Unbenannt.png
  • !ground32.png
  • Szene Dollhands.png
  • !ground16.png

Lares

1x Contest-Sieger

  • Private Nachricht senden

1 599

20.09.2018, 14:00

@StarfunpixelGames
Willkommen im Forum. Die Screenshots sehen gut aus und die Perspektive ist auch mal was anderes zu den üblichen RPG Maker Projekten.
Der Vorsatz mit den Jumpscares gefällt mir :)

Beiträge: 4

Wohnort: Bayern

  • Private Nachricht senden

1 600

20.09.2018, 20:32

Danke dir! ^w^
Ich versuche tatsächlich auch, dass man den Maker so wenig wie nur möglich sieht (im Bestfall gar nicht).
Freut mich sehr, wenn ich es auch schaffe, dass es eben nicht nach 08/15-Makergame aussieht für andere. ^^

Werbeanzeige