Battlezone Universe

Battlezone Universe => Battlezone 1 Patch Board => Topic started by: Ultraken on November 20, 2009, 12:56:40 AM

Title: Hardware Only?
Post by: Ultraken on November 20, 2009, 12:56:40 AM
I'm looking at several approaches to fixing the hardware rendering, and wanted to know if losing support for software rendering would be acceptable.  The answer to that question will decide how I go about this.
Title: Re: Hardware Only?
Post by: Scout on November 20, 2009, 03:41:41 AM
Last time I needed software mode was before I had a 3d accelerator on my 48mb ram(maxed out) ibm machine, cant imagine anyone who still needs software
Title: Re: Hardware Only?
Post by: General BlackDragon on November 20, 2009, 09:09:07 AM
If you're upgrading to DX9 or DX10, then you can lose the software support.

Or you could make the software support use DX9/DX10 :) Maybe have it autodetermine the ability of your computers hardware and use it if it's there.
Title: Re: Hardware Only?
Post by: AHadley on November 20, 2009, 09:43:57 AM
I'd suggest dropping software. I'm hard-pressed to find a computer anywhere that doesn't support hardware rendering.
Title: Re: Hardware Only?
Post by: Ultraken on November 20, 2009, 09:50:05 AM
Before people get too excited, I'm not much of a graphics programmer so the new renderer would be functionally equivalent to the old one.  The point of upgrading to DX9 is that it's well-tested and widely-supported.  Even the weakest of weaksauce integrated graphics processors can handle it these days.  :)

The reason I asked about this is the software renderer imposes a lot of constraints that are very difficult to work around.  Cutting it out would let me discard all the clipping, transformation, and lighting code, making my life a lot easier.
Title: Re: Hardware Only?
Post by: General BlackDragon on November 20, 2009, 09:57:56 AM
Quote from: AHadley on November 20, 2009, 09:43:57 AM
I'd suggest dropping hardware. I'm hard-pressed to find a computer anywhere that doesn't support hardware rendering.

but..if we drop hardware...we're all screwed

And ken, isn't the transformation and lighting code a good thing? (the shadows and whatnot?)
Title: Re: Hardware Only?
Post by: Ultraken on November 20, 2009, 10:18:55 AM
Quote from: General BlackDragon on November 20, 2009, 09:57:56 AM
but..if we drop hardware...we're all screwed
I think it that was a typo.  :)

Quote
And ken, isn't the transformation and lighting code a good thing? (the shadows and whatnot?)
D3D would be handling them instead of the application.
Title: Re: Hardware Only?
Post by: Nielk1 on November 20, 2009, 10:42:36 AM
Quote from: AHadley on November 20, 2009, 09:43:57 AM
I'd suggest dropping hardware. I'm hard-pressed to find a computer anywhere that doesn't support hardware rendering.

I think you got your stuff in redro serever.
Title: Re: Hardware Only?
Post by: Ultraken on November 20, 2009, 11:10:38 AM
Quote from: Dx on November 20, 2009, 10:29:19 AM
The shadows are currently the lgt file for terrain and a sprite for objects right?
I probably should have distinguished between lighting and shadows to avoid confusion.
Terrain uses static lighting, stored in the lgt file.  I'd keep that to start with.
Objects use dynamic lighting, applied by a single directional light.  I'd move that to D3D.
Object shadows are ground sprites, which I'd leave intact since real shadows are very difficult to get right.

Quote
What texture file formats will be used in the new renderer for 24bit and alpha?
I have no idea.  :D

I may implement some sort of 32-bit MAP format, but that's a ways off.
Title: Re: Hardware Only?
Post by: AHadley on November 20, 2009, 11:28:46 AM
Yep, typo... Whoopsie :lol:
Title: Re: Hardware Only?
Post by: Steeveeo on November 20, 2009, 11:43:17 AM
The last time I used software rendering at all was to run BZ1 on XP because hardware mode didn't work. :P
Title: Re: Hardware Only?
Post by: eddywright on November 21, 2009, 12:36:33 AM
I always play in hardware mode, switching computers if I have to.  I found playing in software mode wasn't all that fun. The graphics in BZ1 aren't all that fancy to start with...

I vote for dropping software mode if it allows you to more easily upgrade to DX9. Like dx said, softare mode could be available in a different executable.

