Java-Gaming.org    
Featured games (81)
games approved by the League of Dukes
Games in Showcase (498)
Games in Android Showcase (117)
games submitted by our members
Games in WIP (564)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Quake II/III can be done in Java  (Read 3095 times)
0 Members and 1 Guest are viewing this topic.
Offline Grom

Junior Member




Rats...


« Posted 2003-01-03 00:29:30 »

/me sticks his neck out and states thusly:

Maybe I'm all alone like a guy from Saskatchewan who's snowmobile ran out of gas, but...

I believe a game like QuakeIII would work fine in Java 1.4.1_01 running on top of the LWJGL on a GeForce2/1GHz box.

Here are some things going for this idea:
1. The MD3 code is available in Java, with animation examples available in C++ all over the net.
2. The BSP code is available in C++ OGL/SDL.
3. LWJGL provides a good framework to start with - full OpenGL with shader extensions (grass examples shows them working) - even OpenAL sound.
4. the AI code for the mobs in Quake II is between 10KB and 20KB per mob - straight C, no system/gui calls.

Quake III is getting what, 300fps on some systems? At the end of the day, I don't see Java being much slower than C++ (thanks to nio) at blasting ogl commands to the video card. Frustrum culling and PSV code would likely run at nearly the same speed too. I doubt the C AI code from Quake II (if anyone could make sense of it) would run much slower in Java. No garbage collection required...

So it would be easy to list all of the reasons doing the above would be hard. We should take those reasons and make a todo list out of them.

So what's the point? These tools already exist in C++. Glad you asked...

Imagine having Quake II/III "scenegraph" and model animation + sound capabilities in Java. I believe this would be the catalyst required to seriously move into Java for games. With the constant advance in CPU power I would see no reason to use C++ ever again.

I remember purchasing Quake the day it was released. I had a slow PC, (maybe 100MHz?) and cheap video card. Yet, it ran 20+ fps and provided true 3d maps for me to explore. I couldn't believe John Carmack (et. all) was actually able to make that work. The spark for me
was actually seeing it work.

I believe Quake II/III can be done in Java - mostly because of todays 3D cards and because of what I have seen Java do relative to C++. But I accept that most people would not - until they saw it work. It's only a matter of time until the pieces fall together...

I will check back to see how well my neck is doing :-)

Offline Captain-Goatse

Junior Member




I suck at teh 2D. XBOX IS BIG LOL!111


« Reply #1 - Posted 2003-01-03 05:08:57 »

Interesting thing to see would be a port of q2 source with lwgl or gl4java, then we could truly compare the speed.
Offline Herkules

Senior Member




Friendly fire isn't friendly!


« Reply #2 - Posted 2003-01-03 07:00:13 »

Yes, I believe that Asteroids can be done in Java as well.

Cool, but did you notice that QIII already has been released?? Some long time ago? So theres absolutely no need to do it again. Would be pretty much like just another Asteroids, Breakout, Pong, Ultima2,...
Who you think would buy a JQuake3 in the presence of things like SplinterCell?

So that is actually bad news that even people here believe that only 2years old stuff can be re-done in Java.

Nobody here to release Doom3-like games before Doom3 hits the shelves??

