-
Hallo Leute,
ich möchte Spiele und Graphiken in 3D mit Java entwickeln.
Dabei ist es egal was bei mir installiert sein muss, aber der Anwender / Spieler soll unbedingt nur mein Programm + mit-lieferbare Librarys (JAR's) brauchen!
JWS, Applets oder etwas anderes mit Server scheiden aus.
Auch das JMF, FMJ oder irgendetwas anderes außer einem normalen JRE dürfen nicht benötigt werden!
Bei JOGL z.B. gibt es da das ewige Problem den DLL's die in den Library-Path müssen aber nicht so recht wollen, in eclipse funktionierts zwar, aber kein Export ohne ClassNotFoundExceptions! Und wenns schon auf meinem Rechner nicht funktioniert, wie soll ich dann jemals eine User-freundliche / Plattformunaphängige Installation hin bekommen?
Ob OpenGL oder etwas anderes ist egal.
Gibts da hoffntlich irgendeine halbwegs machbare Lösung?
javaDeveloper2011
-
30.06.11 21:07 #2SE Tutorials.de Gastzugang
Ähm .. das ist aber ein bisschen krass. Aber als Beispiel empfehl ich dir mal Minecraft. Die schaffen es auch mit JOGL ... und alles als sehr kleines "Setup" in dem nur eine Art Patcher installiert wird der alle Daten herunterläd und danach auch sofort nutzbar einbindet. Also MUSS es möglich sein. Warum es bei dir bei Exports immer in CNFE endet weis ich leider auch nicht. Aber vielleicht würde es dir hier mal helfen dich mal von Eclipse zu lösen und mal dierekt auf Console zu versuchen ein lauffähiges Beispiel zusammen zu bauen. Das kannst du dann in ANT umsetzen und das von Eclipse verarbeiten lassen. Somit sollten zumindest diese Fehler behoben sein.
-
Hallo SPiKEe,
Warum, es will doch schließlich Niemand seine Benutzer noch zu irgendwelchen extra Installationen zwingen.Ähm .. das ist aber ein bisschen krass.
Ich hab mich jetzt schon den halben Tag mit diesem Thread beschäftigt, vielleicht bringt er ja jemanden anders auf ne Lösung oder hilft mein Problem zu verstehen.
Gruß
-
Noch was:
Sowas hier hab ich auch schon probiert:
oder auch:Code java:1
System.setProperty("java.library.path", "gluegen-rt.dll jogl_desktop.dll jogl_es1.dll jogl_es2.dll nativewindow_awt.dll nativewindow_win32.dll newt.dll");
Fehlermeldungen gabs keine, aber der Export ging trotzdem schief.Code java:1 2
System.loadLibrary("gluegen-rt"); ...
Dieses Batch-File:
startet erfolgreich ein Java3D-Beispiel und soweit ich erkennen konnte völlig ohne Installation!Code :1
java -Djava.library.path=..\..\lib\lwjgl-2.4.2\native\windows -cp ..\..\lib\lwjgl-2.4.2\jar\lwjgl.jar;..\..\lib\lwjgl-2.4.2\jar\lwjgl_util.jar;..\..\lib\jpct\jpct.jar;car.jar -Xmx128m CarTest width=640 height=480 refresh=0 mipmap
Nur weiss ich nicht recht wie ich dass nun für meine Zwecke adaptieren soll?
(Fürs erste will ich das in diesem Video beschriebene Beispiel nachmachen und exportieren)
javaDeveloper2011
-
30.06.11 22:35 #5SE Tutorials.de Gastzugang
Naja ... das deine erste Zeile da nich hinhaut kann ich dir verraten warum : weil ein LEERZIECHEN kein Trenner ist. Auf Windows müsstest du ein Semikolon ; als Trenner nehmen, unter Unix einen Doppelpunkt :.
Gleiches wendet man auch auf die CP-Angabe an. Ein wunder das Java überhaupt aus mehreren CP-Parametern sich selbst was zusammensetzt.
-
01.07.11 15:13 #6
- Registriert seit
- Jun 2009
- Beiträge
- 870
Also LWJGL bringt alle benötigten nativen Bibliotheken mit und entpackt diese dann automatisch. Wie genau das funktioniert, kann ich dir leider nicht sagen.
Je nachdem wie aufwändig dein Spiel sein soll würde ich mir mal jMonkeyEngine ansehen: http://jmonkeyengine.org/
Diese basiert auf LWJGL und JBullet (Physics), Version 3 ist zurzeit in Entwicklung und bringt einige interessante Features mit, eine kleine Auswahl: http://jmonkeyengine.com/engine/Code bitte so einfügen: [java]System.out.println("Hallo");[/java] (Analog für andere Programmiersprachen)
hilfreich zu Java: Really Big Index, Java ist auch eine Insel Band 1 und Band 2.Code java:1
System.out.println("Hallo");
___________
Ubuntu Bug #1: Microsoft has a majority market share
Casecon: Projekt leiser Käse
-
Hallo genodeftest,
den JMonkey-Engine hab ich schon, trotzdem danke für den Tipp.
Jetzt hab ich einfach ein kleines Beispiel geschrieben (ohne JOGL) und folgend JAR's in den Class-Path gelegt: 3dcode, 3dutils, vecmath.
Und, JUHU! das mit NetBeans gebaute JAR funktioniert! Jetzt hab ich auch noch alle JAR's und DLL's die irgendwie mit 3d hießen aus dem Java-Installations-Verzeichnis geholt und alles funktioniert weiterhin, heißt das nun dass jeder mit normalem JRE ohne Java3D mein Programm ausführen kann?
Wenn jemand noch nen altes JRE / JDK hat oder sonst ohne Java3D unterwegs ist, wäre es nett wenn derjenige mal versucht mein Programm auszuführen.
(im Anhang)
Gruß javaDeveloper2011
-
01.07.11 16:58 #8
Hi,
sitz gerade an meinem Mac und hab's ausgeführt...läuft!
Mac OSX 10.6.7
java full version "1.6.0_22-b04-307"
Gruß,
OneOf6...every second is a new spark, sets the universe aflame
(Bruce Dickinson)
Got something to say? http://www.plaintalk.de
-
01.07.11 17:05 #9
- Registriert seit
- Apr 2009
- Ort
- Düsseldorf (NRW)
- Beiträge
- 508
Bei mir klappt's jetzt so nicht, kann allerdings theoretisch auch an der Grafikkarte liegen:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
01.07.2011 17:02:24 javax.media.j3d.NativePipeline getSupportedOglVendor SCHWERWIEGEND: java.lang.UnsatisfiedLinkError: no j3dcore-ogl-chk in java.librar y.path Exception in thread "main" java.lang.UnsatisfiedLinkError: no j3dcore-d3d in jav a.library.path at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runtime.loadLibrary0(Unknown Source) at java.lang.System.loadLibrary(Unknown Source) at javax.media.j3d.NativePipeline$1.run(NativePipeline.java:189) at java.security.AccessController.doPrivileged(Native Method) at javax.media.j3d.NativePipeline.loadLibrary(NativePipeline.java:180) at javax.media.j3d.NativePipeline.loadLibraries(NativePipeline.java:137) at javax.media.j3d.MasterControl.loadLibraries(MasterControl.java:948) at javax.media.j3d.VirtualUniverse.<clinit>(VirtualUniverse.java:280) at animation.MyUniverseContent.main(MyUniverseContent.java:15)
Windows XP SP3 32bit
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
-
01.07.11 17:24 #10
- Registriert seit
- Jun 2009
- Beiträge
- 870
Oracle JDK 6.24,
Ubuntu 11.04 Desktop 64Bit mit aktuellster Version von Mesa,
Gnome3
Grafikkarte: iGPU der ersten Generation Core i5
Absturz:
Code :1 2 3 4 5 6 7 8 9 10 11
Exception in thread "main" java.lang.UnsatisfiedLinkError: no j3dcore-ogl in java.library.path at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1681) at java.lang.Runtime.loadLibrary0(Runtime.java:840) at java.lang.System.loadLibrary(System.java:1047) at javax.media.j3d.NativePipeline$1.run(NativePipeline.java:189) at java.security.AccessController.doPrivileged(Native Method) at javax.media.j3d.NativePipeline.loadLibrary(NativePipeline.java:180) at javax.media.j3d.NativePipeline.loadLibraries(NativePipeline.java:137) at javax.media.j3d.MasterControl.loadLibraries(MasterControl.java:948) at javax.media.j3d.VirtualUniverse.<clinit>(VirtualUniverse.java:280) at animation.MyUniverseContent.main(MyUniverseContent.java:15)
Geändert von genodeftest (01.07.11 um 17:27 Uhr) Grund: Falsches JDK angegeben
Code bitte so einfügen: [java]System.out.println("Hallo");[/java] (Analog für andere Programmiersprachen)
hilfreich zu Java: Really Big Index, Java ist auch eine Insel Band 1 und Band 2.Code java:1
System.out.println("Hallo");
___________
Ubuntu Bug #1: Microsoft has a majority market share
Casecon: Projekt leiser Käse
-
01.07.11 17:32 #11SE Tutorials.de Gastzugang
Also ... einfach runterladen , entpacken und starten > der von Tim genannte Fehler.
Grund : du hast zwar schön die CLASS-Files mit geliefert und auch den richtigen CP angegeben, nur bringt das nichts wenn du die benötigten DDL / SO - Files nicht mit auslieferst. Diese müssten ebenfalls mit ins distribution-Pack.
-
Hi,
oh Gott, das ist genau was ich befürchtet hab, er braucht die DLL's.
(also native Bibliotheken)
Wohl diese: j3dcore-d3d.dll und villeicht sogar noch die: j3dcore-ogl.dll, j3dcore-ogl-chk.dll, j3dcore-ogl-cg.dll
Ich hab jetzt noch mal nen ZIP gepackt, diesmal mit allen 4 dll's im Ordner dist/lib/native, der in den Library-Path aufgenommen wird:
Code :1
java -jar "3D Animation.jar" -Djava.library.path=lib\native
@Tim Bureck + genodeftest
Wäre nett wenn ihr es jetzt nochmal ausprobieren würdet.
(Bitte RUN.bat ausführen)
javaDeveloper2011
-
01.07.11 17:37 #13
- Registriert seit
- Apr 2009
- Ort
- Düsseldorf (NRW)
- Beiträge
- 508
Hi,
immernoch derselbe Fehler!
Best regards
-
Hi,
@SPiKe, woher kriege ich denn die .so-Dateien?
villeicht testest du es ja auch nochmal,
Gruß
-
Hi,
@Tim Bureck:
wenn man sich Java3D als ZIP von hier lädt, sind auch nur die JAR's + DLL's enthalten die ich bei Post #12 im Anhang hab!
Für AMD-Prozessoren reicht aber offenbar schon j3dcore-ogl.dll.
javaDeveloper2011Geändert von javaDeveloper2011 (01.07.11 um 18:07 Uhr)
Ähnliche Themen
-
Installation ohne Setup.exe
Von beyoNd im Forum Microsoft WindowsAntworten: 8Letzter Beitrag: 28.03.09, 14:24 -
LAN-Spiele ohne Installation
Von Steusi im Forum SmalltalkAntworten: 2Letzter Beitrag: 11.12.08, 08:47 -
installation ohne inernetanschluß?
Von susiii im Forum Sonstige Grafik-ProgrammeAntworten: 1Letzter Beitrag: 20.04.07, 13:54 -
Games ohne office; geht das?
Von carlinettone im Forum Fun-ForumAntworten: 35Letzter Beitrag: 15.02.05, 18:06 -
Installation von XP mit S-ATA ohne Diskettenlaufwerk
Von nikonixus im Forum Microsoft WindowsAntworten: 3Letzter Beitrag: 07.10.04, 11:59



7Danke

Zitieren
Login





