The Massassi Temple: Forums  

Go Back   The Massassi Temple: Forums > Main Massassi Forums > Discussion Forum

Closed Thread
 
Thread Tools
Title: LucasArts was too lazy to fix Jedi Knight, so we did
Emon is online now Emon
Imon, umon...everymon!
LucasArts was too lazy to fix Jedi Knight, so we did | Old Posted: 09-25-2009, 09:39 AM #1

ZeqMacaw and I have been working on a wrapper for the Direct3D part of Jedi Knight. Zeq gave me a build of it this morning that fixes the awful HOM-like artifacts that most people see with newer video cards when using 3D acceleration.

I did some initial research into the problem but Zeq has done most of the work to make it happen, so credit goes to him.

Basically, there's a function called in DX5 that is broken on newer video drivers. The fix is a wrapper for ddraw.dll that wraps calls from DirectX to DirectX 7, where a different, non-broken function can be called. Once a full wrapper is implemented, we should be able to add other, minor graphical features to JK. So essentially it is a replacement ddraw.dll file that goes in your JK directory. Should work with the Steam versions, too.

I don't know the status of the fix so I haven't uploaded it, but something should be available soon.
____________
Bassoon, n. A brazen instrument into which a fool blows out his brains.

Last edited by Emon; 09-25-2009 at 09:42 AM.
 
Martyn is offline Martyn
The Daddy
Old Posted: 09-25-2009, 10:11 AM #2

Good work you two!
 
Citizen86 is offline Citizen86
Registered Citizen
Old Posted: 09-25-2009, 10:17 AM #3

Great, I'm definitely looking forward to this. Definitely good work.
 
Brian is offline Brian
Loves Pokeman
Old Posted: 09-25-2009, 11:10 AM #4

That totally rocks.
 
EAH_TRISCUIT is offline EAH_TRISCUIT
Good with spray cheese
Old Posted: 09-25-2009, 11:28 AM #5

Zeq, I am your #1 fan.
____________
My favorite JKDF2 h4x:
EAH XMAS v2
MANIPULATOR GUN
EAH SMOOTH SNIPER
 
Citizen86 is offline Citizen86
Registered Citizen
Old Posted: 09-25-2009, 11:36 AM #6

I'm assuming the HOM effect is mostly prevalent on ATI video cards... I have 3d acceleration working on my mobile Nvidia card.

I'm still all for some updated DX improvements though. If it works out you might be able to start adding things like HDR or other post-processing effects like they have done in older Unreal games with wrappers.
 
The MAZZTer is offline The MAZZTer
⌐_⌐
¬_¬
Old Posted: 09-25-2009, 11:48 AM #7

Unreal doesn't need wrappers, it has a plugin system for rendering so anyone can write their own renderer.
____________
......!
 
Citizen86 is offline Citizen86
Registered Citizen
Old Posted: 09-25-2009, 12:02 PM #8

I see... my bad
 
genk is online now genk
doot!
Old Posted: 09-25-2009, 12:04 PM #9

if only lucasarts and steam had worked together on jk for more then the day it took to hack the exe...
____________
Holy soap opera Batman. - FGR
DARWIN WILL PREVENT THE DOWNFALL OF OUR RACE. - Rob
Free Jin!
 
El Scorcho is offline El Scorcho
*shudder*
Old Posted: 09-25-2009, 12:11 PM #10

Nice guys! I thought the wrapper would be a good start for this, but I certainly had no idea what to do with it. Did you guys figure anything out for the HUD?

If you could fix the broken dithering on DX10 hardware with it that would be awesome. Timeslip fixed this for dark engine games by forcing the games to a 32-bit render target. Not sure if that is outside the scope or not.

Still, really awesome that you could get something happening with the horrible HOM problem. Let me know if you need anyone to do any testing. I have an HD4850, x1800, 7200gs and x1900 cards. I'm only experiencing problems on the former of course.

The HOM effect seems to only occur on ATI DX10 hardware. Broken dithering occurs on all DX10 parts from both nvidia and ATI from testing.
____________
-El Scorcho

"Its dodgeball time!" -Stormy Waters
 
mscbuck is offline mscbuck
"You Would Have Been BALEETED..."
Old Posted: 09-25-2009, 12:15 PM #11

That's awesome. I personally don't have any problems with the game anymore, but if you get something stable you should maybe contact Steam about it. Maybe get some MONEYZ
____________
"His Will Was Set, And Only Death Would Break It"

"None knows what the new day shall bring him"
 
KOP_AoEJedi is offline KOP_AoEJedi
How do I change this?
Old Posted: 09-25-2009, 12:36 PM #12

Yeah nice work, be sure not to let the file out until you talk to steam or LA. At the very least you can get some public credit .
____________
Quote:
Originally Posted by FastGamerr
"hurr hairy guy said my backhair looks dumb hurr hairy guy smash"
 
