Hi !
Featured games (84)
games approved by the League of Dukes
Games in Showcase (604)
Games in Android Showcase (171)
games submitted by our members
Games in WIP (653)
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  
  How hard can it be to make java3d into ...  (Read 980 times)
0 Members and 1 Guest are viewing this topic.
Offline zingbat

Senior Devvie

Medals: 1

Java games rock!

« Posted 2003-09-26 19:58:27 »

... an useful pluggable architecture ?

Here is my idea. The entire engine would be divided into plugable modules. Each module could be replace in real time by freezing the engine replacing the module and then unfreazing the engine back again. But before that cached data was disposed off and have to be requested again to be read by the new module. That module would then have to be initialized into a state similar in functinality to the one the older module was in.

I don't know very much of OpenGL but i belive that it is a average complex api that does much more than drawing polygons. Maybe it could be used to accelerate other parts of the engine besides the rendering part.

Another useful part are software renders and software modules that do what accelerated modules would do but in software. More stable, less dependent on the computer drivers and configuration.

Then there are the advantages of debugging in a app organized in modules. Its like with television sets. If you dont know what block has the fault simply replace modules and see what works.

Anyone dares to sujest how this module subdivison would be done and what would be the protocols for each to communicate with each other ? That is in what format and what info would have to be transfered between different modules ? And how would the programmer define the meaning of "similar state functionality"  when replacing modules ?
Offline misterX

Junior Devvie

java forever!

« Reply #1 - Posted 2003-09-27 09:02:30 »

...sounds complicated!   Roll Eyes Tongue
Can you give practical examples of "should be" modules and what they are good for?

Why not classic & easy-to-use libraries?
Offline zingbat

Senior Devvie

Medals: 1

Java games rock!

« Reply #2 - Posted 2003-09-28 08:21:28 »

...sounds complicated!   Roll Eyes Tongue
Can you give practical examples of "should be" modules and what they are good for?

Modules right. By module i mean a piece of a pluggable architecture, but not just that, something that has a state and a set of specific cached data and is integrated in a system. That piece can be unplugged and replaced in real-time  without affecting the engine current system status and functionality. Cached data is flushed and the fata is requested again for the new module to restore the engine status.

One of the biggest pratical advantages of this is debugging and error recovery. If something goes wrong or an error is detected in real-time the engine runs a recovery method and replace the module that caused the fault by another and recaches all data to get the engine running again in the same state.
Another is flexibility. You want to use the last techs like shaders just add an improved module or download it at the internet even without stoping your game and voila you can run your old games with shaders, shadows. However this wont change the game itself it would only improve effects that already exist or add new visual effects.


Why not classic & easy-to-use libraries?

A lot of people in these foruns could tell you why.  Grin

Supose you want to use OpenGL instead of DirectX you need to download the java3d sdk pre-compiled for OpenGL. You cant work with both systems without installing two JVMs. You want to use a software rendering with java3d for compatibility with the macs ? There isnt one and you cant do one because the code inside java3d is protected.
Another reason ? Because the code is protected you have to wait and be dependent of Sun politics and the team that is developing the technology to have access to the new features like pixel/vertex shaders. Hardly an acceptible solution for people that are targeting a product that uses the last tech and want to develop in a clean architecture like java.
Pages: [1]
  ignore  |  Print  
You cannot reply to this message, because it is very, very old.

SHC (26 views)
2015-08-01 03:58:20

Jesse (19 views)
2015-07-29 04:35:27

Riven (40 views)
2015-07-27 16:38:00

Riven (21 views)
2015-07-27 15:35:20

Riven (24 views)
2015-07-27 12:26:13

Riven (14 views)
2015-07-27 12:23:39

BurntPizza (36 views)
2015-07-25 00:14:37

BurntPizza (46 views)
2015-07-24 22:06:39

BurntPizza (30 views)
2015-07-24 06:06:53

NoxInc (37 views)
2015-07-22 22:16:53
List of Learning Resources
by gouessej
2015-07-09 11:29:36

How Do I Expand My Game?
by bashfrog
2015-06-14 11:34:43

List of Learning Resources
by PocketCrafter7
2015-05-31 05:37:30

Intersection Methods
by Roquen
2015-05-29 08:19:33

List of Learning Resources
by SilverTiger
2015-05-05 10:20:32

How to: JGO Wiki
by Mac70
2015-02-17 20:56:16

2D Dynamic Lighting
by ThePixelPony
2015-01-01 20:25:42

How do I start Java Game Development?
by gouessej
2014-12-27 19:41:21 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‑
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!