(Don't think that'll make much sense, but that's another question)

HARDCODE    --     DRTS/FlyingGuns/JPilot/JXInput  --    skype me: joerg.plewe
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #3 - Posted 2003-01-03 07:22:10 »

Quote

Cool, but did you notice that QIII already has been released?? Some long time ago? So theres absolutely no need to do it again.


Ohh come on Herkules - don't be so pessimistic!

Tech Demos are released every day - they have NO purpose whatsoever, besides showing off some technical features.

What you're saying is that no painting shop should carry more than one color blue - because blue _IS_ the same color - no matter how you spin it!

Sun got the F1 demo made - see how much attention that made, despite numerous (better) F1 games being made. It is all about showing WHAT Java is capable of. What is being showed off today is a couple of tetris and pacman clones - we need far better games to show Java as a viable platform.

Sure - Quake 4 would be even better, but given any reasonable timeframe, this doesn't seem feasible!

I say - bring on a JQuake 2 - I'd love to see that - I might even contribute (I am a bit tied down by my two priority projects - lwjgl, and life)

Offline Herkules

Senior Member




Friendly fire isn't friendly!


« Reply #4 - Posted 2003-01-03 08:12:03 »

Quote


Ohh come on Herkules - don't be so pessimistic!


I apologize. I'm old, scynic and life has made me hard....

Quote

Tech Demos are released every day - they have NO purpose whatsoever, besides showing off some technical features.


Yes, but typically they show what can be done, and not was has been done several years ago...


Quote

Sun got the F1 demo made - see how much attention that made, despite numerous (better) F1 games being made.


Attention? Where? Despite the fact that nobody really saw it, there wasn't much to read outside java-gaming.org.

Quote

It is all about showing WHAT Java is capable of. What is being showed off today is a couple of tetris and pacman clones - we need far better games to show Java as a viable platform.


Yes, so why show the world that we can do things nobody nolonger cares for bc. they for long are common practise? To that respect a JQuake2 is just a better Tetris-clone.

Quote

I say - bring on a JQuake 2 - I'd love to see that - I might even contribute (I am a bit tied down by my two priority projects - lwjgl, and life)


Don't get me wrong - I'd love to see it myself! That WOULD be a proof it can be done at all! But don't expect any recognition in the games development world (or even in the gamers world). Would be an 'aha', no 'wow!'.

This wouldn't create any argument to convert to Java in mainstream games development.

HARDCODE    --     DRTS/FlyingGuns/JPilot/JXInput  --    skype me: joerg.plewe
Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #5 - Posted 2003-01-03 08:42:18 »

Quote
Don't get me wrong - I'd love to see it myself! That WOULD be a proof it can be done at all! But don't expect any recognition in the games development world (or even in the gamers world). Would be an 'aha', no 'wow!'.


babysteps, babysteps Smiley

Indeed a Quake 4 or whatever would make people go  Shocked - however I don't see this happening untill someone with a huge commercial interrest does this - and before they do that they need to see some tech demos Wink

Offline Pyros

Senior Newbie




Let's make Java games rock !


« Reply #6 - Posted 2003-01-03 14:24:34 »

Quote
Yes, I believe that Asteroids can be done in Java as well.


I believe Q2 engine would go just fine in a non-fps game. If you had a slow paced adventure or RPG with that engine, the textures could be of a lot higher quality as the movement would be slower altogether, game concentrating on other issues than straight action.

Ever noticed that not all AAA-games are fpshooters?

I think there's too much talk about getting 100% equal or even faster than C++. If you get to 70% speed of C++ you can make market-accepted hit-games as long as you stay away from the fast-action-genre and stick to RPG, RTS, Adventure, etc.

Why then would you do a hit RPG or whatever with 70% the speed of C++? Because Java allows you to complete it half the time (incl. ports to several platforms if needed).
Offline Breakfast

Senior Member




for great justice!


« Reply #7 - Posted 2003-01-03 18:11:52 »

If we had something like that written in Java and the sources were available then people could look at how it worked and learn about the API for themselves. There just isn't enough running example code right now for that to be possible so anyone trying to learn to use java for working with 3d games is fumbling around in the dark, pretty much.
Offline Grom

Junior Member




Rats...


« Reply #8 - Posted 2003-01-03 18:47:33 »

I think I still have my neck:-)

Maybe some other things to consider:

Half-Life and Team-Fortress Classic were two of my favorite games, and continue to be unbelievably successful - and they use the old Quake II engine.

Unreal Tournament was (still is?) one successful game - yet the technology is only slightly (relative) better than Quake II. Counter-strike is a great example of a modification of an older engine that concentrated on game play (and wildly succeeded).

I mention this because perhaps if QuakeIII world/character/animation tools were available in Java you would see many Java 3D games that would grow to have many more gameplay elements developed much faster than was ever possible.

Also - to stick my neck out further - I believe Doom III is possible in Java with one caveat: The Java version would have access to the GeForce 4 hardware shadow support instead of doing it the hard way they currently seem to be doing it (creating new polygons for all of the shadows I think).

Though I think this level of technology isn't required - gameplay is more important. I think this more than anything is where Java will prove itself - by giving developers the ability to spend much more time to design and code new types of gameplay.

Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #9 - Posted 2003-01-03 19:54:56 »

One thing that has been poking at me since the start of this thread: why hasn't anyone done this using gl4java?

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Pyros

Senior Newbie




Let's make Java games rock !


« Reply #10 - Posted 2003-01-03 20:13:42 »

Quote
One thing that has been poking at me since the start of this thread: why hasn't anyone done this using gl4java?


A wild guess: those competent enough either

a) are not interested

or

b) do it in c++

:-/
Offline Grom

Junior Member




Rats...


« Reply #11 - Posted 2003-01-03 20:58:54 »

Quote
One thing that has been poking at me since the start of this thread: why hasn't anyone done this using gl4java?


I can't comment on gl4java as it no longer works on any boxes (tried 4) I have. Newer NVDA drivers.

Perhaps people aren't aware of how good the LWJGL is, or that there is Java MD3 code available, or that it is relatively easy to port the OpenGL demos (BSP/PVS/MD3 Animation) demos to Java?

Maybe someone with some spare time just needs to add this code to the LWJGL? I noticed someone ported NeHe lesson 26 (I think) to Java (Gl4Java I think - tired.).

