Hi, I’m just finishing Junior year in high school and have been coding for a bit less than a year(just to clear up my level of understanding). I’ve got a few questions and I am really grateful for anyone who replies. ;D
What exactly is openGL? I’ve Google-ed it up but that leads me to question two. My current understanding is that it’s a set of graphics libraries/classes
What exactly is an API?
Someone helped me setup my LWJGL library a while ago and I remember I had to access lower level code/files (I’m not quite sure how I should phrase that). If LWJGL is using lower level access how do I ensure that it can be playable on different computers or is that something I should even worry about?
I’ve been making a game with Java 2D and I was wondering if it’s a good idea to finish that first and then move onto LWJGL or just jump into LWJGL.
My end goal is to create a game that has very basic environment graphics but very intense player character graphics and affects. I’d want to have the world be made out of very big blocks that can be destroyed. Most importantly I’d want to be able to construct various points of gravity with lots of tiny planets in the air that players can jump to and destroy if needed. I’m wondering if something like that, with enough hard work and years of trying would be achievable with a smooth frame rate. (I’d say it would be in the fantasy fps genre)
Referring to my last question, is it more beneficial to me to use a game engine such as UDK in order to make a 3D game?
Other than YouTube videos, the LWJGL site, and standard Google-ing where should I search for LWJGL learning?
Interface. A set of methods to access something underhood.
It will, mostly.
NO. NO.
Sounds like Minecraft.
If you just want to produce something and save up your life, yes.
First read up OpenGL redbook. It’s not about LWJGL but GL in general. If you’ve finished it then you’re just ready.
Actually effects and particles have nothing to do with GL. It’s just trick to give sensation. However they’re very costly, linear to their performance and quality. That’s why for beautiful ones we need to go deeper. Java2D can do it too in limited way. Check out last posted game in my blog that show you a little example of particles.
Fortunately if it seems too complicated, you can try Slick2D to access OpenGL with easy interfaces. I still likely to use it.
Not to be flippant, but googling these first two questions really does come up with useful and very explanatory results in the very first hit, so I’m not going any further with those.
As for portability, LWJGL does indeed have a native library that has to be compiled with a C compiler. You don’t have to do any of that compilation if you’re on any of the supported platforms (Intel CPU, Windows, Linux, OSX, and Solaris, but Solaris is unlikely to continue). Now since OpenGL itself was designed to be quite portable, porting this native library to a different OS/arch shouldn’t be all that hard, but it’s still not necessarily completely trivial (there might be byte-order assumptions floating around here and there).
If your game’s goal is to have intense graphics effects, you’re not going to want to continue with Java2D. Slick2D is probably your best bet as a migration path goes, but if you’re willing to do some extra porting work, LibGDX is also worth investing some time in. I’m assuming UDK is Unity, which doesn’t do Java (it’s a .NET thing). If you’re looking for a Java engine, take a look at jMonkeyEngine, but don’t expect a toolchain as slick as Unity.
As for learning LWJGL, you’ve got the first three, then there’s this site right here. The rest is a matter of learning OpenGL itself, then translating that to LWJGL’s way of doing things (which is deliberately designed to mimic almost exactly what the C API of LWJGL does).
Ah. Definitely don’t expect a toolchain as slick as the Unreal engine. jMonkeyEngine is about as evolved as Java engines get, and it’s kind of meh (the IDE integration is only for netbeans for starters)
-offtopic-: I’m just curious… how is it possible to develop with the jme3 without Netbeans? I don’t want to write games with Netbeans… I still love Eclipse much more…
Code written for jme3 works no matter what you use whether it’s eclipse, netbeans, or notepad. The GUI tools like the visual scenegraph editor however only work in netbeans. You can always use both at the same time, but you’d best have a beefy dev machine to do it…
I’m actually not too far away. I’m just a generation or so behind…
CPU: Intel Core i7 860, no unlocked multiplier so it’s hard to get a stable overclock…
RAM: 8GB 1600MHz memory.
GPU: GTX 295, two GPUs in one!
Storage: 60GB Corsair SSD + 2 x 1TB 7200RPM HDD
CPU Cooler: A huge Noctua with a fist-sized cooler and 2 fans
Case: Antec Three Hundred
Still stuck on my laptop though, and I could also use a new graphics card for OGL 4+… I was somewhat unlucky when I built my desktop. Got my CPU just months before Sandy Bridge came out which is still dominating when overclocked, and the best DX 10 graphics card there is, just a few months after AMD released their HD 5970. At least the HD 5000 series had very disappointing DX11 performance (at least with tessellation) and NVidia’s next release was more than half a year later, and that was the 400 Fermi series which was more useful for cooking stuff than gaming. You pretty much bought your build at the very best time of the last like 5 years! T__T So unfair!
I think I’ll get a new graphics card when I get back home if I can spare the money for it. The fact that it has built-in SLI (2 GPUs and each is something in-between a GTX 260 and a GTX 275) gives it pretty good raw performance even in new games even though it’s so old, but it has some serious drawbacks. For one, I had so terrible microstuttering in BFBC2 that I had to enable VSync to so it didn’t look like <30 FPS whenever I started firing my gun which gives a longer delay which especially sucks for shooters. Secondly, it only has 896MBs of VRAM. I ran out of VRAM when forcing 4xMSAA in Starcraft 2, leading to horrible half-second freezes and stuttering even though the game actually ran at over 80 FPS. I also ran out of VRAM when playing PS2 games on an emulator at 3840x2160 with 4xMSAA on. What? Stop giving me that face! It wasn’t even lagging even though it was only using one of the two GPUs if I lowered the resolution a tiny bit. Lastly it doesn’t even have DX10.1…
I’m not going SLI or Crossfire this time since the stuttering hasn’t been remotely solved (even though Nvidia’s adaptive VSync might help a bit). I’ve preferred Nvidia so far for better drivers for forcing antialiasing. They have more flexible combined MSAA and SSAA modes. You can even force 32xSSAA if you feel like cooking things on your GPU. They also seem to really dominate this generation, so I’m thinking of going with a GTX 670. Nvidia also leads in BF3 which I plan to play a lot. A factory overclocked version performs even better than a GTX 680 (not to mention that they are actually available), and they cost around as much as my current GTX 295 did. The real question is if it’s worth waiting for NVidia’s full Kepler (GK 110) which seems to be scheduled for the beginning of 2013 I think, but the lack of competition from AMD could drive up prices to insane levels…
I got rickrolled yesterday. Went to a karaoke box with two English friends, and the first song they picked was that one. When I started laughing and said “Okay, you got me!” they looked at me quizzically and then proceeded to seriously sing the whole song. Turns out they actually like it and don’t spend time on 4chan. :yawn: :clue: