Permalänk
Medlem

OpenGL för Java

Hej!
Jag har programmerat i Java ett tag nu och skulle vilja testa på OpenGL för spelprogrammering.
Men jag har kollat runt lite och verkar inte hitta OpenGL för Java, bara för C++, dock så hittade jag LWJGL men det verkar vara en light version av OpenGl.
Så jag frågar er:
Finns OpenGL för Java?
Är OpenGL för java bra eller bör jag börja med C++ istället?

Visa signatur

SSD: OCZ-VERTEEX3 128gb | GPU: GeForce GTX 570 kfa2 | CPU: i5-3570K @ 3.4GHz | RAM:2x 4gb Corsair Dominator @ 1600MHz | PSU: Fractal Design Newton r2 650W | Mobo: Asus p8Z77-V LX | Skärm: Dell 2209WA 75Hz

Permalänk
Medlem

Minecraft använder ju sig av LWJGL, så om det räcker för minecraft räcker det säkert åt dig.
Dock så vet vi ju alla att Minecraft är ett riktigt prestandamonster med tanke på att det inte har så speciellt bra grafik. Så min sopntana tanke är ju att Java och OpenGL inte är speciellt effektivt.

Permalänk
Medlem

Nu har jag inte använt LWJGL innan men läser man i deras dokumentation ser det ut som om allt viktigt OpenGL stöds så jag vet inte riktigt vad du menar med light-version? Snarast verkar det som om dom mappat upp C-APIet till Java hyfsat rakt av så då kommer ju alltihop med. Spontant tycker jag det ser ut som ett helt ok bibliotek.

I 99 fall av 100 kommer inte Java vara ditt problem i spelprogrammeringen jämfört med problemen du får om du istället skulle byta till C++. Att tänka på är också att flaskhalsen mycket väl kan ligga på grafikkortet och då spelar vilket språk du kodar i inte någon roll. För att ta ett par exempel: Reflektioner, vatten med vågor, upplösningen på texturer, mängden trianglar i ett träd eller fiende, soljus som bländar, väggar som ser ut som plast eller glänser metall osv är alla effekter som nästan alltid är helt beroende av grafikkortet och fungerar hur fint som helst att använda från Java om man vill det.

Som jag ser det finns det 2 anledningar till att byta till C++:
1. Du tycker det verkar roligare/intressantare
2. Du vill jobba med "AAA" spel typ Battlefield, Call Of Duty och liknande. (Notera att det inte gäller för andra sorters spel, tex Minecraft, sånt som ligger på Xbox Live Arcade, mobiltelefon-spel, surfplattespel, flashspel, indie-spel i största allmänhet osv)

Eftersom du inte kodat med OpenGL förut så ett tips: Se till att lära dig dom moderna grejerna och inte fokusera på det som kallas fixed-function pipeline, alltså sådant som fanns innan man började med shaders. Sen dess har mycket hänt..

Visa signatur

AK47s for everyone! - Angry mob
Since NaN /= NaN, I think, we should decipher 'NaN' as 'Not a NaN' - Miguel Mitrofanov
(Varför är människan så benägen att tro på Gud?) Antagligen har det lönat sig och evolutionen har drivit fram sådana hjärnor. - Anon

Permalänk
Medlem

Anledningen till att jag trodde att LWJGL var en light version, var för att det är förkortning för "light-weight java library".

Skickades från m.sweclockers.com

Visa signatur

SSD: OCZ-VERTEEX3 128gb | GPU: GeForce GTX 570 kfa2 | CPU: i5-3570K @ 3.4GHz | RAM:2x 4gb Corsair Dominator @ 1600MHz | PSU: Fractal Design Newton r2 650W | Mobo: Asus p8Z77-V LX | Skärm: Dell 2209WA 75Hz

Permalänk

Lwjgl innehåller OpenGL och OpenAl mm

Visa signatur

Att programmera eller att inte programmera, det är frågan?

Permalänk
Hedersmedlem

Personligen har jag kört JOGAMP JOGL - en konkurrent till lwjgl kan man säga.
http://jogamp.org/
OpenGL, OpenAL & OpenCL

Men jag gissar att lwjgl kanske är mer utvecklat

Visa signatur

Every time you create an iterator: God kills a kitten.