All I can do is mention this and hope it sparks some interest.

Offline cfmdobbie

Senior Member


Medals: 1


Who, me?


« Reply #12 - Posted 2003-01-03 21:13:42 »

Quote
Also - to stick my neck out further - I believe Doom III is possible in Java with one caveat: The Java version would have access to the GeForce 4 hardware shadow support instead of doing it the hard way they currently seem to be doing it (creating new polygons for all of the shadows I think).


Why do you think the native C/C++ version doesn't have access to this? Huh  Carmack's avoiding GeForce4-specific features because not everyone's got a GeForce4.  The Java version could use them, sure, but you'd be wise not to for exactly the same reasons that the native version isn't using them.

Hellomynameis Charlie Dobbie.
Offline cfmdobbie

Senior Member


Medals: 1


Who, me?


« Reply #13 - Posted 2003-01-03 21:26:25 »

Quote
I can't comment on gl4java as it no longer works on any boxes (tried 4) I have. Newer NVDA drivers.


Yeah, it stopped working on my main machine some time ago. Sad  Both in Windows and Linux! Sad Sad


Quote
Maybe someone with some spare time just needs to add this code to the LWJGL? I noticed someone ported NeHe lesson 26 (I think) to Java (Gl4Java I think - tired.).


I'm not an LWJGL dev, but I can say with some conviction that an MD3 loader will never make it into LWJGL - it's being kept as lightweight as possible so things like model loaders aren't appropriate.

There is, however, the Shaven Puppy Game Library by the same author - maybe Cas would put it in there.  Or, you could put it in a small library intended to be used with LWJGL.  Hmmm, I see the need of a j3d.org for LWJGL...

Hellomynameis Charlie Dobbie.
Offline Abuse

JGO Knight


Medals: 12


falling into the abyss of reality


« Reply #14 - Posted 2003-01-03 22:51:14 »

Quote


Why do you think the native C/C++ version doesn't have access to this? Huh  Carmack's avoiding GeForce4-specific features because not everyone's got a GeForce4. ┬áThe Java version could use them, sure, but you'd be wise not to for exactly the same reasons that the native version isn't using them.


You make an app. that needs a specific piece of hardware, and, if your app. is good enough,
ppl will go out and buy that hardware.

Thats how software pushes hardware forwards.
I only upgrade, when I buy a game that needs a faster machine, and i'd wager thats how most ppl think.

The same mecahnism is exploited for console games as well, though it is done to maximize profit, rather than push forward technology. (damn those evil corporations Angry )

Make Elite IV:Dangerous happen! Pledge your backing at KICKSTARTER here! https://dl.dropbox.com/u/54785909/EliteIVsmaller.png
Offline cfmdobbie

Senior Member


Medals: 1


Who, me?


« Reply #15 - Posted 2003-01-03 23:40:58 »

Ahh, but we're not normal people! Grin  You're describing hardcore gamers and technophiles perfectly, but there's a huge market out there for games to run on 400MHz PIIs with 64MB RAM - most normal computer users would never upgrade their hardware just to play a new game.  In fact, most normal computer users don't even read the system specs, and when things then go wrong it's the developer/producer/publisher's fault! Wink

Some time ago I was on the phone to a family friend trying to work out why a floppy from a magazine didn't want to work in her PC, then I had the thought of asking exactly what magazine it was.  Amiga Action.  Doh! Shocked



Interesting enough, I've done a bit of research and it looks like John Carmack is actually using GeForce4 features.  It's just that he's also implementing fall-back systems for cards that don't support certain things...!

Hellomynameis Charlie Dobbie.
Offline Abuse

JGO Knight


Medals: 12


falling into the abyss of reality


« Reply #16 - Posted 2003-01-04 01:38:14 »

good point Grin

ah, 2hell with all the stupid ppl Roll Eyes

Make Elite IV:Dangerous happen! Pledge your backing at KICKSTARTER here! https://dl.dropbox.com/u/54785909/EliteIVsmaller.png
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

Grunnt (23 views)
2014-09-23 14:38:19

radar3301 (14 views)
2014-09-21 23:33:17

BurntPizza (31 views)
2014-09-21 02:42:18

BurntPizza (22 views)
2014-09-21 01:30:30

moogie (20 views)
2014-09-21 00:26:15

UprightPath (30 views)
2014-09-20 20:14:06

BurntPizza (34 views)
2014-09-19 03:14:18

Dwinin (48 views)
2014-09-12 09:08:26

Norakomi (75 views)
2014-09-10 13:57:51

TehJavaDev (108 views)
2014-09-10 06:39:09
List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06

List of Learning Resources
by SilverTiger
2014-07-31 11:54:12

HotSpot Options
by dleskov
2014-07-08 01:59:08
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!