Index | FAQ | Search | Memberlist | Usergroups | Profile | Log in to check your private messages | Log in | Register

.alpha Goto page 1, 2 Next

| Inside3d Forums Forum Index -> Engine Programming

View previous topic :: View next topic
Author | Message
--- | ---
goldenboy Joined: 05 Sep 2008 Posts: 310 Location: Kiel |

Posted: Mon Oct 13, 2008 5:47 pm Post subject: .alpha |

Baker wrote elsewhere:

Quote:
Closer to being accepted: transparentish glass (.alpha) in brush models

The Remake Quake project is strongly considering dropping .alpha since it breaks compatibility.
Crossplatform considerations also play into this.
The day Joequake, Fitzquake, Tyrquake and Fruitz of Dojo start supporting .alpha I might reconsider and throw my weight behind it... that's unlikely though.
Closer to being accepted on the Windows side, and/or Darkplaces, yeah. Sadly, that's not enough. We want RMQ to be as compatible as possible, target engine is Fitz 080 or equivalent. The only bonus players get from improved engines is eyecandy, practically.
I don't really see the benefit of .alpha, besides coolness, either.
Hmm, I guess I'll turn this into its own thread.
To put it bluntly, I don't think .alpha is anywhere near standard and it's simply not viable for mappers if you do crossplatform development (one of us uses Linux, and two of us use _software_ at this point.)
There is the skip method for "glass" that works in any GLQuake (water brush with a skip textured func_wall or similar for collision). The problem with that is that your texture must be a solid color, because of the warping. Also, the glass will be fullbright in software, and all your water will be affected.
Transparency in Quake is experimental at best atm.
Don't take this personally Baker

Back to top |

Baker Joined: 14 Mar 2006 Posts: 1538 |

Posted: Mon Oct 13, 2008 6:56 pm Post subject: Re: .alpha |

.alpha is the holy grail of Quake base-map coolness. Outside a base map setting, I don't see what purpose it would have in a Quake Remake Project or anything medieval. JoeQuake does support it and it is my understanding that FitzQuake will support it. Fruitz of Dojo is a glquake operating system port and will never have any special features (it doesn't even support >600 edicts).
But on an another note "commonly accepted features" aren't set by mappers or engine coders. They tend to be set by a breakthrough project that utilizes a feature enough to shift demand.
Examples would be Nehahra, Marcher or Warpspasm that were special enough that people were willing to download a custom engine specifically to play it.
If a map or single player release of exceptional quality is released using a certain previously "not widely accepted" feature, demand tends to gravitate towards that feature.

Back to top |

LordHavoc Joined: 05 Nov 2004 Posts: 243 Location: western Oregon, USA |

Posted: Tue Oct 14, 2008 7:19 am Post subject: |

I tend to believe that features exist to be used, limiting level design post-quake-source-release seems kind of silly to me, much like the many zdoom-requiring doom maps that have been released, why not require enhanced engine features for some maps?

Back to top |

goldenboy Joined: 05 Sep 2008 Posts: 310 Location: Kiel |

Posted: Tue Oct 14, 2008 10:32 am Post subject: |

Quote:
Examples would be Nehahra, Marcher or Warpspasm that were special enough that people were willing to download a custom engine specifically to play it.

(AguirRe's) Nehquake requires Windows, Joequake doesn't run all of Nehahra, on Linux at least. Warp practically requires AguirRe's engines, which require Windows. Marcher runs in standard engines.
It stops at the point where you have to install another OS specifically to play it, or where your hardware has no 3D acceleration features.
So the theoretical custom engine would have to be cross-platform (Windows, Linux, BSD, MacOSX) and support both software and GL. How many engines do you know that fit the bill? Right, Win/GLQuake (yeah, Fruitz comes in here, it's in active use).
Tyrquake (just btw) enters the equation because it is the only real crossplatform and complete Netquake engine in existance, apart from stock id. Everyone else decided "oh, let's drop ($OS) support / let's just drop software... because it makes it much easier on me, the programmer."
Don't start about wine, requiring an emulator (let's not get into that) is the bollocks (just for one feature, even). Wine development is also unpredictable. For example, they now require GL to run DirectDraw (!) games (which originally don't have that requirement). It's an additional ball on the chain.
We have at least 5 base maps, rather 6, so the question is a valid one. I can also see glass in metal maps, btw, of which we have a pile.
Creating demand is good, but if the demand is crossplatform, and your custom engine requires (insert OS here) and/or (insert hardware here), there will be frustration. Frustration should be avoided. If you're making Diablo 3, you can afford pissing off a couple million people not using your target OS(es). In a small community, it's comparatively stupid to do that.

Quote:
much like the many zdoom-requiring doom maps that have been released, why not require enhanced engine features for some maps?

Because

Quote:
ZDoom is an enhanced port of the official DOOM source code to Win32. As such, it not only works with (and requires) Windows 95/NT 4.0 (...) It runs well under all modern versions of Windows, from Windows 95 to the new Windows Vista. If you have Linux, it works with that too.

OS-specific. Linux "supported", but only as an afterthought. Target OS: Windows.
Also, ZDoom is a bloated behemoth that tries to do everything at once. I don't need something that plays Strife or Heretic. I prefer a lean DOOM port like PrBoom. It's comparable to a Quake player choosing GLQuake over (insert experimental engine here).
For me, it's also a problem that alpha breaks demo compatibility.
The user should choose his engine. The mapper should not make this choice for him. It's a philosophical thing, supported by real world considerations (cross-platform, hardware).
You don't just require a custom engine; you automatically require the requirements of that engine, too. Which might be undesirable.

Back to top |

Lardarse Joined: 05 Nov 2005 Posts: 243 Location: Bristol, UK |

Posted: Tue Oct 14, 2008 2:17 pm Post subject: |

goldenboy wrote:
Everyone else decided "oh, let's drop ($OS) support / let's just drop software... because it makes it much easier on me, the programmer."

You say that like it's not a valid point...
The problem for a lot of engines is that they are one man projects. This means that they likely only have one computer, which probably means one OS that they use for gaming. And they probably don't have a string of peple willing to test it that use a different setup to what they use. So development goes in only one direction...
As for the programmer wanting to make things easier... why not? If they're gonna enjoy programming (a pre-requisite for them to continuing development), then making it easier for them to enjoy it will happen. And once the GL renderer is improved (or fixed, depending on your opinion), then why do you still need software?

Back to top |

Wazat Joined: 15 Oct 2004 Posts: 732 Location: Middle 'o the desert, USA |

Posted: Tue Oct 14, 2008 7:54 pm Post subject: |

goldenboy: I have a big problem with your argument. At its core, it seems to be that every engine should support every possible system. No, I think not. Darkplaces is not designed to run on, say, a Razor cell phone or Commodor 64. It would not be appropriate to demand that other engines change everything about their code to run on these platforms either.
Some people have gotten Quake to run on platforms like the PSP and Dreamcast. That is *really* cool, and they have a pretty decent following. There are certain features that they simple cannot support because of the hardware limitations they live under, and it's completely appropriate -- even required -- to omit such features in their engines.
However, you are talking like you expect all engines to support all possible platforms, all possible hardware limitations. GOD NO. That means you must live by the lowest common denominator, the worst and most limited platform someone could find and demand that you support. And when someone invariably pulls out their cellphone and wants you to support that, the bar drops even lower.
Guess what? The quake community has branched out into specific niches for a reason. You exist for a reason, just like the PSP engine and Darkplaces exist: you are filling a niche. Some people want to be able to run Quake on their Dreamcast, PSP, or PC, and each of these has wildly different capabilities and limitations. Guess what? There's nothing wrong with that. Some engines can support certain features, while others omit them.
The people who are running Quake on their PSP recognize that there are some limitations they'll just have to live with. The people making the engine for these platforms likewise know these limitations, and have probably accepted them. But that is no reason for you to insult programmers of other engines for not choosing to fill that niche. Darkplaces is for people with a PC, Linux or Mac (possibly other OSs) machine that came out in, say, the last 5-8 years and have average graphics and cpu capacity for that time period. Darkplaces will not run on the PSP I think, but it wasn't meant to. That's a different niche.
Want to know what Darkplaces' niche is? It offers incredible features for programmers (which typically translates to better mods for players), and not all of them "pretty graphics". For example, it provides file I/O for QC (FRIK_FILE), entity search functions beyond just find/findradius, and yes, it provides .alpha. Alpha is an extremely useful feature for programmers and players alike, and as a programmer I have used it in many different ways in my mods (see Conquest, for example, or NexTF; other people have made various invisibility and stalking mods too). I know you don't like it, and there's nothing wrong for you not caring for alpha, but don't pretend it's not important to other people and should be easily discarded by the rest of us.
So I want you and other people in this thread to understand this: You are filling a niche, and so is the Darkplaces crowd. I also want you to understand that you are trying to fill a very wide niche, or multiple ones, and that has left you with some very stringent limitations for your engine. Insane ones, to some of us. Having to support software and low-end machines with no graphics card is crazy unless you are very specifically targeting that audience. That's your niche, and you're very limited by it BUT you may have a lot of people there that you're serving with your engine.
Just understand that other people may have a hard time agreeing with you or being interested in what you're doing, especially if they're busy doing cool stuff in their mod, map, or engine that most new engines besides yours can support, and it sounds like you're making them wrong for that.
_________________
When my computer inevitably explodes and kills me, my cat inherits everything I own. He may be the only one capable of continuing my work.

Back to top |

MeTcHsteekle Joined: 15 May 2008 Posts: 397 Location: its a secret |

Posted: Tue Oct 14, 2008 8:20 pm Post subject: |

hey, i got a calculator, will it run on that?? _________________ bah

Back to top |

Wazat Joined: 15 Oct 2004 Posts: 732 Location: Middle 'o the desert, USA |

Posted: Tue Oct 14, 2008 8:28 pm Post subject: |

TI-83 all the way, baby! Actually, maybe some of the newer graphing calculators could run a super-stripped-down version of Quake, but it would be a challenge. That would be entertaining in a calculus class to pull out during a lecture. I've always been a little weird with concentration. By playing games on my calculator I was actually able to listen to the lecture better than if I "paid attention", or rather, my full attention. A part of my mind insisted on wandering if it wasn't occupied during even a somewhat interesting lecture. So maybe Quake on a graphing calculator would have been the perfect solution. That's a lot better than Nibbles.
_________________
When my computer inevitably explodes and kills me, my cat inherits everything I own. He may be the only one capable of continuing my work.

Back to top |

goldenboy Joined: 05 Sep 2008 Posts: 310 Location: Kiel |

Posted: Tue Oct 14, 2008 9:35 pm Post subject: |

I admit I made it sound a little provocative on purpose. You'll have to admit there is a grain of truth in there though. Keeping a Quake engine crossplatform should be as easy (or hard) as not adding OS-specific code. Remember it was crossplatform at the beginning. Becoming OS-specific is a degradation.
Now, I'm not meaning to put down Darkplaces, which some people seem to think. Why should I, I admire Darkplaces, and it's cross-platform. Sure, engine coders have every right to do what they want. So it branches out, and all these little niches are created.
I'm just saying that the more niches you have, the more specialists, the less likely it gets to establish new standards. You get a niche standard, like .alpha. Personally, I'd like my maps to be playable by most people, regardless if they actually will play them, and the demos created to be exchangeable by most people, regardless if there will be any.
Lardarse, software looks different (lighting), feels different at least to some people, and runs everywhere. (This isn't a flame, but I hope that is clear.) Software isn't actually a concern to RMQ, one of our docs says something about not being masochistic. Apparently targetting GLQuake instead of DP is enough to be considered masochistic by many today. I register that. I have a different opinion.
I'm glad that I get these replies; keep them coming.

Back to top |

Baker Joined: 14 Mar 2006 Posts: 1538 |

Posted: Tue Oct 14, 2008 9:40 pm Post subject: |

goldenboy wrote:

Quote:
Examples would be Nehahra, Marcher or Warpspasm that were special enough that people were willing to download a custom engine specifically to play it.

(AguirRe's) Nehquake requires Windows, Joequake doesn't run all of Nehahra, on Linux at least. Warp practically requires AguirRe's engines, which require Windows. Marcher runs in standard engines.
It stops at the point where you have to install another OS specifically to play it, or where your hardware has no 3D acceleration features.

This sounds more like frustration that most engines don't have quality Linux and OS X versions than a criticism of .alpha feature.
I can understand this frustration, but at least so far I'd label the blame for this due to lack of documentation and cooperation more than anything else.
As someone who now has both a Linux and Mac machine, there are enough engine ports for both OSes that a sufficient code base exists to do virtually anything fairly easily.
Adding .alpha support to a GL engine is pretty simple.

Quote:
So the theoretical custom engine would have to be cross-platform (Windows, Linux, BSD, MacOSX) and support both software and GL. How many engines do you know that fit the bill? Right, Win/GLQuake (yeah, Fruitz comes in here, it's in active use).
Tyrquake (just btw) enters the equation because it is the only real crossplatform and complete Netquake engine in existance, apart from stock id. Everyone else decided "oh, let's drop ($OS) support / let's just drop software... because it makes it much easier on me, the programmer."

.alpha could easily be added to both Fruitz and TyrQuake.
I'm sorry there isn't currently an aguirRe GLQuake for Linux or the Mac yet.
What I would view as a more curious statement is that you keep mentioning the software renderer.
Now as someone in the past who lobbied for the need for a software renderer versions, I can sort of understand this but in light of a couple of years of exploring the issues OpenGL engines have on various computers (certain ATI cards hating DarkPlaces, certain Intel display adapters not liking stock GLQuake) I can say that I can run every engine on every machine I have run across (even ones that initially don't run) or know the code fix to make it so.
I'd be more interested in who is running software, their setup and interested in finding out why they are having the problem and fixing it than worrying about software renderers per se.
Linux Options
DarkPlaces
FitzQuake SDL
NehGLQuake Linux (right?) (Have you tried this yet?)
JoeQuake
Qrack 1.55
TyrQuake
Mac Options
DarkPlaces
FitzQuake SDL
Fruitz of Dojo

Back to top |

Baker Joined: 14 Mar 2006 Posts: 1538 |

Posted: Tue Oct 14, 2008 9:51 pm Post subject: |

Question: Is this thread a request in disguise for someone to add .alpha support to TyrQuake (for Linux) and Fruitz of Dojo (OS X)? It's not hard and I'd be willing to do that.

Back to top |

goldenboy Joined: 05 Sep 2008 Posts: 310 Location: Kiel |

Posted: Tue Oct 14, 2008 11:27 pm Post subject: |

Baker, thanks for your offer, but it's not (a request). I could even do it myself. I prefer not to fork engines, too. I lost my reply to a browser crash, so I'll make it shorter. It's not the "I want blah on Linux" frustration. I can play what I want and need, and I can hack engines where necessary. The coding practice stuff was bound to come up, and I gave an opinion that I had for a long time. I didn't make that up today. The only frustration is that it makes me cringe, from an aesthetical POV if you want, ie. in principle. It seems sluggish.
About software, again, I meant what I said. Some people choose to use software, both NQ and QW players. Some people have no choice. These ppl don't need help, they need respect damnit. I see zero reason to remove something that works fine, just because it's not fashionable. Again, a principle. Software does NOT figure into any of our equations, anyway.
I'm not even asking for help to decide pro/contra alpha; we can do that just fine. I just saw "alpha" and "accepted" (or "standard") in the same place, which prompted me to comment, and the predictable string of events followed. Crossplatform and software are pretty much related to things like alpha, so it's no wonder both came up.
I think I can say that the team is honestly concerned about the portability of our mod. It connects to the alpha topic because alpha is afaics the only feature on the list that actually breaks something. It's logical that I'm asking myself how standard it is and can possibly be.
Some of you probably find this hard to believe, but I'm really like that. I mean I care enough to realign every texture in fucking episode 1, and a couple DM maps. Yes, masochist. But I have a genuine interest in doing things right. Yes, if I was an engine coder, I would install Windows and reinstall BSD to test it, and avoid platform specific code. Am I weird?! Anyway, that's not the issue.
alpha isn't standard enough for me, was all I wanted to say. It went other places, too, which is at least interesting.
There was more, but I guess the point comes across (or not).

Back to top |

Baker Joined: 14 Mar 2006 Posts: 1538 |

Posted: Wed Oct 15, 2008 12:16 am Post subject: |

It's your project and you get to decide what you do with it and if you want widespread compatibility, that is certainly a worthy goal. There is nothing wrong with baseline Quake compatibility, which should really be maintained unless an exceptionally good reason exists.
None of this has anything to do with .alpha support, though.
Don't like it? Then don't use it!

Back to top |

r00k Joined: 13 Nov 2004 Posts: 483 |

Posted: Wed Oct 15, 2008 3:45 am Post subject: |

The days of all encompassing engines are at an end. Not even DP is used at it's FULL potential! It's almost like arguring who's vintage tinker toys are still playable This arguement isnt about defending your efforts it's defending your egos. If you need .alpha support for your project to look effective then make it so. No one will blame you for making an effort to break the envelope. If you're still using software quake then u must be using a PDA to read this message

Back to top |

LordHavoc Joined: 05 Nov 2004 Posts: 243 Location: western Oregon, USA |

Posted: Wed Oct 15, 2008 7:11 am Post subject: |

DarkPlaces' only major dependency is OpenGL, computers without OpenGL acceleration are scarce today, so I do not consider software rendering to even matter in this discussion. DarkPlaces runs on: Windows x86 Windows x64 Linux x86
Linux amd64
Linux PPC (PPC Mac)
FreeBSD
NetBSD
OpenBSD
Mac OS X PPC
Mac OS X x86
Solaris x86
Solaris amd64
What it probably runs on (with a recompile or possibly a little editing):
Playstation 3 Linux (until Mesa performs well on Cell there isn't much reason for me to put any effort into support for PS3 Linux)
OpenPandora (product not released yet, will see what is involved)
What it could run on but doesn't:
Amiga OS4 (have not had the motivation to port to it)
MorphOS (bigfoot made a mostly complete port but hasn't released it or maintained it)
Xbox 360 Live Arcade (very difficult port)
Wii (easy port, if I had one I'd have a go at porting it for use on memory cards loaded using the homebrew channel)
What it can't run on due to application signing (requires approval by vendor before it can be launched on these platforms):
iPhone
Xbox 360
Playstation 2
Playstation Portable
Playstation 3
What it could never run on due to lack of resources:
Gameboy Advance
Nintendo DS
Playstation 1
Dreamcast
Now, what platform does DarkPlaces not run on that people actually care about?
How many people would be unable to play a map that required DarkPlaces features?
Crashing on certain video drivers is not an excuse (workarounds can be added if people tell me what feature does not work on what driver).

Back to top |

Display posts from previous:

| Inside3d Forums Forum Index -> Engine Programming | All times are GMT Goto page 1, 2 Next
Page 1 of 2

Jump to:

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Powered by phpBB © 2004 phpBB Group