JediKirby is offline JediKirby
GoY's Pessimistic Soy Boy Toy
Old Posted: 09-25-2009, 12:51 PM #13

Or get served a cease.
____________
ᵗʰᵉᵇˢᵍ๒ᵍᵐᵃᶥᶫ∙ᶜᵒᵐ
ᴸᶥᵛᵉ ᴼᵑ ᴬᵈᵃᵐ
 
fishstickz is offline fishstickz
New, Improved, and Boneless
Old Posted: 09-25-2009, 12:55 PM #14

That's really awesome guys, congrats on all your good work, I can't wait to try it!
____________
"If you watch television news, you will know less about the world than if you just drink gin straight out of the bottle."
--Garrison Keillor
 
Citizen86 is offline Citizen86
Registered Citizen
Old Posted: 09-25-2009, 12:55 PM #15

Is it actually editing the JK.exe file? Or would it be like directx.dll's to place in the JK directory that would act as wrappers?
 
Emon is online now Emon
Imon, umon...everymon!
Old Posted: 09-25-2009, 01:09 PM #16

This is a wrapper that replaces ddraw.dll, it doesn't change the EXE at all. LucasArts can't say a damn thing about it because it doesn't touch their IP whatsoever.
____________
Bassoon, n. A brazen instrument into which a fool blows out his brains.
 
ZeqMacaw is offline ZeqMacaw
Merciless Admin of JKHub
Old Posted: 09-25-2009, 01:10 PM #17

The ddraw_(hack_viewport3_clear2).zip is the ddraw.dll file Emon talked about in his original post.

You can post here or (preferably) in the JKLauncher project forum to tell me if it works or not and on what system (OS and video card specs).

Oh, and let me know what specifically the other JK graphics problems you guys are having. Maybe I can fix those as well.

Enjoy!

 
Dash_rendar is offline Dash_rendar
Xizor's Drinking Buddy
Old Posted: 09-25-2009, 01:10 PM #18

So I can actually update my nvidia Geforce drivers to something newer than Nov 2006?
 
Emon is online now Emon
Imon, umon...everymon!
Old Posted: 09-25-2009, 01:11 PM #19

Quote:
Originally Posted by El Scorcho View Post
Did you guys figure anything out for the HUD?
Sige's wrapper used OpenGL, he actually intercepted all the geometry data and passed it to OpenGL. This wrapper just wraps interfaces and forwards calls to DirectX 7, so the HUD works just fine.

Quote:
Originally Posted by El Scorcho View Post
If you could fix the broken dithering on DX10 hardware with it that would be awesome. Timeslip fixed this for dark engine games by forcing the games to a 32-bit render target. Not sure if that is outside the scope or not.
I personally haven't had any dither problems, but I only did a quick test this morning, maybe I didn't notice. Forcing 32-bit should be trivial.
____________
Bassoon, n. A brazen instrument into which a fool blows out his brains.
 
Citizen86 is offline Citizen86
Registered Citizen
Old Posted: 09-25-2009, 01:16 PM #20

Available for download? Awesome! Thanks guys.
 
KOP_AoEJedi is offline KOP_AoEJedi
How do I change this?
Old Posted: 09-25-2009, 01:21 PM #21

I actually had a dithering issue as well, but that was the last time I installed it. Haven't checked this time, or with the new file.

And yeah, LA can shove it, they can't tell someone not to modify their own DX files.
____________
Quote:
Originally Posted by FastGamerr
"hurr hairy guy said my backhair looks dumb hurr hairy guy smash"
 
JLee is offline JLee
Murdered
Old Posted: 09-25-2009, 01:24 PM #22

So now I suppose I should find my JK CDs.
____________
woot!
 
efin is offline efin
Registered User
Old Posted: 09-25-2009, 01:26 PM #23

Hey guys, just wanted to let you know that it works for me. I tested it with the Steam version as well as JKE. THANK YOU SO MUCH!

Specs that matter:
Vista x86
Ati 4870 1GB
 
Emon is online now Emon
Imon, umon...everymon!
Old Posted: 09-25-2009, 01:34 PM #24

Edit: Nevermind, I missed Zeq's post.
____________
Bassoon, n. A brazen instrument into which a fool blows out his brains.

Last edited by Emon; 09-25-2009 at 01:37 PM.
 
Ashkarion is offline Ashkarion
Registered User
Woohoo!! | Old Posted: 09-25-2009, 01:35 PM #25

Works great for me, I can now activate 3D Acceleration on my Radeon 4870 (Sapphire, 512MB, OS Vista x64) without any glitches, at least as far as I've tried. Using 4xAA as well, works like a charm. Had the same problems as everyone else using newer ATI cards before.

Great work, you guys! Thanks for fixing what LucasArts obviously couldn't! Now I'll have to dig out my old CD for the soundtrack. The only remaining problem on my system is the menu and cutscenes only working in windowed mode. I haven't figured out yet how to turn that off in the Steam release, and besides, as far as I've read they put that in since there seem to be some palette issues (or black screen issues...) with the menu in fullscreen mode.

Again, thanks a lot for your great work!
 
Darth is offline Darth
heh.
Old Posted: 09-25-2009, 01:37 PM #26

I'll try it later when I get the chance.
 
Obi_Kwiet is offline Obi_Kwiet
It's Stuart, Martha Stuart
Old Posted: 09-25-2009, 01:44 PM #27

Nice! Look forward to installing this when I get home. Thanks guys!
____________
The Bible is not a very religious book, as men count religion. - John W. Robbins
 
TheCarpKing is offline TheCarpKing
Registered User Sex Offender
Old Posted: 09-25-2009, 01:46 PM #28

Zeq and Emon, you guys are the best. I'll have to see if this improves things with Wine. I have little reason to assume it will, but maybe more recent DirectX stuff will be better-implemented.
____________
Why do the heathens rage behind the firehouse?
 
xXcLoNeXx is offline xXcLoNeXx
The more X's you have in your name, the cooler you are
Old Posted: 09-25-2009, 02:17 PM #29

yay! works for me:
Nvidia 9800GTX+, Vista x86

3D Accel enabled, 1680x1050, V-Sync disabled: average 275 FPS on Canyon Oasis
 
Citizen86 is offline Citizen86
Registered Citizen
Old Posted: 09-25-2009, 02:20 PM #30

You're sir_phobos! haha
 
xXcLoNeXx is offline xXcLoNeXx
The more X's you have in your name, the cooler you are
Old Posted: 09-25-2009, 02:21 PM #31

yip. i have a username before this one, even, but it's pretty lame.
 
Tracer is offline Tracer
El Duderino.
Old Posted: 09-25-2009, 02:29 PM #32

Awesome work you two.

Does anyone else have the minor issue of have to alt-tab out of jk in order to see the 2D menu screens after playing?
 
Emon is online now Emon
Imon, umon...everymon!
Old Posted: 09-25-2009, 02:31 PM #33

Tracer, are you using -windowgui?
____________
Bassoon, n. A brazen instrument into which a fool blows out his brains.
 
Cool Matty is offline Cool Matty
Usuyami no Sekai
Old Posted: 09-25-2009, 02:34 PM #34

I had to use -windowgui just to get JK to launch here. Note that it wasn't an issue with the DLL, it happened either way. Wish it could be fixed though, since I think the constant changing between windowed and fullscreen is what causes the window border to flicker in and out during gameplay.

That said, works as advertised, awesome work!

Edit: Zeq, when you think it's ready for prime time, let me know, and I'll make a proper Massassi newspost about it. This needs publicity. *insert no one visits the frontpage joke here*
____________
Sorrowind Studios: http://sorrowind.net

Last edited by Cool Matty; 09-25-2009 at 02:46 PM.
 
Emon is online now Emon
Imon, umon...everymon!
Old Posted: 09-25-2009, 02:36 PM #35

There should be a way to fix the window border. May be as simple as setting the window border style, which you can even do with an external app.
____________
Bassoon, n. A brazen instrument into which a fool blows out his brains.
 
Citizen86 is offline Citizen86
Registered Citizen
Old Posted: 09-25-2009, 02:37 PM #36

I noticed using this that the opening video was still wrongly colored. The menus showed up, they never did for me before, but the text was mostly black. Starting a new game though got the movie playing fullscreen which was great.
 
Citizen86 is offline Citizen86
Registered Citizen
Old Posted: 09-25-2009, 02:38 PM #37

I get the flickering border as well, but just for a second and then it goes away.
 
ZeqMacaw is offline ZeqMacaw
Merciless Admin of JKHub
Old Posted: 09-25-2009, 03:08 PM #38

Quote:
Zeq, when you think it's ready for prime time, let me know, and I'll make a proper Massassi newspost about it. This needs publicity. *insert no one visits the frontpage joke here*
Go for it. The link has already been posted on the Steam JK forum. Might as well let as many people know about it as possible. Be aware that the direct download link might change, so you might want to link it the way I did in my earlier post.

I am very happy that this makes JK playable again for so many people.

 
Tracer is offline Tracer
El Duderino.
Old Posted: 09-25-2009, 03:17 PM #39

Quote:
Originally Posted by Emon View Post
Tracer, are you using -windowgui?
No, I'll try that out.
 
KOP_AoEJedi is offline KOP_AoEJedi
How do I change this?
Old Posted: 09-25-2009, 03:31 PM #40



Applause for Massassi, once again breathing life into Jedi Knight.
____________
Quote:
Originally Posted by FastGamerr
"hurr hairy guy said my backhair looks dumb hurr hairy guy smash"
 
Closed Thread

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 02:34 PM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.