Doom Comic
Register | User Profile | Member List | F.A.Q | Privacy Policy | New Blog | Search Forums | Forums Home
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Classic Doom > Source Ports > My java 1.4 doom engine.
 
Author
All times are GMT. The time now is 07:54. Post New Thread    Post A Reply
MarkusP
Warming Up


Posts: 14
Registered: 05-02


I posted this in the source ports forum first, but that place seems a bit dead. ;)

Anyhow, I started making a doom compatible java 2.5d engine a while back, and now it finally renders Doom1 levels properly.

If you have J2SE1.4 installed, you can check it out here.
It's not very optimized yet, so expect about 25 fps on a 750 mhz computer.


Comments are extremely welcome.

Old Post 05-11-02 23:49 #
MarkusP is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Lord FlatHead
man overboard


Posts: 2925
Registered: 06-00


Well that looks pretty cool. It's hitting about 35fps on my Pentium III 900Mhz, too. Would there be a way to go into a higher resolution though ? 320x200 on a 1280x960 desktop is just a little too small for my comfort. A great job on the engine though, let us know when the "blowing shit up" part of it is completed.

Last edited by Lord FlatHead on 05-12-02 at 00:31

Old Post 05-12-02 00:22 #
Lord FlatHead is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
nxn
meephead


Posts: 5398
Registered: 09-01


damn, didn't expect it to be that good. Could you make it move a little faster though? Just feels wierd to not be running 90mph.

__________________
What once was moose is now all meep.

Old Post 05-12-02 01:20 #
nxn is offline Profile || Blog || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
MarkusP
Warming Up


Posts: 14
Registered: 05-02


Yeah, the engine can be run in any resolution, but for the sake of speed, I'm probably going to keep it at very low ones for now. =)

The stand-alone version tries to run in fullscreen 320x200 mode (doesn't work on linux, for some reason), so you won't have to change your resolution to be able to see the details.

The next two things I'm going to fix are the middle texture in two-sided linedefs, and the speed. Right now it renders the entire level all the time.. I haven't been able to figure out how doom cut out the hidden areas.


Thanks for the feedback!

Old Post 05-12-02 02:25 #
MarkusP is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
stphrz
I use a blowtorch to make crme brle


Posts: 997
Registered: 05-00



I haven't been able to figure out how doom cut out the hidden areas.
I'm guessing the original source code could give you guidance in that area. I know the Doom engine uses the nodes resource for that (bsp). Exactly how it works I have no idea. I haven't taken the time to understand the math involved. Besides I'm not a coder so C++ looks like jibberish to me. Shouldn't be too hard to port the necessary code to java.

Old Post 05-12-02 03:52 #
stphrz is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
deadnail
i define my reality through misery


Posts: 2144
Registered: 06-00



MarkusP said:
(doesn't work on linux, for some reason)
Oh the reason isn't odd, it's commonplace in it's obscurity. Linux is intended to break down on you on a regular basis so you spend less of your time doing things you like and more time fixing the OS, unless of course, you enjoy fixing an OS, which is what hooked the entire Linux fanbase. Yeah, both of 'em. =)

__________________
who put all this dirt in my machine?

Old Post 05-12-02 12:10 #
deadnail is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
stphrz
I use a blowtorch to make crme brle


Posts: 997
Registered: 05-00



deadnail said:
Oh the reason isn't odd, it's commonplace in it's obscurity. Linux is intended to break down on you on a regular basis so you spend less of your time doing things you like and more time fixing the OS, unless of course, you enjoy fixing an OS, which is what hooked the entire Linux fanbase. Yeah, both of 'em. =)
There you go again :) The fact is, it is odd that it doesn't work with Linux. Java is cross platform. As long as the proper version of the VM is installed it should work the same. Unless of course there is something wrong with the way he has Java set up in Linux, which is possible I guess but unlikely since he seems to know what he's doing :P

Old Post 05-12-02 22:31 #
stphrz is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Jon
Freedoom Bloke


Posts: 1351
Registered: 09-00


Yeah deadnail, java is supposed to be cross platform (of course it fails it) so this is suns problem, not linux's. I bet it doesn't work on solaris either.



It's not very optimized yet, so expect about 25 fps on a 750 mhz computer.



That sounds really impressive for java, I imagine you must be pretty talented :) I have to wait a day to check it out though.

__________________
Jon Dowland || w

Old Post 05-12-02 23:10 #
Jon is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
MarkusP
Warming Up


Posts: 14
Registered: 05-02


Oh, I don't know the first thing about Linux. ;) I can barely get the darn thing to boot without getting a "LI01010101010101010101..."-flood.

Anyway, I just updated it on the site. It's a bit faster now, had middle textures, and should run at the same speed on all computers.

I'll add sprites tomorrow.


Somtime in the future (after everything works), I plan on making this multi-player.. Playing multiplayer doom in an applet just seems very appealing to me. =)

Old Post 05-12-02 23:24 #
MarkusP is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Fredrik


Posts: 11685
Registered: 05-00


54fps, nice

Old Post 05-12-02 23:31 #
Fredrik is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
deadnail
i define my reality through misery


Posts: 2144
Registered: 06-00


I know about Java dammit I was just taking an op to hose Loonix once again. =P

