AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Eigenes 3D MMORPG mit Delphi möglich?

Ein Thema von Zudomon · begonnen am 8. Dez 2011 · letzter Beitrag vom 2. Mär 2021
Antwort Antwort
Zudomon

Registriert seit: 14. Feb 2007
84 Beiträge
 
Turbo Delphi für Win32
 
#1

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 29. Mär 2015, 18:03
Vielen Dank für das Lob!
Aber ich muss sagen, die Sounds/Musik und die Texturen stammen ja von externen Quellen...
Was den Regen anbelangt, ja, es trocknet mit der Zeit wieder weg, sonst wäre ja blöd wenn einmal nass immer nass wäre
Allerdings funktioniert das alles noch nicht wie gewünscht, da es auch in Gebäude/Höhlen rein regnet.
  Mit Zitat antworten Zitat
Zudomon

Registriert seit: 14. Feb 2007
84 Beiträge
 
Turbo Delphi für Win32
 
#2

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 30. Mär 2015, 19:26
Prozedurale 3D Pilze!

20150329_1.jpg20150329_2.jpg20150329_3.jpg
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.358 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 30. Mär 2015, 20:06
Ok, Du provozierst ja geradezu eine Nachfrage:

Wie sieht denn so eine Prozedur ganz grob aus?

prozedure DefinierePilz;
begin
Definiere 1000 Dreiecke aus einem Array von Punkten als Gittermodell aber immer zufällig etwas anders.
ÜberzieheDasModellMitEinerHaut;
end

Und das Ergebnis speicherst in Records, nicht in Objekten? Hatte ich das so richtig verstanden?
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Zudomon

Registriert seit: 14. Feb 2007
84 Beiträge
 
Turbo Delphi für Win32
 
#4

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 30. Mär 2015, 20:21
Bisher ist da noch kein Zufall mit drin... d.h. es wird wirklich nur ein einziges Objekt erstellt.
Das Ergebnis wird hinterher in ein Geometrieobjekt umgewandelt und zum Rendern bereitgestellt.
TGeoBase ist in der Tat ein Record. Unterdessen benutze ich aber schon einige Klassen.

Delphi-Quellcode:
function crtMushroom: TGeoBase;
var
  i, i2, j: Integer;
  lp: Integer;
  c: TVecArray;
  cc: Integer;
  s: Integer;
  m: TMatrix;
  v: TVec;
  gb, gb2: TGeoBase;
begin
  Result.Clear;

  s:=16;

  SetLength(c, 7);
  c[0]:=Vec(0,-0.1,0);
  c[1]:=Vec(-0.15,0,0);
  c[2]:=Vec(-0.175,0.15,0);
  c[3]:=Vec(-0.225,0.4,0);
  c[4]:=Vec(-0.175,0.8,0);
  c[5]:=Vec(-0.15,1.2,0);
  c[6]:=Vec(-0.15,1.3,0);

  gb.Clear;
  gb.Modifier_ExtrudeLattice(c, s);
  gb.Modifier_TransformTex0(MatOff(MatScl(0.99), Vec(0.5, 0.5)));
  gb.Modifier_MapAtlas(2, 2, 1, 0);
  gb.Modifier_SmoothGrp(1);
  Result.add(gb);

  SetLength(c, 4);
  c[0]:=Vec(-0.15,1.3,0);
  c[1]:=Vec(-0.16,1.3,0);
  c[2]:=Vec(-0.6,1.3,0);
  c[3]:=Vec(-0.9,0.9,0);

  gb.Clear;
  gb.Modifier_ExtrudeLattice(c, s);
  gb.Modifier_TransformTex0(MatScl(1,0.02,1));
  gb.Modifier_SmoothGrp(2);
  gb.Modifier_TransformTex0(MatOff(MatScl(0.99), Vec(0.5, 0.5)));
  gb.Modifier_MapAtlas(2, 2, 0, 1);
  Result.add(gb);

  SetLength(c, 4);
  c[0]:=Vec(-0.9,0.9,0);
  c[1]:=Vec(-0.8,1.3,0);
  c[2]:=Vec(-0.3,1.6,0);
  c[3]:=Vec( 0.0,1.6,0);

  gb.Clear;
  gb.Modifier_ExtrudeLattice(c, s);
  gb.Modifier_SmoothGrp(4);
  Result.add(gb);

  Result.Modifier_Weld(lt_Position);
  Result.Modifier_Subdivide(1, true, false);
  Result.Modifier_Noise2(MatScl(1,0.2,1), Vec(0.5,1,0.5)*0.5, 4);
  Result.Modifier_Subdivide(1, true, false);

  gb_Sel:=st_Intersect;
  lp:=Result.FindLayer(lt_Position);
  Result.Layer[lp].SelP_Clear;
  Result.Layer[lp].SelP_ByGrp(4);

  gb:=CutGeoBase_SelP(Result);
  gb.Modifier_MapPlanar(MatScl(0.59)*MatRotX(pi/2)*MatPos(0.5, 0.5, 0));
  gb.Modifier_MapAtlas(2, 2, 0, 0);
  Result.add(gb);

  SetLength(c, 3);
  c[0]:=Vec( 0,1.0,0);
  c[1]:=Vec(-0.3,0.95,0);
  c[2]:=Vec(-0.45,0.7,0);

  gb.Clear;
  gb.Modifier_ExtrudeLattice(c, s);
  gb.Modifier_SmoothGrp(1);

  SetLength(c, 3);
  c[0]:=Vec(-0.45,0.7,0);
  c[1]:=Vec(-0.3,0.95,0);
  c[2]:=Vec( 0,1.05,0);

  gb2.Clear;
  gb2.Modifier_ExtrudeLattice(c, s);
  gb2.Modifier_SmoothGrp(2);
  gb.add(gb2);

  gb.Modifier_TransformTex0(MatScl(1,0.02,1));
  gb.Modifier_Weld(lt_Position);
  gb.Modifier_Subdivide(1, true, false);
  gb.Modifier_Noise2(MatScl(3), Vec(0.5,1,0.5)*0.5, 4);
  gb.Modifier_Subdivide(1, true, false);
  gb.Modifier_TransformTex0(MatOff(MatScl(0.99), Vec(0.5, 0.5)));
  gb.Modifier_MapAtlas(2, 2, 0, 1);

  Result.add(gb);
end;
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.534 Beiträge
 
Delphi 12 Athens
 
#5

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 30. Mär 2015, 21:31
Ich glaub ich hatte anfangs mal sowas wie Pilze gesehn (die kleinen roten Knubbelchen) ... bevor ich wusste, daß man Essen muß.

Aber nach meinem ersten Tot, hab ich nie wieder welche gesehn.



Auf'm Ultrabook, im Energiesparmodus, war es aber nicht spielbar. (hatte es anfangs fast vergessen, da der Modus für's normale Leben ausreicht) ... 1-2 FPS.
Eine etwas bessere Graka sollte man also schon benutzen.

Witzig ist, daß der Sound schon abgespielt wird, kurz nachdem die Sounddatei erst angefangen hatte sich runterzuladen.


Es wäre nett, wenn man irgendwo die Maus umgrehen könnte.
Ich kann sorum einfach nicht und drehe mir die Maus immer um, also Hoch und runter.
Das war schon mit Maus so, aber jetzt mit Trackball, ist das ganz schlimm.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (30. Mär 2015 um 21:35 Uhr)
  Mit Zitat antworten Zitat
Zudomon

Registriert seit: 14. Feb 2007
84 Beiträge
 
Turbo Delphi für Win32
 
#6

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 30. Mär 2015, 21:41
Maus-Flipping ist fast von Anfang an implementiert gewesen... im Menü ist so ein Joystick Symbol und da hast du das

Achja und die Pilze waren jetzt recht selten, weil sie viel zu spärlich verteilt waren... habe das vorhin erst angepasst, als ich sie dann durch das Model ersetzt habe.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.534 Beiträge
 
Delphi 12 Athens
 
#7

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 30. Mär 2015, 22:06
Na dann .... nicht, daß sich wer wundert, wenn überall meine Leichen rumliegen.

Mal sehn ob ich einen Fliegenpilz finde.



Die Third-Person-Ansicht war auch witzig.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#8

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 31. Mär 2015, 10:33
Auf'm Ultrabook, im Energiesparmodus, war es aber nicht spielbar. (hatte es anfangs fast vergessen, da der Modus für's normale Leben ausreicht) ... 1-2 FPS.
Eine etwas bessere Graka sollte man also schon benutzen.
Apropos:
Gibt's ne Empfehlung zur Hardware? Auf meinem Laptop mit separater Graka komme ich glaub ich auf 6 FPS ( NVIDIA GT 550M), dabei ist nicht mal das HD Display drin. Dem Geräusch nach gibt sich die Kiste allerdings echt Mühe.
Gruß, Jo
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.534 Beiträge
 
Delphi 12 Athens
 
#9

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 31. Mär 2015, 11:05
Ein kleiner 2,5 Jahre alter i7U, mit 1,9 GHz und Intel HD Graphics 4000, schaffte so um die bis 15-20 FPS
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von rweinzierl
rweinzierl

Registriert seit: 22. Mär 2005
98 Beiträge
 
#10

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 31. Mär 2015, 07:59
Hallo

Auch von mir Respekt ! Ein solches Projekt über Jahre durchzuziehen! Immer wieder erstaunlich was Menschen schaffen können wenn sie Spass an Ihrem Hobby haben. Wirklich aufrichtigen Respekt.

Ich habe nur minimal mit OpenGL und VRML/X3D gearbeitet. (Aber kein Vergleich mit diesem Projekt)

Was mich neugieriegerweise intessiert, wie lautet die Vision des Projektes / Quellcode.

Soll der Quellcode eines Tages als Open Source freigegen / oder als Closed Source verkauft werden ?
Sollen weitere Mitstreiter gefunden werden die am Source Code mitarbeiten ?
Ist zwar nur meine Meinung aber ohne ausführliche Kommentare wirds für aussenstehende schwierig Code diesen Umfangs zu verstehen.

Alles alleine zu machen hat Charme, aber irgendwann wirds zu viel / dann machts auch keinen Spass mehr.

mfg

Reinhold





Bisher ist da noch kein Zufall mit drin... d.h. es wird wirklich nur ein einziges Objekt .

Delphi-Quellcode:
function crtMushroom: TGeoBase;
var
  i, i2, j: Integer;
....
begin
  Result.Clear;
.....
  Result.add(gb);
end;
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz