PDA

View Full Version : Java 3D Graphics Programming


jfelrod1960
10-05-2003, 05:29 AM
Have anyone used Java 3D for serious graphics work? Is it worth my time to learn or should I stick with C/C++? I love the fact that Jave is platform independent.

Thanks

Jhavna
10-07-2003, 03:55 PM
Java can be used for 3D programming, but it is slower than c++... you have to ask yourself what you actually want to code...

And C++ is platform independent too... if you stay away from platform specific code/APIs
as for graphic APIs and audio/window stuff, OpenGL is cross platform and so are SDL and OpenAL

If you want to end up writing stuff like half life2 or 3d fps that will be fast and be able to handle loads of polys each iteration, learn c++, it's the industry standard!

elam
10-08-2003, 05:46 AM
Java has a bright future in 3d.
For one thing, it's so much more enjoyable to program with Java than C/C++, imo.
And Java is much more cross-compatible than C++.
As for speed, with every iteration of Java, it gets faster. In most cases, it's speed is equal to C/C++. I've seen raytracers(I'll try to find the links) written in Java that keep up with their C++ counterparts.

Check out Java Games (http://community.java.net/games/) and Java Open GL project (https://jogl.dev.java.net/) for some cool stuff.

jfelrod1960
10-08-2003, 06:37 AM
Thanks Elam. I've been a C++ programmer for quite some time and I like programming in Java better too! I'll be waiting for the links. Thanks again.

TheEdge
10-21-2003, 04:24 AM
Ive looked at some java performance comparisons agasint c++...all ive seen were c++ out performing java by an order of 10 on simple instructions, but this was over a year ago. I'd love to see the tests you've found. Perhaps if java is compiled to the native platform it may run close to c++. The thing is pc's are so much fast so cant a 3d game compiled natively run such as halflife in java( not h2), run on a current machine with no problems??....hmmm

stew
10-21-2003, 02:48 PM
Java is faster than it's reputation ;)
With the current JIT compilers, it's not much slower than C++ - in cases, Java can even be faster, Sun's HotSpot runtime can perform run-time optimizations, something that's impossible for compiled C++ code.

If you are interested in learning 3D programming, go ahead and use whatever language you're comfortable with. As mentioned already, there are a couple of projects that implement raytracers, modelers or REYES in Java and many of them publish their source code.

SpriteGF
10-21-2003, 07:51 PM
Thing is, Java wouldn't be ideal for bleeding-edge Half Life 2-style games, though... for academic purposes, I've seen some nice decent raytracers come out of Java.

Java 3D progresses a bit sluggishly, though, so I wouldn't bother learning it if I were serious about 3D work (but someone correct me if I'm wrong!). Another stumbling block is that Java 3D does not work for all systems, particularly OS X.

pravinroche
10-22-2003, 07:06 AM
hey guys to become a game programmer its nessecary to have good knowledge of mathematics i have learned java and C but few of u say c++ is industry standard what u people suggest if u want to step into game programming which language i shall concentrate on more.

OC-NightHawk
10-22-2003, 07:23 PM
Originally posted by pravinroche
hey guys to become a game programmer its nessecary to have good knowledge of mathematics i have learned java and C but few of u say c++ is industry standard what u people suggest if u want to step into game programming which language i shall concentrate on more.

This might not be what you want to hear, but I wouldn't suggesting getting locked into one language. Learn the syntax of both, and then focus on building up you logic skills. After that knowing multipul languages is a snap and you'll pick new ones up quickly. That would make you marketable.

markyjerky
11-07-2003, 05:38 PM
Darn PCs are getting so blazing fast now that newbies can create games that would perform very well on a modern machine w/o having to jump through all the same optimization hoops that old school porgrammers deemed essential.

So just pick a language and use it to explore a "domain" of knowledge. Don't let the techincal issues of the language become your hang up.

This is not to say that you should not pick fast algorithms where possible ... only to say that the exact algorithm chosen to deliver a function might not be nearly so tricky a choice these days. Chose an algorithm you can implement that will enable you to get the functions and features done quickly enough. Also , I'd advocate picking a main stream programming language that would have a large number of bodies of work (samples) you can draw from.


Using OOPS techniques can free you to revisit parts of your code when and if you decide that you need more optimizing in the future.

The important thing is to get started on inventing new graphics tricks. That's what we need ... refreshing apps and functions and games.


www.ggaliens.com

OC-NightHawk
11-07-2003, 08:30 PM
Originally posted by markyjerky
The important thing is to get started on inventing new graphics tricks. That's what we need ... refreshing apps and functions and games.

www.ggaliens.com

I've found that before you can reinvent the wheel you need to understand the wheel. Thats why so far my graphics engine is not that advanced yet. But as I get features under my belt I'll just keep adding to it and tweak the existing portions for better performance if I find a new trick. My to do list includes cg shaders and upgrading to dx9. Of course I'll have to buy a new graphics card to be able to properly test it. :D

markyjerky
11-07-2003, 08:36 PM
It's not about the wheel.

Just get the Wheels from "Pep-Boys". If one does not know how to leverage and learn about stock software items and algorithms ... that's not generally a 3D problem per-se ... more a problem of just needing to gain experience.

Some people see car parts and want to build cars. I see car parts and want to make Gizmos. Naturally I'm just speaking metaphorically.

Come to www.ggaliens.com ... let's build monsters and Gizmos together.

CGTalk Moderation
01-16-2006, 07:00 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.