Eddy
aka {911}FirBirGir
Title: Re: Hardware Only?
Post by: ssuser on November 21, 2009, 01:41:34 AM
Mmm, what about the editor? For mapmaking, there are some things things you do in software mode, like placing objects. Also, I have always done terrain editing in software mode, I find it is easier to see what I am doing in software mode, and this is especially true if you are using cheap onboard graphics adapters.
Title: Re: Hardware Only?
Post by: AHadley on November 21, 2009, 01:46:33 AM
I never had that...
Title: Re: Hardware Only?
Post by: Josiah on November 21, 2009, 03:02:50 PM
Quote from: ssuser on November 21, 2009, 01:41:34 AM
Mmm, what about the editor? For mapmaking, there are some things things you do in software mode, like placing objects. Also, I have always done terrain editing in software mode, I find it is easier to see what I am doing in software mode, and this is especially true if you are using cheap onboard graphics adapters.

You're right. You also can't see the red, green, and white squares in F9 mode if you are using HW. At least on all my computers.
Title: Re: Hardware Only?
Post by: Blunt Force Trauma on November 21, 2009, 06:40:31 PM
I haven't used software mode since day one.  Personally, I may have finished the single player if I only had software mode, but surely BZ would have been ancient history if BZ had no hardware mode or I had no 3D card. . .which was a 3dfx Rush BTW   :-).

Hardware accelaration is what made me fall in love with BZ.

A new release of BZ should attempt to move on to better graphics if it can, newer preferably, or we will continue to dance around the 800lb gorilla in the room. . . . . .the fact that only 2 maybe 3 dozen play BZ, or one its variations online now.

So I for one would never want any extra work for someone willing to improve on the classic.
Title: Re: Hardware Only?
Post by: Firestorm29 on November 21, 2009, 07:06:41 PM
I think having software mode maybe a good idea, although it should be a low priority. I could just be a portability nut though. :)
Title: Re: Hardware Only?
Post by: Ultraken on November 21, 2009, 09:50:44 PM
The software renderer imposes a lot of structural constraints that I'd like to lift.  It's also a fairly large amount of code, so dropping it would shave an appreciable amount off the size of the executable for what it's worth.
Title: Re: Hardware Only?
Post by: Avatar on November 22, 2009, 07:31:36 AM
Software mode for BZ1 was amazing, as it allowed you to see what that new-fangled 3D video card was really doing.  The difference was stunning, and you'd never know that without being able to compare the two modes.

Once everyone had a 3D card you couldn't find a game that even had a software renderer.

As stated earlier BZ1 software mode is a major advantage to modders using the Shift-F9 screen.  It gave you a slightly messier display in return for actually showing objects, dialog windows, etc..

I also used software mode to run BZ1 windowed when walking around inside the objects in the editor and recreating them in Max.  Seems to me that BZ wouldn't run in a window in hardware mode, although maybe this was probably more of a driver issue?  It's been awhile...

So, dump the software renderer and if any major issues show up with Shift-F9 I'm sure it'll be easier to fix those, or live with them...

-Av-
Title: Re: Hardware Only?
Post by: ssuser on November 23, 2009, 05:15:19 AM
Yeah, I will go with what Av says. Software mode is really not needed in this day and age - I certainly don't play in sw mode - on the other hand a working editor is kind of mandatory, if you can get all the SHIFT-F9 stuff working ok in hardware mode, that would be the way to go.

On those rare occasions when I want to edit in BZ1 these days, I actually fire up win98 anyways, as I never was able to get BZ to run in edit mode under XP properly and reliably - black screens in hardware mode and crashes in software mode. So for me it really makes no difference, and I'm sure there are others running "legacy" operating systems as well for the times they want to play those older games.
Title: Re: Hardware Only?
Post by: Avatar on November 23, 2009, 05:57:07 PM
Of course I'm keeping a P3-500 with Win98SE just to run BZ1.   Seriously, I am. 

The black screen in XP might be what I keep running into, which is you have to back out to menu and then go back into the game to get your view back after shelling out.  Much easier just to keep the old hardware around...   :)

-Av-
Title: Re: Hardware Only?
Post by: Blunt Force Trauma on November 23, 2009, 07:38:52 PM
Quote from: Avatar on November 23, 2009, 05:57:07 PM
Of course I'm keeping a P3-500 with Win98SE just to run BZ1.   Seriously, I am.  

-Av-

Hehe. . .currently fate and keeping the family in decent PCs have me also running an ancient 500mhz with as ancient nividia Ti 4200 under 98se
Title: Re: Hardware Only?
Post by: ssuser on November 24, 2009, 05:11:40 AM
Heh, I still have an old IBM 300GL running DOS 6.22 and Windows 3.11 - works perfectly, too. Good for those times when you want to run some of those REALLY old games...  :-D
Title: Re: Hardware Only?
Post by: sabrebattletank on November 24, 2009, 07:29:23 AM
Windows 3.1 was the best. Rodent's Revenge anyone?
Title: Re: Hardware Only?
Post by: Nielk1 on November 24, 2009, 11:49:54 AM
Quote from: sabrebattletank on November 24, 2009, 07:29:23 AM
Windows 3.1 was the best. Rodent's Revenge anyone?

What about Chip's Challenge?
Title: Re: Hardware Only?
Post by: eddywright on November 24, 2009, 06:59:51 PM
What was the name of that side scrolling helicopter game? Man, I was soo addicted to that one.
Title: Re: Hardware Only?
Post by: Avatar on November 24, 2009, 07:30:54 PM
I was an Apple guy, so Choplifter comes to mind...   There were a few good side-scrollers back in the day of 16 colors or less...  Commander Midnite was also a great side-scroller, with missiles and such.

Funny that only Duke recognized the side scroller for the genius that it is...  :)   We don't need these 3D worlds!  We can get by on only 2 directions!  lol...

-Av-
Title: Re: Hardware Only?
Post by: AHadley on November 25, 2009, 03:43:16 AM
Side-scrollers are a bit before my time, but I have had my share of Codename Gordon.
Title: Re: Hardware Only?
Post by: technoid on November 25, 2009, 03:29:59 PM
Choplifter was fun, played that when it was still in the arcade rooms in the early 80's, but I still have that on a floppy for my C64's.  There were also some nice sidescrollers made for PC during the late 80's-early 90's, once 256-color VGA became fashionable (and multi-color Amiga, etc).  And yes, I have my share of vintage equipment also, like an IBM 8088 terminal box with an FM (not MFM) harddisk, as well as a big NEC harddrive from the 1970's, the size of a desktop and weighs about 150 lb. It's got the huge platters in it.  Powers up, but that's all.  Probably hooks up to a S100/mainframe system. Not to mention 6502's/6811's, other 8088's/V20's, 80286's/386's/486's and earlier Pentiums/Cyrix's on Windows 3.x/9x/Me/NT/2k.  Also have an Atari 2600 and Coleco Telstar game console from 1976/77... Pong!

I'd say ditch the BZ1 S/W renderer also.  I mean do we want Ken to be quick and have fun, or to be slow and have pain, updating BZ1?  :)
Title: Re: Hardware Only?
Post by: ssuser on November 25, 2009, 05:03:47 PM
Jeez, technoid, where do you store all that stuff? I hate having too much old hardware around.

There are alot of emulators floating around on the net for running old software, you can even go back to the days of the old mainframes.

As an aside to one of Ken's comments, I don't think reducing the executable size means very much these days, but if stripping the software renderer out means the project will go quicker, then I guess I'm for it.
Title: Re: Hardware Only?
Post by: Red Devil on November 25, 2009, 06:51:19 PM
Would keeping it help in porting it to other OS's?
Title: Re: Hardware Only?
Post by: AHadley on November 26, 2009, 04:29:36 AM
Would losing it help with the W7 issue?
Title: Re: Hardware Only?
Post by: Ultraken on November 27, 2009, 02:53:48 AM
Quote from: AHadley on November 26, 2009, 04:29:36 AM
Would losing it help with the W7 issue?
It would, though only indirectly.  The software renderer imposes a lot of constraints, and removing it would make a lot of things easier.

Quote from: Red Devil on November 25, 2009, 06:51:19 PM
Would keeping it help in porting it to other OS's?
I doubt it, since large portions of the software renderer are tightly-wound assembler code.  :)
Title: Re: Hardware Only?
Post by: Red Devil on November 27, 2009, 05:32:49 PM
In that case, all I can say is.....Killllll it!  :lol:
Title: Re: Hardware Only?
Post by: Ultraken on November 27, 2009, 11:51:36 PM
KILL IT WITH FIRE (http://tvtropes.org/pmwiki/pmwiki.php/Main/KillItWithFire)
Title: Re: Hardware Only?
Post by: Red Devil on November 28, 2009, 12:41:16 AM
Heh :-)  *puts more wood in fireplace*
Title: Re: Hardware Only?
Post by: Nielk1 on November 28, 2009, 01:44:05 AM
Quote from: Ultraken on November 27, 2009, 11:51:36 PM
KILL IT WITH FIRE (http://tvtropes.org/pmwiki/pmwiki.php/Main/KillItWithFire)

Hours of my life gone again.
Title: Re: Hardware Only?
Post by: AHadley on November 28, 2009, 02:38:53 AM
Quote from: Nielk1 on November 28, 2009, 01:44:05 AM
Hours of my life gone again.

Same. Damn these random links.
Title: Re: Hardware Only?
Post by: Steeveeo on November 28, 2009, 04:17:31 AM
Quote from: Ultraken on November 27, 2009, 11:51:36 PM
KILL IT WITH FIRE (http://tvtropes.org/pmwiki/pmwiki.php/Main/KillItWithFire)
(http://www.comixed.com/wp-content/uploads/2009/06/indy-tv-trope.jpeg)
Title: Re: Hardware Only?
Post by: technoid on November 28, 2009, 02:25:21 PM
If there is still some small fraction of a conscious conflict about keeping the software mode, why not fix a little bit of its code as best as possible, leave it aside, then make a totally separate exe/compile for the hardware-only, which then becomes the main file(s)?   Perhaps that could be a little better than having a new hardware mode update, and also the original/prior BZ1 release that isn't upgraded?  That would make it 3 separate versions (old, updated & updated h/w mode only), but you get the best of all worlds. If that will cause trouble in networking, then I don't know.  Does BZI have version-checking like in BZII?
Title: Re: Hardware Only?
Post by: Firestorm29 on November 28, 2009, 05:32:05 PM
A thought just occurred to me, would the 1.5 exe be able to play with players from 1.4? If so, then that could act as a 2nd exe allowing older PCs to still be able to play with newer ones. Would there be anything that could keep that from happening like bug fixes?
Title: Re: Hardware Only?
Post by: Zero Angel on November 29, 2009, 03:49:54 AM
Quote from: Ultraken on November 27, 2009, 11:51:36 PM
KILL IT WITH FIRE (http://tvtropes.org/pmwiki/pmwiki.php/Main/KillItWithFire)
Damn! Just when I forgot about TVTropes!

*click* *click* *click*
Title: Re: Hardware Only?
Post by: Ultraken on November 29, 2009, 09:55:42 AM
I'll keep the original renderer in a separate branch just in case.
Title: Re: Hardware Only?
Post by: Vid on November 29, 2009, 10:04:11 AM
I wouldn't think we'd need the software mode anymore, unless for some reason onboard graphics chipsets couldn't handle hardware mode.  However video cards are pretty cheap. 
Title: Re: Hardware Only?
Post by: Commando on November 29, 2009, 12:49:33 PM
Intel video cards have been problematic when it came to the graphics rewrite for bz2 so I'd watch out for those type of cards.
Title: Re: Hardware Only?
Post by: Ultraken on November 30, 2009, 01:02:36 AM
Ooh, that's a good point.  Intel IGPs are the bane of game developers everywhere...

(Of course, it's not like I'd be having D3D do much heavy lifting.)
Title: Re: Hardware Only?
Post by: AHadley on November 30, 2009, 11:08:27 AM
Quote from: Ultraken on November 30, 2009, 01:02:36 AM
Ooh, that's a good point.  Intel IGPs are the bane of game developers everywhere...

(Of course, it's not like I'd be having D3D do much heavy lifting.)

:D... *shuffles into corner*
Title: Re: Hardware Only?
Post by: technoid on November 30, 2009, 02:42:20 PM
Quote from: ssuser on November 25, 2009, 05:03:47 PM
Jeez, technoid, where do you store all that stuff? I hate having too much old hardware around.

There are alot of emulators floating around on the net for running old software, you can even go back to the days of the old mainframes.

I have plenty of space, at the moment.  Some of my old motherboards (286's, 386's) have been relegated (entombed) into ESD bags.  I've got enough empty XT and AT cases that I don't know what to do with.  Oh yeah and I also have a Royal typewriter, circa 1902, one of my prized possessions, given to me by an old couple 25+ years ago.  Haven't seen that couple, but I'm sure they're both long gone.  The typewriter is still in good working condition, I even used it to type up papers back in high school.

Yeah, I use CCS64 as one of the C64 emulators.  There are tons of D64 images people made lying around on the net.


Quote from: Ultraken on November 29, 2009, 09:55:42 AM
I'll keep the original renderer in a separate branch just in case.

Thanks, glad I could convince you.  :P
Title: Re: Hardware Only?
Post by: Ultraken on December 01, 2009, 02:13:08 AM
I may end up keeping the software renderer intact for the first implementation, since replacing Execute Buffer instructions with the equivalent D3D9 operations wasn't particularly hard.  It's interesting how much simpler D3D9 makes setting things up.  :)