Anzeige:
Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 15 von 39

Thema: 3D Engien

  1. #1
    Registrierter Benutzer
    Registriert seit
    08.05.2004
    Beiträge
    49

    3D Engien

    Hi,

    ich moecht mal Versuchen einen eigenen 3D Engien selbst zu schreiben.
    Jetzt die Frage da der auch unter linux laufen soll werde ich wohl auf opengl oder 3d java zurueckgreiffen muessen. Oder kennt jemand etwas besseres? Diskusion ist eroeffnet .

    Desweitern benoetige ich dann noch Dockumentation dazu. Wie ich da vieleicht einen gleinen anfang hinbekomme damit ich ueberhaupt einen anfang finde. Kann mir da jenad helfen?

    Desweiteren bin ich ueber jede Info oder nuetzliche ERfarungsberichte dankbar.

    gruesse euer Pfefferkeks

  2. #2
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Du suchst Rat von der riesigen Schnittmenge von (Leuten die ihre eigene 3D engine geschrieben haben) mit (Leute die hier vorbeigucken). Hmm.

    Ich weiss nicht wies jetzt mit java3d aussieht unter Linux. Aber als ich mich das letzte mal darüber informiert habe sahs düster aus - irgendwo blei Blackdown gabs eine (afair eingestellte) Implementierung und sonst nichts.

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  3. #3
    Registrierter Benutzer
    Registriert seit
    26.11.2004
    Ort
    Fulda
    Beiträge
    70
    Hi

    so zu 3dengine ich habe angefangen eine zuschreiben. erst unter java3d aber das war mir zu schwer weil ich dort kein tutorial in deutsch gefunden hatte. ich kann englisch aber das war für mich doch zu schwer

    dann habe (bin ich immer noch dran) ich es in opengl geschrieben und es war durch zig tutorials auch sehr leicht.

    Also meiner meinung ach würde ich es in opengl schreiben weil es einen noch viel schwerwiegenden vorteil hat. es ist schnell als java weil: interpreter ist zu langsam für 3dengine zu langsam. ja auch wenn nativ compiliert ist java wegen dem garbagecollector glaube ich zu langsam

    mein tip also opengl

    mfg gsus


    PS: das soll nicht heißen das java3d nicht geeignet ist es ist nur einsteiger unfreundlicher denn man kann, wenn richtig programmiert aus java noch eine menge geschwindigkeit holen
    C > Java oder wie ?

  4. #4
    Registrierter Benutzer
    Registriert seit
    27.04.2001
    Beiträge
    62
    Jetzt die Frage da der auch unter linux laufen soll werde ich wohl auf opengl oder 3d java zurueckgreiffen muessen. Oder kennt jemand etwas besseres?
    Ich wuerde auf SDL und OpenGL setzen. Ist wunderbar portabel. Hab neulich meine kleine Engine von Linux auf MacOS X portiert und mein Kumpel hat seine auch unter Windows am laufen.

    Desweitern benoetige ich dann noch Dockumentation dazu.
    Das Standardwerk fuer OpenGL ist das Red Book: http://www.opengl.org/documentation/red_book_1.0/

    Wie ich da vieleicht einen gleinen anfang hinbekomme damit ich ueberhaupt einen anfang finde. Kann mir da jenad helfen?
    3D-Programmierung ist ein neues Feld. Wenn du da noch nicht so die Erfahrung hast solltest du dich da erst mal einlesen. Auch Mathematisch sollte man zumindest die Grundlagen etwas verstehen. Wenn man das ganze nicht gerade in der Schule durchgenommen hatte, muss man sich das selber aneignen. Da gibts einen recht guten Link: http://chortle.ccsu.edu/VectorLessons/vectorIndex.html

    Desweiteren bin ich ueber jede Info oder nuetzliche ERfarungsberichte dankbar.
    Ich habe diesen Sommer auch mit OpenGL angefangen und schon recht nette Dinge hinbekommen. Angefangen mit recht einfachen Dingen (hier)... zu einem kleinen Raum mit bewegenden Objekten (hier)... dann hab ich auch schon recht coole Sachen wie Multiple Renderpasses hinbekommen: hier.Dann ein kurzer Ausflug in die Vertex Shader Programmierung: hier. Multitexturing: hier.

    Dann hab ich auch mal nen Nachmittag lang Direct3D ausprobiert, aber das lauft halt nur unter Windows: hier.

    Dann kamen die Heightmaps: hier und hier.

    Meine kleine Welt hab ich dann immer weiter ausgebaut. Auf einmal sogar mit Wasseroberflaeche: hier.

    Dann noch Mipmapping und Baeume: hier und hier.

    Dann kam eine laengere Pause und ich hab mich wieder mit anderen Themen beschaeftigt... vorletzte Woche habe ich noch meinen Octtree erweitert der jetzt schon einfaches Frustum Culling macht.

    Alles in allem kann ich sagen dass ich noch sehr am Anfang stehe. Mir fehlt es vor allem am mathematischen Wissen um auf Dinge wie Occlusion Culling etc. zu kommen...

    Hier musst du halt gucken ob du dir das aus mathematischer Sicht zutraust... die sachen die ich da oben gemacht habe sind alle relativ einfach zu bauen mit wenig Mathematik.

  5. #5
    Registrierter Benutzer
    Registriert seit
    05.09.2002
    Ort
    Neuhausen
    Beiträge
    320
    Ich würde dir auch zu SDL (OpenGL) raten. Ich habe selber noch nichts damit gemacht, aber neulich ein längeres Gespräch mit einem Studienkollegen gehabt, der nun professionell 3D-Programme entwickelt, mittels SDL unter Solaris/Linux.

    Ich habe vor ca. zwei Jahren mit Java3D experimentiert: Es lieft unter Debian Woody ordentlich flott (Das mit dem Performance-Verlust durch Java ist nicht so schlimm, anfangs wirst du das sowieso nicht ausreizen). Dummerweise habe ich mir damit die Abhängigkeiten durcheinander gebracht. Das Java3D Paket war von Blackdown.

    Gruss, Andy

  6. #6
    Registrierter Benutzer
    Registriert seit
    08.05.2004
    Beiträge
    49
    Hi,

    ersteinmal vielen DANKe euche allen.

    Ich werde mir dan gleube ich openGL mal anschauen.
    Mal sehen wie weit ich komme!

    mfg
    Pfefferkeks

  7. #7
    Registrierter Benutzer
    Registriert seit
    25.10.2004
    Beiträge
    819
    Zu OpenGL gibt es ein paar Tutorials. Ein nicht ganz so schlechtes gibt es bei

    http://nehe.gamedev.net

  8. #8
    Registrierter Benutzer
    Registriert seit
    16.09.2001
    Beiträge
    1.182

    Öhmm...

    1.) Java ist nicht wirklich nur interpretiert. Drum ist es beim Linpack auch genauso schnell wie C.

    2.) Game-Engines brauchen keine superschnellen Sprachen (gibts sogar in Python - das ist wirklich nur interpretiert).

    3.) Garbage-Kollektor macht Speicheranforderungen ca. 5x so schnell wie unter C
    Geändert von Lin728 (20-08-2017 um 19:34 Uhr)

  9. #9
    Registrierter Benutzer
    Registriert seit
    27.04.2001
    Beiträge
    62
    Zitat Zitat von ceisserer
    1.) Java ist nicht wirklich nur interpretiert. Drum ist es beim Linpack auch genauso schnell wie C.
    Was ist Linpack? Meinst du Linux Paket?

    2.) Game-Engines brauchen keine superschnellen Sprachen
    Wenn sie das allerletzte aus der Hardware rausholen sollen, dann schon... und das ist bei 3D-Engines schon von Vorteil weil man ziemlich schnell an die Grenzen kommt. Desshalb sind die meisten modernen 3D-Spiele fast alle in C oder C++ entwickelt und das wird sich auch nicht aendern. (was nicht heissen soll dass ich grosser Fan von C oder C++ bin! Mir sind Sprachen mit Garbage Collection auch lieber!)

    3.) Garbage-Kollektor macht Speicheranforderungen ca. 5x so schnell wie unter C
    Gibts dazu Messungen?

  10. #10
    Registrierter Benutzer
    Registriert seit
    29.02.2004
    Beiträge
    113
    Zitat Zitat von ceisserer
    (gibts sogar in Python - das ist wirklich nur interpretiert).
    Nope.

    Gruß,
    /dev

  11. #11
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Zitat Zitat von chrizel
    Was ist Linpack? Meinst du Linux Paket?
    Linpack isn benchmarking ding. Benutzen sie afaik u.A. um die Top500-Supercomputer-Liste zu machen.

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  12. #12
    Registrierter Benutzer
    Registriert seit
    13.12.2004
    Beiträge
    15
    Zitat Zitat von ceisserer
    1.) Java ist nicht wirklich nur interpretiert. Drum ist es beim Linpack auch genauso schnell wie C.
    Ich glaube du meinst C++. In manchen Dingen ist Java annähernd so schnell wie C++, aber Swing macht das ganze wieder kaputt.
    Wobei das alles relativ ist! Denn es ist natürlich vom Compiler abhängig wie schnell/stabil deine Applikation ist und in C/C++ gibt es viele (und sie werden ständig verbessert).

    3.) Garbage-Kollektor macht Speicheranforderungen ca. 5x so schnell wie unter C - und wenn eine game-engine viel garbage macht, ist sie eh vom design her, naja...
    Der Garbage Collector kann 1. dein Game oder deine Applikation zum Ruckeln bringen, wenn er aktiv ist. 2. Kann er auch nicht mehr gebrauchte Objekte übersehen.

    Liebe Grüße
    Reality

  13. #13
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Zitat Zitat von Reality
    Ich glaube du meinst C++. In manchen Dingen ist Java annähernd so schnell wie C++, aber Swing macht das ganze wieder kaputt.
    Ich glaube wenn Ceisserer Java schreibt meint er Java und nicht C++.

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  14. #14
    Registrierter Benutzer
    Registriert seit
    13.12.2004
    Beiträge
    15
    Hi,
    Zitat Zitat von peschmae
    Ich glaube wenn Ceisserer Java schreibt meint er Java und nicht C++.
    das ist das Problem. Viele setzen C und C++ gleich. Er schrieb, dass Java gleich schnell ist wie C. Das würde auf C++ schon eher zutreffen, aber C ist schon etwas schneller wie C++. Das meinte ich.

    Liebe Grüße
    Reality

  15. #15
    Registrierter Benutzer
    Registriert seit
    16.09.2001
    Beiträge
    1.182

    Hmm...

    .............................
    Geändert von Lin728 (20-08-2017 um 19:38 Uhr)

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •