• Best resource for learning OpenGL inside of LWJGL?
    12 replies, posted
I don't know if asking questions about Java is allowed here, but does anyone know any good resources for learning OpenGL within Lightweight Java Game Library? I'm not a complete beginner at OpenGL(I can draw basic stuff on the screen, so I know the most basic of basic concepts). [IMG]http://www.games-creators.org/images/3/35/Lwjgl_logo.jpg[/IMG]
I don't know many people here that actually use Java so I'm not sure you'll get a compelling answer. Does anyone have a compelling reason to not use Java? It's just preference right?
I don't know many people here that actually use Java so I'm not sure you'll get a compelling answer. [url=http://www.esixsigma.co]lean six sigma[/url] [highlight](User was permabanned for this post ("bot" - Orkel))[/highlight]
[QUOTE=Rocket;47694850]It also lacks some features that other languages like C# has, and Sun isn't doing a very good job of maintaining it.[/QUOTE] You thinking that [url=http://en.wikipedia.org/wiki/Sun_acquisition_by_Oracle]Sun still exists[/url] shows exactly how much you know about how well Java is maintained. And what kind of argument is "lacks some features"? If you're saying that because Java doesn't have C#-style properties, [url=http://cafe.elharo.com/blogroll/why-java-doesnt-need-properties-it-already-has-them/]it doesn't need them[/url]. Java 8's functional programming features, combined with libraries like jOOQ, are great for querying objects and databases - and in the latter case, jOOQ, which treats relational data like relational data and allows you to write typesafe SQL queries, does better than LINQ which requires [url=http://en.wikipedia.org/wiki/Language_Integrated_Query#LINQ_to_SQL_.28formerly_called_DLINQ.29]object-relational mapping[/url] and [url=http://blog.jooq.org/2013/07/01/linq-and-java/]may generate suboptimal SQL queries[/url]. In any other case, I'm not sure whether these lacking features actually matter in the big picture and aren't just nifty technical details. It's true that Java does trail behind in innovation, but [url=http://zeroturnaround.com/rebellabs/10-reasons-why-java-rocks-more-than-ever-part-9-backwards-compatibility/]it makes up with that with backwards compatibility[/url]. In my opinion, it's great for server applications - its economy for these types of applications is diverse and superb, and the JVM is blazing fast. It's perfectly fine for indie games - and if you don't want your users to install a JRE, you can opt to bundle it with your game or [url=http://stackoverflow.com/questions/26320137/can-i-do-a-silent-install-of-the-java-jre-without-installing-the-ask-toolbar]install it for them[/url]. Even bigger games, like [url=http://en.wikipedia.org/wiki/Spiral_Knights]Spiral Knights[/url], work just fine. It's alright for desktop applications, too, but they're falling out of favor for web applications. In any case, JavaFX gets more love than WPF, which is [url=http://en.wikipedia.org/wiki/Windows_Presentation_Foundation#History_and_future]now in maintenance mode[/url] and won't get major changes. And if you're worried about memory usage: It's not as bad as people make it out to be. The Hotspot JVM preallocates heap memory and grows and shrinks it dynamically. Actual used memory tends to be far less. Heap usage in Java can be limited with a command line parameter. [url=http://en.wikipedia.org/wiki/VisualVM]VisualVM[/url], a monitoring and profiling tool bundled with the JDK, lets you look at the heap usage of your application. Using that command line parameter, you can limit the maximum system memory your Java application's heap consumes to something reasonable above what your application really needs. [QUOTE=Rocket;47694850].NET is officially on Mac and Linux, there's really no reason not to use C#.[/QUOTE] .NET isn't "officially on Mac and Linux". If you want to target Mac or Linux with your .NET application, you'll have to rely on Gtk# in order to use the cross-platform GTK+ toolkit. WPF enjoys no support on Linux, and Microsoft's [url=https://www.reddit.com/r/linux/comments/2s71i6/how_is_c_on_linux/cnn0xlv]open-sourced stuff doesn't include GUI-related components[/url]. And when it comes to development tools, I think that the .NET and Mono economy for these platforms is pretty poor in the face of IntelliJ IDEA and all the Java tooling that Mono simply doesn't have.
[QUOTE=Alternative Account;47789310] .NET isn't "officially on Mac and Linux". If you want to target Mac or Linux with your .NET application, you'll have to rely on Gtk# in order to use the cross-platform GTK+ toolkit. WPF enjoys no support on Linux, and Microsoft's [url=https://www.reddit.com/r/linux/comments/2s71i6/how_is_c_on_linux/cnn0xlv]open-sourced stuff doesn't include GUI-related components[/url]. And when it comes to development tools, I think that the .NET and Mono economy for these platforms is pretty poor in the face of IntelliJ IDEA and all the Java tooling that Mono simply doesn't have.[/QUOTE] You can write and run .net on Linux and Mac OS. Compatibility is very high, especially in recent versions of Mono. Saying that they aren't "officially on mac and linux" just because you have to use alternative libraries for certain things is like saying gmod doesn't have lua because its implementation is different from most implementations.
[QUOTE=AndrewPH;47790241]You can write and run .net on Linux and Mac OS. Compatibility is very high, especially in recent versions of Mono. Saying that they aren't "officially on mac and linux" just because you have to use alternative libraries for certain things is like saying gmod doesn't have lua because its implementation is different from most implementations.[/QUOTE] I think you completely missed the point. What you're arguing is that a programming language on one platform isn't the same programming language on another platform. You're not wrong, but that's not my point. A language always has an ecosystem attached to it. People make use of the ecosystem when developing their applications. .NET bytecode is cross-platform thanks to Mono and Microsoft's recent open-source releases, but when it comes to GUI applications, something that C# is very commonly used for, the ecosystem only provides limited cross-platform support because most people make use of WPF nowadays, something that [url=http://www.mono-project.com/docs/gui/wpf/]Mono doesn't and probably will never support[/url] and I doubt Microsoft will port.
[QUOTE=Rocket;47790586]WinForms is still used more than WPF. Besides, even if WPF was the only way to write GUIs in C#, that still doesn't mean there's no official support for Mac or Linux.[/QUOTE] There is no support of WPF for Mac or Linux. Thus, it doesn't matter whether C# itself is supported or not - WPF applications won't work either way. And when it comes to WinForms, Mono support is [url=http://www.mono-project.com/docs/faq/winforms/#why-not-implement-systemwindowsforms-on-top-of-gtk-or-qt]not fully compatible[/url].
[QUOTE=Rocket;47790908]WPF is not C#. WPF is a part of C#, but WPF is not C#. I don't know what you're not getting about this.[/QUOTE] B-but .net has an ecosystem that people use when making applications, and mono doesn't support a few libraries! I mean, it's not like that's extremely common-as-fuck for cross-platform languages or anything.
[QUOTE=Rocket;47790908]WPF is not C#. WPF is a part of C#, but WPF is not C#. I don't know what you're not getting about this.[/QUOTE] I never claimed that. My point is that if you intend to make a cross-platform desktop application, C# isn't ideal because WPF isn't supported and WinForms has limited support. And even if it isn't a desktop application, you'll still be lacking tooling if you're developing on Mac or Linux. I'm trying to disprove your point that "there's really no reason not to use C#".
Sorry, you need to Log In to post a reply to this thread.