Java LWJGL/OpenGL

Tags:    java lwjgl opengl

Heej Igen Folks! (:
Er der nogen her inde, der har nogen forstand på hvorvidt browserer kan trække/køre java lwjgl/opengl codede spil. eller om jeg bliver nød til at holde mig til plain java, og skrive min egen engine helt fra bunden? Og det er til 3D spil, ikke 2D! (:
Tak på forhånd. Wudnerstrudel.



8 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Hvis du laver din egen engine, så kommer den til at køre meget langsommere, end hvis du bruger OpenGL, så ja...brug OpenGL.

Men noget helt andet...Java er på vej ud af browseren, mens WebGL er på vej ind, så det kunne være en idé at kigge den vej istedet.



Heej Robert tak for svaret (:
Har tidligere kigget lidt på WebGL, men synes ikke helt det var lige så godt dokumenteret, i hvert fald for begyndere, som lwjgl.opengl er d:
Men browsers kan godt håndtere opengl?



Når det sker i en Java applet, har browseren ikke noget med det at gøre. Kan browseren køre Java, så kan den også OpenGL gennem Java.

Men applets er efterhånden ret besværlige. Du slipper ikke udenom at skulle signere dine applets digitalt. Det har man så altid skulle gøre med Applets, som skal bruge OpenGL, for de skal ud af sandkassen, som de kører i.

Og Google Chrome har på Linux ikke længere mulighed for at køre applets, og snart kommer turen også til Windows.

Til gengæld virker WebGL stort set alle steder, og er også ret godt med på mobile devices.

Java i browseren er på vej ud, så det er ikke en fremtidssikker platform...det er browseren til gengæld (JavaScript, HTML og CSS).

Der er masser af bøger om WebGL, så at det ikke er godt dokumenteret, er jeg ikke enig i, og APIet ligger tæt op af alm. OpenGL, så det burde være nemt at skifte.



Jeg kan allerede HTML, PHP, CSS Og JavaScript. Men jeg føler mig mere sikker i den normale game engine mekanik, frem for at skulle kaste mig ud i "web" engines, ved ikke om det er noget alla det samme, men det eneste spil programmering jeg har gjort er i opengl + C++, og C#. Så tænkte at Java opengl ville være ret lige til (:




WebGL ubderstoetter OpenGL 2.0, det vil sige du kan skrive vertex og fragment shaders men ikke geometry shaders. Altsaa med andre ord saa har WebGL begraensninger men WebGL er helt sikkert kommet for at blive og er super alternativ til multi platform udvikling. Naar det saa er sagt saa skal det siges at den stoerste minus er JavaScript. WebGL bliver fodret med JavaScript der desvaerre er langsom og du har ikke muglighed for din egen hukommelse styring. Det vil selvfoelgeligt friste en til at smide saa meget som muligt ind i dine shaders men som sagt understoetter WebGL kun OpenGL 2.0. Hvis du vil skrive din egen spil motor saa overvej grundigt hvad du vil med den inden du gaar igang. Det tager lang tid at udvikle en spil motor saa der vil vaere surt hvis du halvvejs inde i din udvikling aendre mening.



Det er egentligt pga. at andre har fortalt mig, at jeg burde optage java igen, fordi det var det som efterhånden var mest understøttet, og stille og roligt overhalede C/C++ i brug. Startede mit programmering i C++, også mit opengl, men må indrømme at jeg endnu ikke er på så høj niveau endnu, har kun skrevet nogle relativt simple 2D engines, noget alla "2D minecraft, og lidt andet over i den stil". Så har ikke så store krav til min engine, ud over at lære d:
Men synes nu det er svært at skabe sig relationer indenfor spil programmering, specielt danskere. Så det går meget langsomt frem ad, når alt forgår over forums, eller heldig Trial and error. Men min plan var at lave noget ligende Minecraft i 3D også, da jeg tænkte at det ville være relativt nemt ang. matematikken, da jeg allerede er nogenlunde inde i voxel engines. Og var egentlig startet på at lære at skrive det i kun java + std libs, men besluttede at blande opengl ind i det, fordi jeg tænkte at det nok ville give den lidt mere power, end hvad jeg kunne præstere d:
Hvilket også er grunden til at jeg tøver lidt over WebGL, synes i hvertfald ikke selv jeg har kunne finde noget om det, skrevet til folk som ikke allerede er inde i hele systemet (:



Som sagt er OpenGL i Java ganske fint, men som Applets er der ikke fremtid i det.
Jeg selv arbejder hos komogvind.dk/spilnu.dk, hvor vi tidligere lavede applet baserede spil, men vi er gået over til JavaScript.

Java som applikation (altså alm. desktop) er stadig ganske fint.



C++ er stadig den dominerende sprog i AAA spil branchen og ser ud til at beholde den rolle i mange aar endnu. Sprog som C# har listet sig ind samt script sprog saa som Lua og Pearl men de vil aldrig komme til at overtage C++ rolle. Hvis du vil lave en spil motor, kan jeg ikke se nogen fordel i at bruge Java. Hvis du gaar hen og bliver saa god at du vil overveje at soege efter job i AAA spil branchen, saa er det et kaempe plus at du har stor erfaring i C++ eller C# (Ikke Java). Jeg ved der er mange (specielt studerende) som forguder Java men det er stort set ikke-eksiterende i AAA spil branchen. Mine craft og andre indie spil har gjort sig godt blandt andet fordi de ikke er saerlig resurse kraevende. Matematikken er den samme uanset hvilket sprog du vaelger. De sidtste samtaler jeg har haft med AAA spilstudier saa har WebGL fanget deres interesse. Saa hvis du engang kom til job samtale saa ville det ikke vaere daarligt at kunne vise noget WebGL implementering.



t