Java-Gaming.org    
Featured games (81)
games approved by the League of Dukes
Games in Showcase (491)
Games in Android Showcase (112)
games submitted by our members
Games in WIP (556)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: 1 2 [3]
  ignore  |  Print  
  Porting Quake III to Java3D  (Read 19373 times)
0 Members and 1 Guest are viewing this topic.
Offline Mojomonkey

Senior Member




ooh ooh eee eeee


« Reply #60 - Posted 2006-01-05 17:47:26 »

Pretty much locking and display lists were the big ones. However, we implemented these in a very generic way so it can be used for any scene element (i.e. didn't do it just for the Quake test), thus it could probably be faster in some ways if you are just doing it for the Quake test. The demo also pointed out a few areas for improvement (better texture state organization, etc).

This test really was great for allowing us to find huge performance gains quickly. We still have a lot of things we want to implement that it brought forward.

Don't send a man to do a monkey's work.
Offline Mojomonkey

Senior Member




ooh ooh eee eeee


« Reply #61 - Posted 2006-01-05 18:52:41 »

The latest test results as reported by Renanse on the jME forums:

Quote
I may sound like a broken record here, but since this is .10 related development, I'm putting a lot of time into the BSP / Portal arena...

On that note, here's the latest FPS/mem comparisons for the Q3 demo.  The mem readings are from trackings done in YourKit and are done in the following way:  start the scene, kill cpu profiling, force garbage collection, fly around the level on a preset path, then fly up in the sky looking down at the level until the whole thing is visible. (total time 2 minutes)

Heap: (Used is average over last 30 secs)
jME: Allocated 24.2MB  Used: 14.3MB
j3D: Allocated 52.1MB  Used: 34.0MB
Xith: Allocated 59.4 MB  Used: 39.5MB

Non Heap:
jME: Allocated 9.3MB  Used: 8.3MB
j3D: Allocated 11.5MB  Used: 10.9MB
Xith: Allocated 11.2 MB  Used 10.9MB

Summary: (totals)
jME: Allocated 33.5MB  Used 22.6MB
j3D: Allocated 63.6MB  Used 44.9MB
Xith: Allocated 70.6MB  Used 50.4MB

jME uses about half the memory of the other two engines for this demo. 

On to FPS: (on all of them I wait 30secs into the start for burn-in)

Initial Position:
Xith: 210FPS
jME: 341FPS
Java3D: 356FPS

Initial Position looking opposite direction: (down the hall)
Xith: 40FPS
jME: 120FPS
Java3D: 122FPS

Top down:
Xith: 15FPS
jME: 55FPS
Java3D: 80FPS


So all in all, we're looking pretty good.  Once we had all the checks in place to make for a generic solution the FPS went down a little bit for some and up for others.  I also made a few changes to the jME quake3 demo to get our texture calls to be the same as Java3D's that may have brought things 1-2 FPS down.  Remember also that we have mouse control.

I believe we could squeeze out a few more FPS through various small tweaks, but I think Java3D's bump is due to using more than one thread.  We may eventually try that and we have other tricks up our sleeves besides, so stay tuned.

EDIT: I can't add... sheesh

You can also read more of the thread discussing this on the jME forums if you wish: http://www.jmonkeyengine.com/jmeforum/index.php?topic=2597.45

Don't send a man to do a monkey's work.
Offline arne

Senior Member




money is the worst drug- we should not let it rule


« Reply #62 - Posted 2006-01-05 19:01:13 »

Will, arne, should w modify Xith pipeline to use display lists for static geoemetries ?
What other changes would bring performances to a higher level ?
@jME team : any trick to give ? I think rather than to be in competition we should help us mutually.  Smiley

yeah - we should - maybe make it switchable with the OBB stuff, so the faster method can be used.
It's really bugging, that xith3d is now the "worst" scenegraph-renderer of all three.

Mmh I could try to give a look, but I'd actually concentrate on JOODE, and there's IOI (International Olympiad in Informatics)  in Summer (gotta train for it - want to be in the german team Wink ) and the second round of a german-informatics contest, and I need that for my A-level...

:: JOODE :: Xith3d :: OdeJava ::
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Amos Wenger

Senior Member




Everything's possible, but not everything's fun...


« Reply #63 - Posted 2006-01-06 12:42:42 »

Do you remember when I was talking about making a fusion of all game middlewares ?
I had too few experience and was a lot too optimistic, but now we have more facts : developers, although not being clearly agressive, are competiting, with "their own scenegraph". And now, is it a good thing for the community ? I don't think so.. What are the differences now, between jME, Java3D and Xith3D ?
 - From what I know, Java3D and Xith3D have the same "interface", although they may have been altered a bit over the years.
 - So it would not really be hard to merge, heh ?
For jME, it's just another story. But if we cannot see clearly different targets for the scenegraphs, then there's certainly one better approach than another, right ?
So we could not only do a dummy merge but make an unique implementation plan for a "java 3d game oriented scene graph".
Wouldn't that be feasible ?
Having took a look to Aviatrix3D, it appeared clearly that it was data visualization oriented, and not for games. That's why I don't speak of it here.

Cheers

"Once you start working on something, don't be afraid of failure and don't abandon it. People who work sincerely are the happiest"
Offline zparticle

Senior Member




Thick As A Brick


« Reply #64 - Posted 2006-01-06 16:14:15 »

Quote
And now, is it a good thing for the community ? I don't think so..

Actually it is a good thing. The various methods have shown what method is most efficient. If there had only been one libary there would have been no way to find this out. Competition is a good thing, always.


Offline Amos Wenger

Senior Member




Everything's possible, but not everything's fun...


« Reply #65 - Posted 2006-01-06 16:48:07 »

Quote
And now, is it a good thing for the community ? I don't think so..

Actually it is a good thing. The various methods have shown what method is most efficient. If there had only been one libary there would have been no way to find this out. Competition is a good thing, always.



Hmm.. good point..

Yeah, but, the ideal scenegraph would let you which method to use.
If we would do so, everyone would be encouraged to write/imlement new algorithms and the scenegraph would be very efficient...

"Once you start working on something, don't be afraid of failure and don't abandon it. People who work sincerely are the happiest"
Offline Hornet

Junior Newbie





« Reply #66 - Posted 2006-07-24 16:14:35 »

hey i really hate to ressurect such old threads, but this is really intresting. Im researching java's ability as a language for a game engine. Anyone have any other updates?
Offline Amos Wenger

Senior Member




Everything's possible, but not everything's fun...


« Reply #67 - Posted 2006-07-24 16:36:41 »

hey i really hate to ressurect such old threads, but this is really intresting. Im researching java's ability as a language for a game engine. Anyone have any other updates?
Everyone continued its own way, and Java3D, Xith3D and jME all have their weaknesses.

"Once you start working on something, don't be afraid of failure and don't abandon it. People who work sincerely are the happiest"
Offline kevglass

JGO Kernel


Medals: 159
Projects: 23
Exp: 18 years


Coder, Trainee Pixel Artist, Game Reviewer


« Reply #68 - Posted 2006-07-24 16:39:04 »

Quote
Everyone continued its own way, and Java3D, Xith3D and jME all have their weaknesses.

I'm sure you mean they all have their strengths Smiley

Kev

Offline Marvin Fröhlich

Senior Member




May the 4th, be with you...


« Reply #69 - Posted 2006-07-24 17:44:01 »

Well, I really don't want to commit blasphemy Wink, but I believe the Irrlicht engine (or the java port) is the right tool for an ego shooter. Xith3D with java ODE, JME and Java3D are simply too slow for an ego shooter with physics.
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Hornet

Junior Newbie





« Reply #70 - Posted 2006-07-25 03:46:35 »

Everyone continued its own way, and Java3D, Xith3D and jME all have their weaknesses.

Can you list some in regards to performance, that is my major issue here. I ran Jake 2 with Jogl support and lwjgl and was rather dissapointed at the results. Is it software rendered?, i thought those libs were hardware accelerated.  I havent really exposed myself to java3d and the other scene graphs.

Ive done some searching, what exactly is the signifigance of a java 'binding', is this a euphemism for a JNI call?.

@ qudus, ego?
Offline cylab

JGO Ninja


Medals: 45



« Reply #71 - Posted 2006-07-25 07:34:37 »

What framerates did you get. I found Jake 2 to be very fast...

Mathias - I Know What [you] Did Last Summer!
Offline Marvin Fröhlich

Senior Member




May the 4th, be with you...


« Reply #72 - Posted 2006-07-25 11:36:57 »

Ive done some searching, what exactly is the signifigance of a java 'binding', is this a euphemism for a JNI call?.

Yes, that's it. When you have code written in c/c++ you can create a Java binding through JNI to make use of the c-code from Java.

@ qudus, ego?

Interesting. How do call games like Doom or Quake? Here in Germany we call them "Ego Shooters". Ego is latin and means something like "I" or "my person". So the meanig of "Ego Shooter" is, I'm shooting from my own perspective.

What framerates did you get. I found Jake 2 to be very fast...

I've just run Jake2. And I'm vervy, very impressed. Well, it was so dark, I could nearly see nothing, but the FPS were impressive (~200@1024x768). Irrlicht is not faster than this! But can we achieve it with Xith3D/Java3D/JME, too? I think espeacially the phyiscs will be a problem. A mate of mine has done some tests with JODE some time ago. It was really very complicated and it was simply slow. But Maybe there's a better physics lib for games usable with xith. Does anyone know one?
Offline Amos Wenger

Senior Member




Everything's possible, but not everything's fun...


« Reply #73 - Posted 2006-07-25 11:56:48 »

"Ego Shooter" is, I'm shooting from my own perspective.
FPS : First Person Shooter. It's how we call it in France (yeah, we speak frenglish) and I think, in USA/UK.

A mate of mine has done some tests with JODE some time ago. It was really very complicated and it was simply slow. But Maybe there's a better physics lib for games usable with xith. Does anyone know one?
JOODE was and still is under heavy, heavy development, so don't be frightened about performances it's continually increased.

"Once you start working on something, don't be afraid of failure and don't abandon it. People who work sincerely are the happiest"
Offline Marvin Fröhlich

Senior Member




May the 4th, be with you...


« Reply #74 - Posted 2006-07-25 12:05:25 »

"Ego Shooter" is, I'm shooting from my own perspective.
FPS : First Person Shooter. It's how we call it in France (yeah, we speak frenglish) and I think, in USA/UK.

Ah, thanks. I knew this word, too. And it is used in Germany, too (besides Ego Shooter, shich has the exact same meaning).

A mate of mine has done some tests with JODE some time ago. It was really very complicated and it was simply slow. But Maybe there's a better physics lib for games usable with xith. Does anyone know one?
JOODE was and still is under heavy, heavy development, so don't be frightened about performances it's continually increased.

Thanks. I'll keep an eye on the project.
Offline Amos Wenger

Senior Member




Everything's possible, but not everything's fun...


« Reply #75 - Posted 2006-07-25 12:23:00 »

Thanks. I'll keep an eye on the project.
My next game is a racing game and I plan to do it with JOODE. I made some demos of it some months ago and it worked pretty well (although in very very alpha).

"Once you start working on something, don't be afraid of failure and don't abandon it. People who work sincerely are the happiest"
Offline Marvin Fröhlich

Senior Member




May the 4th, be with you...


« Reply #76 - Posted 2006-07-25 12:47:35 »

Thanks. I'll keep an eye on the project.
My next game is a racing game and I plan to do it with JOODE. I made some demos of it some months ago and it worked pretty well (although in very very alpha).

Cool, may I have a look?
Offline Amos Wenger

Senior Member




Everything's possible, but not everything's fun...


« Reply #77 - Posted 2006-07-25 12:55:13 »

Thanks. I'll keep an eye on the project.
My next game is a racing game and I plan to do it with JOODE. I made some demos of it some months ago and it worked pretty well (although in very very alpha).
Cool, may I have a look?
Unfortunately I lost them some time ago. But within 6 months when my current game is reasonably completed  Cheesy I'll play some more with JOODE (they still need demos).

"Once you start working on something, don't be afraid of failure and don't abandon it. People who work sincerely are the happiest"
Offline Hornet

Junior Newbie





« Reply #78 - Posted 2006-07-25 21:45:47 »

Sorry it was the first time i saw ego substitued for first person. Thought it was a wise crack on the genre.

Anyway, i did some benchmarking on a newer HP machine. Its a pentium D 820, 2gb of ram and a 7300le video card. Jdk 1.5 is installed, and so was microsoft media center edition (bleh) . Also the resolution was 800x600, texture was set to lowest, and it was run in full screen mode. Since i did not see any option for time demo, these numbers were from playing the first level. Yes i know its not scientific.

Lwjgl- @ start frames were varying around 163 fps.
Lwjgl -@ middle fluctuating around 230
Lwjgl -@ end getting 350 in some areas, generally around 250.
Lwjgl -@ Max FPS seen, 420 looking at wall up close.

Fast Jogl - @ start frames were varying from high 60s to 90s.
Fast Jogl - steady increase from dismal start, @ middle after killing 5 monsters before entering 2nd room, frames jumped from 150 to 216.
Fast Jogl - @ end frames were at a steady 160
Fast Jogl - @ Max FPS seen, 330 looking at wall up close.

Jogl - @ start at around 150, drops to 70 during explosions. Battles arent much better.
Jogl - @ middle around 200 fps.
Jogl - @ end once everyone is dead fps was around 230
Jogl - @ Max FPS seen, 315 looking at wall up close.

General Notes.
Lwjgl - seemed to run best, also i did not have to remove vsync to get anything higher then 60fps. The textures on lwjgl didnt seem to be as detailed as jogl.
Fast Jogl - Repetive fire killed my frames, Fps down to around 80 in some cases (multiple bullets drawn).
Jogl - A noticable drop in frames when viewing dead bigger guy is on the floor.

is there a native phsyics api?


Offline DzzD
« Reply #79 - Posted 2006-07-26 11:04:08 »

and what about porting quake 3 in an applet Wink ?

http://dzzd.net/demo/QUAKE/

this will start in soft mode press "H" for about one second to switch to hardware (JOGL)

just for fun...


Offline pepe

Junior Member




Nothing unreal exists


« Reply #80 - Posted 2006-07-26 11:55:36 »

and what about porting quake 3 in an applet Wink ?

http://dzzd.net/demo/QUAKE/

this will start in soft mode press "H" for about one second to switch to hardware (JOGL)

just for fun...


Awwww, the controls.. Almost became mad at cam direction control and i did quit within seconds... Too bad, fior that point, otherwise, it looked interesting...

Home page: http://frederic.barachant.com
------------------------------------------------------
GoSub: java2D gamechmark http://frederic.barachant.com/GoSub/GoSub.jnlp
Offline darkprophet

Senior Member




Go Go Gadget Arms


« Reply #81 - Posted 2006-07-26 13:08:14 »

Texture filtering is alot better on HW mode, less flickering of textures.

DP

Friends don't let friends make MMORPGs.

Blog | Volatile-Engine
Offline DzzD
« Reply #82 - Posted 2006-07-26 18:06:18 »

the model I have used is a 3ds one (convert the level from bsp to 3ds and lost a lot of usefull informations), lightmap and lod(for curved surface) are missing.. there is also no use of bsp tree, basically once the model is converted to 3ds it is bugged that's why the illumination looks false, due to wrong smoothgroups (as the lightmap was missing I put one directional light source to make it looks better).

anyway this demo is not really serious one as i made it in about 30 min a cupple of weeks ago (but I spent about two hour for converting this model from bsp to 3ds!! and was not able to get a good result) by just replacing model of an other working demo....this is just a try but I like the idea of a quake-like game in an applet.

Offline Amos Wenger

Senior Member




Everything's possible, but not everything's fun...


« Reply #83 - Posted 2006-07-26 18:42:15 »

the model I have used is a 3ds one (convert the level from bsp to 3ds and lost a lot of usefull informations), lightmap and lod(for curved surface) are missing.. there is also no use of bsp tree, basically once the model is converted to 3ds it is bugged that's why the illumination looks false, due to wrong smoothgroups (as the lightmap was missing I put one directional light source to make it looks better).

anyway this demo is not really serious one as i made it in about 30 min a cupple of weeks ago (but I spent about two hour for converting this model from bsp to 3ds!! and was not able to get a good result) by just replacing model of an other working demo....this is just a try but I like the idea of a quake-like game in an applet.
Impressive but please take 10 minutes to have better control. First, if you could have an area of 20x20 pixels in the center of the screen where it's not moving when the cursor is in, it would be great.

"Once you start working on something, don't be afraid of failure and don't abandon it. People who work sincerely are the happiest"
Offline darkprophet

Senior Member




Go Go Gadget Arms


« Reply #84 - Posted 2006-07-26 18:55:59 »

The controls seem to be velocity based, i.e. you change the velocity when the mouse changes and you change the view everyframe according to the velocity.

If you removed velocity, and just moved according to mouse deltas...much better Smiley

DP

Friends don't let friends make MMORPGs.

Blog | Volatile-Engine
Pages: 1 2 [3]
  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.

Nickropheliac (15 views)
2014-08-31 22:59:12

TehJavaDev (23 views)
2014-08-28 18:26:30

CopyableCougar4 (29 views)
2014-08-22 19:31:30

atombrot (41 views)
2014-08-19 09:29:53

Tekkerue (39 views)
2014-08-16 06:45:27

Tekkerue (35 views)
2014-08-16 06:22:17

Tekkerue (25 views)
2014-08-16 06:20:21

Tekkerue (36 views)
2014-08-16 06:12:11

Rayexar (72 views)
2014-08-11 02:49:23

BurntPizza (49 views)
2014-08-09 21:09:32
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!