Personally I'm still waiting for 2 player support in a Java NES emulator. Haven't heard of that yet. =(

__________________
who put all this dirt in my machine?

Old Post 05-13-02 00:22 #
deadnail is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
fraggle
Filled with the code of Doom


Posts: 7730
Registered: 07-00



MarkusP said:
Yeah, the engine can be run in any resolution, but for the sake of speed, I'm probably going to keep it at very low ones for now. =)

The stand-alone version tries to run in fullscreen 320x200 mode (doesn't work on linux, for some reason), so you won't have to change your resolution to be able to see the details.

The next two things I'm going to fix are the middle texture in two-sided linedefs, and the speed. Right now it renders the entire level all the time.. I haven't been able to figure out how doom cut out the hidden areas.


Thanks for the feedback!

Well, from what I understand, it cuts out a lot simply by checking that the bounding boxes of each node are in the field of view (if they arent, they can obviously be discarded immediately). Also, when it renders the textures, the textures are not rendered immediately but the texture details are instead stored into a temporary buffer. Closer textures take precedence over further away ones. The textures are only rendered after the whole tree has been traversed.

Old Post 05-13-02 14:22 #
fraggle is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
MarkusP
Warming Up


Posts: 14
Registered: 05-02


Yeah, I noticed the bounding-boxes of the nodes and now I cut out the obviously-not-in-view parts of the level. Also, I made it simply stop going down the tree if all columns have been rendered with either one-sided linedefs, or sidedefs that fill the entire column with the upper and lower textures.

It still seems like it's evaluating an overly large number of sectors though. At first, I thought the REJECT map took care of what sectors could be seen from which, but it doesn't seem to work that way at all.

Old Post 05-13-02 15:00 #
MarkusP is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Linguica


Posts: 3951
Registered: 05-00



MarkusP said:
At first, I thought the REJECT map took care of what sectors could be seen from which, but it doesn't seem to work that way at all.
The reject map determines if monsters can see to a certain part of the map from another part of the map. The BSP is used for visibility calculations.

Old Post 05-13-02 22:08 #
Linguica is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Linguica


Posts: 3951
Registered: 05-00


BTW, you should think about using the Freedoom textures (http://freedoom.despayre.org:81) instead of the copyrighted ones, just to sidestep any possible legal blah blah.

Old Post 05-13-02 22:11 #
Linguica is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Jon
Freedoom Bloke


Posts: 1351
Registered: 09-00


:) aye aye good idea

__________________
Jon Dowland || w

Old Post 05-13-02 22:16 #
Jon is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Fredrik


Posts: 11685
Registered: 05-00


Yes my crappy textures must get famous.

Old Post 05-13-02 22:17 #
Fredrik is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
nxn
meephead


Posts: 5398
Registered: 09-01


why would he need to do that if all he's doing is using the shareware wad?

__________________
What once was moose is now all meep.

Old Post 05-13-02 22:17 #
nxn is offline Profile || Blog || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Fredrik


Posts: 11685
Registered: 05-00


The shareware WAD is NOT freeware or public domain or anything like that.

Old Post 05-13-02 22:22 #
Fredrik is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
nxn
meephead


Posts: 5398
Registered: 09-01


I thought the rights to shareware were the same as freeware except that with shareware you don't have the full thing or you're on a time trial.

__________________
What once was moose is now all meep.

Old Post 05-13-02 22:25 #
nxn is offline Profile || Blog || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Fredrik


Posts: 11685
Registered: 05-00


Well, actually... as far as my intuition goes, this usage of the shareware WAD should be perfectly legal if just the license agreement is shown to the player. Fact, the applet just downloads a copy of the shareware WAD and plays in the 'source port'. That shouldn't be illegal.

Old Post 05-13-02 22:28 #
Fredrik is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
MarkusP
Warming Up


Posts: 14
Registered: 05-02


Argh, I need to let go of this visability-stuff now. I've broken the engine three times, and had to revert back to an older backup.
I'll just leave it as it is, for the time being. ;)


And the reason I don't use the freedoom-textures is that the .ZIP file would be too big. The shareware doom1.wad zipped is only just above one meg.
And I think I read some statement from idsoftware from when they released the doom source code, where they mentioned that people were allowed to redistribute the doom1.wad file with their ports, as long as you included the information on how you were allowed to distribute it.. or something similar to that.
I might be wrong.


I should probably try finding out if what I'm doing is illegal or not.

Old Post 05-14-02 12:05 #
MarkusP is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
MarkusP
Warming Up


Posts: 14
Registered: 05-02


id owns all rights to the shareware version of doom1, right?
Anyone have any email-adresses I could mail them on and ask?

Old Post 05-14-02 13:00 #
MarkusP is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
fraggle
Filled with the code of Doom


Posts: 7730
Registered: 07-00



Linguica said:
BTW, you should think about using the Freedoom textures (http://freedoom.despayre.org:81) instead of the copyrighted ones, just to sidestep any possible legal blah blah.
I dont think thats a problem. doom1.zip is just a zipped version of doom1.wad.

Old Post 05-14-02 17:18 #
fraggle is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
MarkusP
Warming Up


Posts: 14
Registered: 05-02


The site is updated. The sprites kinda broke on me, so it's still the same old applet. ;)
It comes in three flavors now, though.

And sprites and clipping is coming this weekend.

Old Post 05-16-02 23:51 #
MarkusP is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
All times are GMT. The time now is 07:54. Post New Thread    Post A Reply
 
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Classic Doom > Source Ports > My java 1.4 doom engine.

Show Printable Version | Email this Page | Subscribe to this Thread

 

Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is OFF
vB code is ON
Smilies are OFF
[IMG] code is ON
 

< Contact Us - Doomworld >

Powered by: vBulletin Version 2.2.5
Copyright ©2000, 2001, Jelsoft Enterprises Limited.