Though the machine was single proc, the threading could still have something to do with it. If one of the threads was stalling (a transaction was taking to long, it was blocking on some kernel call, etc) the other threads would be sheduled in their place, and performance wouldn't be so bad. However, in a single threaded design, when one transaction stalls, the whole thing stalls, and thus performance suffers.
Blah blah blah, this is mindcraft all over again. People are used to benchmarking. They're used to not having to hyper-tweek the systems they get in. In fact, its an industry practice to benchmark the systems "out of box" meaning that even stuff like the Diamond ViperII, which would be a great card with updated drivers, recieves a poor review due to the fact that what shipped wasn't up to snuff. If RedHat is attempting to compete in the commercial marketplace, they have to play the game. Don't ship products untweeked. Take a look at the default workstation install of RedHat 6.1. Why is Sendmail running on my workstation? I don't even use sendmail. Samba? What? at daemon, I've never used that. Chron, nope not that either. INET, I'm not serving anything. NFS, I've never even SEEN an NFS drive much less used one. Now I'm sure there are tweeks that the ZD guys could have done to maximize the performance. Would it increase the TPS that much? Maybe, maybe not. Remember, Win2K is much more multi-threaded than Linux, and tends to stall less on these kinds of things. The point is, if those tweeks exist, they should be part of the default install. It was increadible that until Mandrake, there were no mainstream distros that shipped with hard-drive optimizations on. That's akin to not clicking the DMA button in control panel, something that manufacturers get lambasted for in reviews. If RedHat is going to make it in the "real world" they have to play the game. Believe it or not, polish counts for a lot. In the high end business market, and especially in the desktop (home, business) market, lack of polish and be a deal-breaker for an otherwise great product.
I'm pretty sure that that they are just rendered in hardware. However I'm curious. Why does lighting drop the triangle rate from 125 million all the way to 8 million? That explanation kind of went over my head, what's mutatis mutandis? I've used OpenGL software rendering, and it doesn't seem to have THAT much of an effect.
You're kidding right? They print out a screen onto a silicon substrat. As for resolution, printers run upwords of 1440dpi in some models. Compare that to the 75-100dpi in you monitor.
Is it just me, or does anybody see the opportunity here for some seriously hi-res displays. What I'd like to see, personally, is one of these monitors as printed out by an Epson 1440. Think of it, a 1440dpi monitor! X probably couldn't handle it though...
I'm not commenting on testing methods exactly, but does it seem a little difficult to swallow that a Dell PIII/667 with one CPU running Linux beat a Compaq DS20 dual Alpha 667 running Tru64 by nearly 200 points?
You're sure W2K would fall apart? Why, have you actually done testing with it? FYI, both ZDNet and CNet (yea not exactly the pinnacle of pure PC power, but hey, they'll do) have tested W2K and found it to be extremely stable. Not quite as stable as any UNIX, mind you, but it would certainly not fall apart after 2 days.
Not necessarily. Nothing beats a fighting game where the person is right next to you. Ditto for coop play action games. Even games like Golden Eye are a lot more fun than a bout of Quake because you are actually playing with people. The TV really doesn't constrain games that much. For example, I have a 53 inch TV. Playing StarFox or GoldenEye multiplayer with four people still leaves a screen about the size of a 25inch TV for each person. As for N64, most N64 games are meant of 6 year olds, so no surprise you find them boring.
Do hardware lights really hit performance THAT much? With 8 local and 1 infinate, the performance drops from 125M polys down to 8M polys! Can anybody elaborate on just why that occurs?
There are many reasons why I think the GPL is really not going to work for commercial applications. It doesn't mean Open Source won't work, but the GPL in its current form allows too many opportunities for a competitor to take your code, mainly because that's exactly what the GPL was designed to do. The main reason is that it takes very little effort for another company to simply add on to your product. Thus, they end up with a superior product, at the cost of almost no R&D. This not only stiffles the development of the product (whose going to develop it if the other company will just steal it?) it takes sales away from the creator because the other company now has more resources (after all he spent very little "developing" a product!) to go after marketing and offering higher quality support. Maybe better for the consumer, but businesses won't like it, and in the end, they're the ones making the choices of what licenses to use. A more closed license (like the SCL) makes a lot more sense for businesses. It retains many of the advantages of Open Source, in that a consumer can fix bugs in their programs, and development speeds up, but it prevents another company from simply taking your work and adding to it. In the end, however, I think that commercial Open Source applications will be mostly second-rate. Put down those torches and hear me out. From a business point of view, Open Source is mostly a marketing gimmick. It is something that attracts users to your software. Unless the company is run by individuals that genuinely want to help users (rare, those people tend to set up projects instead) then OSS will be used as such. Usually marketing gimmicks are reserved for second-rate software. I think it is agreed that closed source allows a company to make a bigger profit of a high demand product. However, if the product is in low demand (read: low quality) then it may just be a way for a second-rate company to get some market share. Of course, there are exceptions to this, for example in system software and when facing software that is an entrenched power, even though superior solutions exist (read: Office). However, most popular software tends to be the higher quality ones, and I really don't think OSS is much of an incentive for companies making high quality software. If you doubt this, take a look at the current graphics market. NVIDIA is currently the market leader. There is nothing keeping them there (no propriotary APIs like Glide) except the sheer power of its hardware. (And good marketing to boot.) Now, second tier companies (like 3DFx and ATI) sieze this opportunity be releasing specs/open source drivers. This is the principal of using Open Source as a marketing gimmick for a product. I seriously doubt that anybody in 3DFx-land really wants to make the computing world a better place, (the original revolutionaries in management were mostly replaced, as was the original CEO), they are simply trying to regain market-share. This concept seems like it will progress to other companies in the software market as a whole, and unfortuneatly, OSS may not catch on in exactly the way you thought.
Firstly - the GPL is designed in such a way to guarantee that if you try to sell your software as a product, and are making good profit margins, that someone will undercut you, using your own work; it removes barriers to entry. >>>>>>>>>>>>> This is a very important point. Open Source is meant for the common good of software users. As such, it enables anyone to take a piece of work, and improve on it. However, this very fact makes it impractical for a business. Consider this. RedHat spends time gussying up Linux for the mass market. It spends actual money make these additions. However, if they release them under the GPL, a competitor can simply come, take their changes, add something little to it, and end up with a better product. This isn't seen much in Linux, because the product is essentially already developed. However, say I write an application. I GPL it and make money by selling technical support. A competitor can immediatly come and make some improvements, and sell the resulting product. He now has a better product, and thus gets the sales. However, he did very little to "create" his product. This doesn't happen in the closed-source world, because instead of just taking your code, your competitor actually has to do work to create a competing product. It takes a lot less work (read: money!) to make small improvements to a product than to create a better product.
If this product is in anyway a central part of your business, I would wait. Open Source is a business model, and just like any other business model, it has its risks and advantages. Importantly, Open Source is still an unproven business model. It reminds me of the whole free craze on the internet. The business model there is that you give stuff for free, and advertisers pay you for it. However, it turns out that that really doesn't work, and companies that give stuff away (like bigger.net or other free ISPs) are dissapearing. OSS still hasn't proved that it is a viable business model. Major companies like RedHat are still not making money off it, even tough they are in a strategic position in their market. Because of these reasons, I suggest you treat it like any other business model. Weigh the benifits and the risks. If it sounds like you can't stomach the risks, then OSS is probably not appropriate. Of course, as they say, nothing risked, nothing gained, eh?
A) You have to use XF86Config no matter what. The visual-mode configurators don't work very well yet. B) X is too stupid to figure out mouse protocol and screen refresh rates for itself. You absolutely should not have to specify refresh rate ranges. Sure you could use the stock SVGA that can do X at X hertz, but then you're not optimally using you're monitor. C) With multiple RPMS, you can just open up the RPM and click install. You have to go through each on and install them in the correct order. I suppose you could highlight them all and select install, but I don't know how Kpackage would respond to that. D) I recently did an upgrade equivilant to upgrading XFree. I installed service pack 6a on Windows NT. It updated the GDI, it added DirectX support, updated the kernel and server, and it installed Internet Explorer. This is equivilant to recompiling the kernel, upgrading X, and updating the window manager. I downloaded the 30 meg file, clicked the exe, it chugged, and it rebooted without any questions asked (aside from the "do you wish to reboot" dialouge.) The system came up fine later, I did not have to reconfigure anything.
I don't know, but I always liked hacker better. Though it is usually the name (umong geek circles anyway) to computer code hackers, it saves me from problems like this. Being, as it is, July 3rd, I thought that the "cracker" he was reffering to was actually a fire cracker. I thought that somehow fire crackers were set off near NASA headquarters, thus damaging equiptment... Anyway, I think that this latest cracking is reprehensible. C'mon, these guys are doing life-threatening things anway, and there is no need to escalate their problems anymore. I'd like to see the first guy who gets the death-sentence for cracking because he somehow manages to make a space shuttle crash. (Now there's a Supreme Court case for you.) Also, NASA really ought to beef up security. It is a sad thing, that it takes something to go really wrong before government agencies change security or safty characteristics (like Los Alamos lab.) I hope we don't have to have 4.5 million pounds of space shuttle crash down 5 seconds after launch because some basterd decided to flex his cracker muscles.
You're just complaining because Linux doesn't have it. (Just kidding!) Seriously though, I get fed up with nay-sayers who think that a new introduction is useless. There are new opportunities in technology. There are new things to be done. For example, library calls in this OS are implemented with objects. This is very cool, because it allows the extension of functions without inturrupting other library-level stuff, and also allows object to be swapped out with different functionality. As for a VM-type environment, I think this is done pretty well. It is a lower-level (thus easier to interpret quickly) language, yet it offers a lot of functionality (via the objects) to applications. As for the alpha blending, it is quite possible that they are simply using X for a shared memory direct access to the window type of thing, and that the alpha blending they are doing (where the views in different windows were blended together) really wouldn't be possible with regular X windows. When you can add all this functionality to Linux, then you can say, "okay, this is useless." As it stands, it is quite innovative, and I hope at least some of this technology makes it into the mainstream.
Having looked at the article, I must say that I'm not terribly impressed with it. There are dozens of OSs (QNX, BeOS, RiscOS, etc.) that have anti-aliased text. Most OSs can do the alpha blending tricks without a hiccup. (Look at the BeOS samples for a really cool alpha blending demo) amd tje widget sets look exactly like they came out of Windows 98 (except the - + buttons which actually make sense! If this is going to be the nifty stuff in the "new" OS, then I'm not too impressed. However, what impresses me is the code/object stuff. I'm thinking, instead of a full blown OS, this would make a great addition as a Linux development environment a la GTK+.
Matrox G200 is a fairly unique situation where Linux is faster. But if you look at the big picture (highest performance graphics cards, a wide array of apps), OpenGL on Linux is in a very poor state. I'm not saying that this can't be fixed (and it probably will be) I'm just saying, that it is not to the point where Linux users can claim to be even near the same level as Windows.
IE is anything but simple. Up until Mozilla, it had the best HTML renderer out there. As for BeOS, Opera is out and has most of those features. I was talking about Opera 4.0, since that's what I've used, and 4.0 just recently came out of beta. True, Opera now has a lot of support (including CSS2 and XML.) As for Net+, I wholheartedly agree with you. Net+ is VERY feature poor. But does that suddenly taint my judgement about other OSs? I've used Netscape. It is ugly, it is bloated, it crashes. In fact, even the windows version crashes more often than IE does. So where's the problem. And me being a BeOS user has nothing to do with this. In fact (gasp) I think I use NT almost as much as I use BeOS. And I've been using Linux back since Slackware 3.x. I've used these OSs a lot, and I've gotten information on the usability of each one. Just because I like BeOS does not mean that I think everything in it is good. It has a dearth of applications (though to be fair, it does what I need), it doesn't have some cool things like COM, and it doesn't have DirectX:)
Well I would say it is more like the upgrade from Windows NT 3.51->4.0 (where the graphics drivers moved into the kernel) or Windows NT->Windows 2000. >>>> No you wouldn't. It is much more like a service pack, because it is an upgrade of the core architecture. WinNT to Win2K is something akin to retooling X to use DirectX! NT 3.51 -4.0 might work, though.
Microsoft hasn't upgraded DirectX on Windows NT with any service packs. Is it because it would take too many changes, or because it's a marketing lever to get you to buy Windows 2000? How long will it be before DirectX 8.0 (or 9) is available on a Windows based on an NT kernel? Windows NT 4.0 is still DirectX 3.0 >>>>>>>>>> You still have no clue about Windows architecture, do you? MS hasn't upgraded DirectX on Windows NT, becuase the NT Hardware Abstraction Layer is at odds with DirectX. The HAL was designed to prevent just the kinds of things DirectX is for. As such, it would require a total retooling of the HAL. Now Windows 2000 did this (it has the NT kernel) and I'm sure it was partially market driven, but I do think it was a good upgrade because it not only took a lot of work to retool the HAL, but they added COM+, ActiveDirectory, and rewrote the TCP/IP stack.
The architecture of XFree86 changed significantly with 4.0, and if you can't see the difference it's because, for the most part, it was done quite well and hidden behind unchanged API's. This is a Good Thing. >>>>>>>>>>> That's great. The architecture of DirectX was almost rewritten from 1.0 -> 5.0. I still don't consider an upgrade of a component like this akin to upgrading from NT4 to Win2K or from 95 to Win2K.
NT 3.51-> 4.0 was mainly a GUI shell upgrade, moving the video drivers into the kernel, and a few other tweaks (Direct 3D, DNS). Many people claimed NT 4.0 should really have been called 3.70 or something similar. >>>>>> Many did, as people are wont to. However, NT not only moved stuff into to kernel, retooled the GUI, but it also added stuff like fibers, DirectX, and improved networking and administration. Those kinds of changes take place between kernel revisions. If Slack justified a version upgrade between 4.0 and 7.0 (not taking into account the 3 digit leap) I think 4.0 was warranted.
As for the difference between Windows 3.1 and Windows 95, they were substantial. But the groundwork for Windows 95 was definitely visible in Windows for Workgroups 3.11 with its support for 32-bit hard disk I/O, win32s API, and so on. >>> Win32S is just that, a subset (and rather limited I might add) of the Win32 API. The ground work was there, but the actual foundation was totally overhauled. Most of the code remaining from Win 3.x was not in the core architecture, but in components in user-space (which has a slightly different definition in Win9x architecture) like the GDI, user services etc.
A good part of the "major differences" between W4WG 3.11 and Windows 95 were so that Microsoft could convince users that those pesky alternative DOS's like DR-DOS and PC-DOS were no longer necessary. There were certainly changes, but the DR lawsuit established, to my satisfaction at least, that the announcement of the "disappearance" of DOS in Windows 95 was more for marketing than technical reasons. Microsoft's arguments at the time had as much technical credibility as their infamous video demos in a more recent trial. >>>> That's FUD. Win95 contains no DOS code aside from the compatibility module. It contains a great deal of Win 3.x code, but as I said its up top. Think of it this way. The core foundation was totally overhauled. It got rid of DOS, supported Win32 protected mode, etc. Once they had this skelatal foundation, they stuffed a lot of Win 3.1 back on there to support graphics, printing, UI, etc. That's why Win95 has a lot of 16 bit code, even though the architecture is totally new.
a) Hungarian notation is, well, hellishly hard to understand, and that with this lovely notation, you don't need them funny characters above the numeric keys, or the languages Perl, INTERCAL, Brain**ck, or Malbolge to create write-only code. >>> You only have to learn it once. People program Win32 everyday, and frankly, not that many people consider Hungarian notationa "deal breaker."
b) DirectX/3D is under MS influence (control, as it were), and that MS doesn't have much of a rep for releasing documentation that accurately reflects the underlying API. Not to mention that NT (at least previously) had a problem of keeping updated in terms of DirectX, whereas it ran OpenGL just fine. >>>>>>> Yes, DX is under MS control. That's why it can progress so quickly. The ARB is both a strength and a weakness. It is a strength because it insures that one company cannot use OpenGL to its advantage (like MS does with DirectX.) However, the consensus method slows down the introduction of new features. That's why I think the open source development model would be so cool for something like this. One core group is in control so the API stays focused and moves quickly, but they are required to commit changes, so the API stays Open. As for NT, it really wasn't a political issue. DirectX access hardware directly, while the NT HAL is designed to prevent just that thing. As a result, concessions (ahem) had to be made in Win2K.
c) Or that while The Gamers(tm) run mostly Windows machines, that The Gamers(tm) make up a tiny fraction of the software market, especially in terms of revenue. Of the remaining population, not everyone runs Windows 9X/NT/2000/Whatever, and writing in OpenGL means that your apps can be ported to whatever platform has OGL support. >>>>>> Think of it this way. Gamers are just like normal consumers. Consumers use DirectX everyday. Office uses it, MSIE uses it, RealPlayer and QuickTime use it. These consumers (including business people) make up 95% of the market revenue-wise. Plus most run windows. From a business point of view, leaving out the Linux, BeOS, and Mac users means almost nothing! That said, I'm not urging people to use DirectX. (I want ports to BeOS) I'm simply saying that it is a superior API to OpenGL.
I don't see all the hoopla about DirectX. Maybe it's just me, but I've always valued things like ANSI C, ANSI C++, and Java, because of their portability. Sure, some languages may be better, or more elegant for certain things, but writing in languages that are standardized and portable gives you great flexibility, and allows 'laziness'. >>>>>>>>>> The hoopla is that its fast, flexible, and usefull. An API is not like a language. Where the speed, flexibility characteristics of a language are pretty set in stone, and API can change and evolve. If I was a business person, it makes much more sense for me to take advantage of something like DirectX, and leave 1% of users out in the cold, than to not use it, and get that 1%. Then, I'm not urging people to use DirectX. I'm extolling its virtues as a better API;)
Is the C family of languages the best for programming? Um... not by a long shot. At least that's IMHO. Do I use them? Yes. Same goes for OpenGL. Is it necessarily the best in terms of features? Well, maybe not. Do I use it? Yes. Why? See the above reasons. 'nuff said. Smee >>>>>>>> You can use it, that's great. In fact I use it! I like it better because I can run it on BeOS. But I hate every minute of using it, thinking that if I would just use Windows, I would have access to a much better API.
I've used both DirectX and OpenGL. In fact, I program OpenGL mainly. I find Direct3D has direct hardware access in most implementations. You simply cannot get a pointer to graphics memory from OpenGL. First, because OpenGL has no symantics for interaction with another graphics API (like D3D does for DirectDraw). Second, because there is nothing in the API that allows you to do that, the API just wasn't designed that way. You simply cannot use a rendered surface for a texture without rendering to a windowing system bitmap. OpenGL has no conception of a rendering target, it simply considers the primary buffer. As such, rendering to anything other than the screen takes jiggering by the glue logic (GLX or wgl.) These are weaknesses in OpenGL itself. It is possible that an implementation could expose direct access and the concept of a rendering target through something in wgl or GLX, but in that case it would not really be OpenGL anymore now would it? It would be almost-OpenGL. Anything written using these extensions would have to be rewritten to use another implementation.
Game programmers don't put out buggy code in general, it all depends on who you buy from. Quake III, for example, as been rock solid for me. As has Half-Life (I bought after most of the patches were out.) Unreal has also yet to crash, though I haven't played it much. In general, games are very speed sensetive code. As such, some of the alogirthms designed to wring out that speed tend to be a little fragile. It is really a side effect of the genre than anything else. If you don't want that on your system, then fine. Nobody's forcing you to. But notice something. I use NT for most of my gaming. Quake and Half-Life tend to run better on NT than on Win9x. Also, if you look at the reviews of Win2000, you'll notice that D3D is faster under that than under Win9x, and so far Win2K has been VERY stable. Not UNIX quality, but uptimes are about a month or so, certainly enough for workstation users. Speed is made in sacrifice to stability (for an OS anyway) only if you can't figure out how to do it right. The direct access can be unstable, (simply by writing out of a surface) but in practice, it tends to be stable. As for your status quo, that's the same thing Nintendo said, and look how they got whopped by Sony. Also, who is Loki to say what is a good game. They aren't porting Half-Life or Diablo, both games of the year, and they aren't porting my personal favorites like Shogo and FF8. OSS is all about choice, isn't it? Consoles will never capture PC market share, simply because they are totally different types of games. PC games in general tend to be more in depth. PC RPGs, for example, simply don't work in the console market. People have been saying that forever, but in practice, both segments get increasing userbases without stealing the other's users. Windows has 99% of home PCs, and I don't see that number declining. Supporting multiple platforms is just too much of a burden to make it cost effective. Although people like Carmack are making a stand for OpenGL, people like the creator of Unreal Tournament are pointing out its flaws. As time goes on, these flaws will become larger. While NVIDIA and ATI are making new chips with new features, and MS is immediatly incorporating these features into D3D, the ARB will be struggling to get older features into the spec, and developers will have to deal with multiple, incompatible extensions to support the same feature. I'm thinking, that unless the ARB does something drastic to make OpenGL competitive, there will simply be no incentive for developers to put up with the headaches. The main reason that the future looks bleak for GL is this. Direct3D continues to get better. It is pushed by Microsoft. No matter your opinion of them, they are aggressive. They get features in quickly. And, most frightening for OpenGL, they DirectX guys actually know how to program! DirectX is a relativly small code base, and it keeps getting faster and more stable with every release, even though features are being added so quickly. OpenGL is progressing more slowly. Unless the ARB does something to speed up OpenGL development, there will come a point (around DirectX 8 or 9) where D3D is DRASTICALLY better than OpenGL, and nobody will want to develop on it anymore. (At least in consumer space.)
Though the machine was single proc, the threading could still have something to do with it. If one of the threads was stalling (a transaction was taking to long, it was blocking on some kernel call, etc) the other threads would be sheduled in their place, and performance wouldn't be so bad. However, in a single threaded design, when one transaction stalls, the whole thing stalls, and thus performance suffers.
Blah blah blah, this is mindcraft all over again. People are used to benchmarking. They're used to not having to hyper-tweek the systems they get in. In fact, its an industry practice to benchmark the systems "out of box" meaning that even stuff like the Diamond ViperII, which would be a great card with updated drivers, recieves a poor review due to the fact that what shipped wasn't up to snuff. If RedHat is attempting to compete in the commercial marketplace, they have to play the game. Don't ship products untweeked. Take a look at the default workstation install of RedHat 6.1. Why is Sendmail running on my workstation? I don't even use sendmail. Samba? What? at daemon, I've never used that. Chron, nope not that either. INET, I'm not serving anything. NFS, I've never even SEEN an NFS drive much less used one. Now I'm sure there are tweeks that the ZD guys could have done to maximize the performance. Would it increase the TPS that much? Maybe, maybe not. Remember, Win2K is much more multi-threaded than Linux, and tends to stall less on these kinds of things. The point is, if those tweeks exist, they should be part of the default install. It was increadible that until Mandrake, there were no mainstream distros that shipped with hard-drive optimizations on. That's akin to not clicking the DMA button in control panel, something that manufacturers get lambasted for in reviews. If RedHat is going to make it in the "real world" they have to play the game. Believe it or not, polish counts for a lot. In the high end business market, and especially in the desktop (home, business) market, lack of polish and be a deal-breaker for an otherwise great product.
I'm pretty sure that that they are just rendered in hardware. However I'm curious. Why does lighting drop the triangle rate from 125 million all the way to 8 million? That explanation kind of went over my head, what's mutatis mutandis? I've used OpenGL software rendering, and it doesn't seem to have THAT much of an effect.
You do realize that's 100 dots per INCH, right? Not total resolution! 100 dots per inch works out to a res of around 1600x1200 on a 19" monitor.
You're kidding right? They print out a screen onto a silicon substrat. As for resolution, printers run upwords of 1440dpi in some models. Compare that to the 75-100dpi in you monitor.
Is it just me, or does anybody see the opportunity here for some seriously hi-res displays. What I'd like to see, personally, is one of these monitors as printed out by an Epson 1440. Think of it, a 1440dpi monitor! X probably couldn't handle it though...
I'm not commenting on testing methods exactly, but does it seem a little difficult to swallow that a Dell PIII/667 with one CPU running Linux beat a Compaq DS20 dual Alpha 667 running Tru64 by nearly 200 points?
You're sure W2K would fall apart? Why, have you actually done testing with it? FYI, both ZDNet and CNet (yea not exactly the pinnacle of pure PC power, but hey, they'll do) have tested W2K and found it to be extremely stable. Not quite as stable as any UNIX, mind you, but it would certainly not fall apart after 2 days.
Not necessarily. Nothing beats a fighting game where the person is right next to you. Ditto for coop play action games. Even games like Golden Eye are a lot more fun than a bout of Quake because you are actually playing with people. The TV really doesn't constrain games that much. For example, I have a 53 inch TV. Playing StarFox or GoldenEye multiplayer with four people still leaves a screen about the size of a 25inch TV for each person. As for N64, most N64 games are meant of 6 year olds, so no surprise you find them boring.
Do hardware lights really hit performance THAT much? With 8 local and 1 infinate, the performance drops from 125M polys down to 8M polys! Can anybody elaborate on just why that occurs?
There are many reasons why I think the GPL is really not going to work for commercial applications. It doesn't mean Open Source won't work, but the GPL in its current form allows too many opportunities for a competitor to take your code, mainly because that's exactly what the GPL was designed to do. The main reason is that it takes very little effort for another company to simply add on to your product. Thus, they end up with a superior product, at the cost of almost no R&D. This not only stiffles the development of the product (whose going to develop it if the other company will just steal it?) it takes sales away from the creator because the other company now has more resources (after all he spent very little "developing" a product!) to go after marketing and offering higher quality support. Maybe better for the consumer, but businesses won't like it, and in the end, they're the ones making the choices of what licenses to use. A more closed license (like the SCL) makes a lot more sense for businesses. It retains many of the advantages of Open Source, in that a consumer can fix bugs in their programs, and development speeds up, but it prevents another company from simply taking your work and adding to it. In the end, however, I think that commercial Open Source applications will be mostly second-rate. Put down those torches and hear me out. From a business point of view, Open Source is mostly a marketing gimmick. It is something that attracts users to your software. Unless the company is run by individuals that genuinely want to help users (rare, those people tend to set up projects instead) then OSS will be used as such. Usually marketing gimmicks are reserved for second-rate software. I think it is agreed that closed source allows a company to make a bigger profit of a high demand product. However, if the product is in low demand (read: low quality) then it may just be a way for a second-rate company to get some market share. Of course, there are exceptions to this, for example in system software and when facing software that is an entrenched power, even though superior solutions exist (read: Office). However, most popular software tends to be the higher quality ones, and I really don't think OSS is much of an incentive for companies making high quality software. If you doubt this, take a look at the current graphics market. NVIDIA is currently the market leader. There is nothing keeping them there (no propriotary APIs like Glide) except the sheer power of its hardware. (And good marketing to boot.) Now, second tier companies (like 3DFx and ATI) sieze this opportunity be releasing specs/open source drivers. This is the principal of using Open Source as a marketing gimmick for a product. I seriously doubt that anybody in 3DFx-land really wants to make the computing world a better place, (the original revolutionaries in management were mostly replaced, as was the original CEO), they are simply trying to regain market-share. This concept seems like it will progress to other companies in the software market as a whole, and unfortuneatly, OSS may not catch on in exactly the way you thought.
Firstly - the GPL is designed in such a way to guarantee that if you try to sell your software as a product, and are making good profit margins, that someone will undercut you, using your own work; it removes barriers to entry.
>>>>>>>>>>>>>
This is a very important point. Open Source is meant for the common good of software users. As such, it enables anyone to take a piece of work, and improve on it. However, this very fact makes it impractical for a business. Consider this. RedHat spends time gussying up Linux for the mass market. It spends actual money make these additions. However, if they release them under the GPL, a competitor can simply come, take their changes, add something little to it, and end up with a better product. This isn't seen much in Linux, because the product is essentially already developed. However, say I write an application. I GPL it and make money by selling technical support. A competitor can immediatly come and make some improvements, and sell the resulting product. He now has a better product, and thus gets the sales. However, he did very little to "create" his product. This doesn't happen in the closed-source world, because instead of just taking your code, your competitor actually has to do work to create a competing product. It takes a lot less work (read: money!) to make small improvements to a product than to create a better product.
If this product is in anyway a central part of your business, I would wait. Open Source is a business model, and just like any other business model, it has its risks and advantages. Importantly, Open Source is still an unproven business model. It reminds me of the whole free craze on the internet. The business model there is that you give stuff for free, and advertisers pay you for it. However, it turns out that that really doesn't work, and companies that give stuff away (like bigger.net or other free ISPs) are dissapearing. OSS still hasn't proved that it is a viable business model. Major companies like RedHat are still not making money off it, even tough they are in a strategic position in their market. Because of these reasons, I suggest you treat it like any other business model. Weigh the benifits and the risks. If it sounds like you can't stomach the risks, then OSS is probably not appropriate. Of course, as they say, nothing risked, nothing gained, eh?
Uh, let me rephrase that...
A) You have to use XF86Config no matter what. The visual-mode configurators don't work very well yet.
B) X is too stupid to figure out mouse protocol and screen refresh rates for itself. You absolutely should not have to specify refresh rate ranges. Sure you could use the stock SVGA that can do X at X hertz, but then you're not optimally using you're monitor.
C) With multiple RPMS, you can just open up the RPM and click install. You have to go through each on and install them in the correct order. I suppose you could highlight them all and select install, but I don't know how Kpackage would respond to that.
D) I recently did an upgrade equivilant to upgrading XFree. I installed service pack 6a on Windows NT. It updated the GDI, it added DirectX support, updated the kernel and server, and it installed Internet Explorer. This is equivilant to recompiling the kernel, upgrading X, and updating the window manager. I downloaded the 30 meg file, clicked the exe, it chugged, and it rebooted without any questions asked (aside from the "do you wish to reboot" dialouge.) The system came up fine later, I did not have to reconfigure anything.
I don't know, but I always liked hacker better. Though it is usually the name (umong geek circles anyway) to computer code hackers, it saves me from problems like this. Being, as it is, July 3rd, I thought that the "cracker" he was reffering to was actually a fire cracker. I thought that somehow fire crackers were set off near NASA headquarters, thus damaging equiptment... Anyway, I think that this latest cracking is reprehensible. C'mon, these guys are doing life-threatening things anway, and there is no need to escalate their problems anymore. I'd like to see the first guy who gets the death-sentence for cracking because he somehow manages to make a space shuttle crash. (Now there's a Supreme Court case for you.) Also, NASA really ought to beef up security. It is a sad thing, that it takes something to go really wrong before government agencies change security or safty characteristics (like Los Alamos lab.) I hope we don't have to have 4.5 million pounds of space shuttle crash down 5 seconds after launch because some basterd decided to flex his cracker muscles.
You're just complaining because Linux doesn't have it. (Just kidding!) Seriously though, I get fed up with nay-sayers who think that a new introduction is useless. There are new opportunities in technology. There are new things to be done. For example, library calls in this OS are implemented with objects. This is very cool, because it allows the extension of functions without inturrupting other library-level stuff, and also allows object to be swapped out with different functionality. As for a VM-type environment, I think this is done pretty well. It is a lower-level (thus easier to interpret quickly) language, yet it offers a lot of functionality (via the objects) to applications. As for the alpha blending, it is quite possible that they are simply using X for a shared memory direct access to the window type of thing, and that the alpha blending they are doing (where the views in different windows were blended together) really wouldn't be possible with regular X windows. When you can add all this functionality to Linux, then you can say, "okay, this is useless." As it stands, it is quite innovative, and I hope at least some of this technology makes it into the mainstream.
Having looked at the article, I must say that I'm not terribly impressed with it. There are dozens of OSs (QNX, BeOS, RiscOS, etc.) that have anti-aliased text. Most OSs can do the alpha blending tricks without a hiccup. (Look at the BeOS samples for a really cool alpha blending demo) amd tje widget sets look exactly like they came out of Windows 98 (except the - + buttons which actually make sense! If this is going to be the nifty stuff in the "new" OS, then I'm not too impressed. However, what impresses me is the code/object stuff. I'm thinking, instead of a full blown OS, this would make a great addition as a Linux development environment a la GTK+.
Matrox G200 is a fairly unique situation where Linux is faster. But if you look at the big picture (highest performance graphics cards, a wide array of apps), OpenGL on Linux is in a very poor state. I'm not saying that this can't be fixed (and it probably will be) I'm just saying, that it is not to the point where Linux users can claim to be even near the same level as Windows.
IE is anything but simple. Up until Mozilla, it had the best HTML renderer out there. As for BeOS, Opera is out and has most of those features. I was talking about Opera 4.0, since that's what I've used, and 4.0 just recently came out of beta. True, Opera now has a lot of support (including CSS2 and XML.) As for Net+, I wholheartedly agree with you. Net+ is VERY feature poor. But does that suddenly taint my judgement about other OSs? I've used Netscape. It is ugly, it is bloated, it crashes. In fact, even the windows version crashes more often than IE does. So where's the problem. And me being a BeOS user has nothing to do with this. In fact (gasp) I think I use NT almost as much as I use BeOS. And I've been using Linux back since Slackware 3.x. I've used these OSs a lot, and I've gotten information on the usability of each one. Just because I like BeOS does not mean that I think everything in it is good. It has a dearth of applications (though to be fair, it does what I need), it doesn't have some cool things like COM, and it doesn't have DirectX :)
Well I would say it is more like the upgrade from Windows NT 3.51->4.0 (where the graphics drivers moved into the kernel) or Windows NT->Windows 2000.
>>>>
No you wouldn't. It is much more like a service pack, because it is an upgrade of the core architecture. WinNT to Win2K is something akin to retooling X to use DirectX! NT 3.51 -4.0 might work, though.
Microsoft hasn't upgraded DirectX on Windows NT with any service packs. Is it because it would take too many changes, or because it's a marketing lever to get you to buy Windows 2000? How long will it be before DirectX 8.0 (or 9) is available on a Windows based on an NT kernel? Windows NT 4.0 is still DirectX 3.0
>>>>>>>>>>
You still have no clue about Windows architecture, do you? MS hasn't upgraded DirectX on Windows NT, becuase the NT Hardware Abstraction Layer is at odds with DirectX. The HAL was designed to prevent just the kinds of things DirectX is for. As such, it would require a total retooling of the HAL. Now Windows 2000 did this (it has the NT kernel) and I'm sure it was partially market driven, but I do think it was a good upgrade because it not only took a lot of work to retool the HAL, but they added COM+, ActiveDirectory, and rewrote the TCP/IP stack.
The architecture of XFree86 changed significantly with 4.0, and if you can't see the difference it's because, for the most part, it was done quite well and hidden behind unchanged API's. This is a Good Thing.
>>>>>>>>>>>
That's great. The architecture of DirectX was almost rewritten from 1.0 -> 5.0. I still don't consider an upgrade of a component like this akin to upgrading from NT4 to Win2K or from 95 to Win2K.
NT 3.51-> 4.0 was mainly a GUI shell upgrade, moving the video drivers into the kernel, and a few other tweaks (Direct 3D, DNS). Many people claimed NT 4.0 should really have been called 3.70 or something similar.
>>>>>>
Many did, as people are wont to. However, NT not only moved stuff into to kernel, retooled the GUI, but it also added stuff like fibers, DirectX, and improved networking and administration. Those kinds of changes take place between kernel revisions. If Slack justified a version upgrade between 4.0 and 7.0 (not taking into account the 3 digit leap) I think 4.0 was warranted.
As for the difference between Windows 3.1 and Windows 95, they were substantial. But the groundwork for Windows 95 was definitely visible in Windows for Workgroups 3.11 with its support for 32-bit hard disk I/O, win32s API, and so on.
>>>
Win32S is just that, a subset (and rather limited I might add) of the Win32 API. The ground work was there, but the actual foundation was totally overhauled. Most of the code remaining from Win 3.x was not in the core architecture, but in components in user-space (which has a slightly different definition in Win9x architecture) like the GDI, user services etc.
A good part of the "major differences" between W4WG 3.11 and Windows 95 were so that Microsoft could convince users that those pesky alternative DOS's like DR-DOS and PC-DOS were no longer necessary. There were certainly changes, but the DR lawsuit established, to my satisfaction at least, that the announcement of the "disappearance" of DOS in Windows 95 was more for marketing than technical reasons. Microsoft's arguments at the time had as much technical credibility as their infamous video demos in a more recent trial.
>>>>
That's FUD. Win95 contains no DOS code aside from the compatibility module. It contains a great deal of Win 3.x code, but as I said its up top. Think of it this way. The core foundation was totally overhauled. It got rid of DOS, supported Win32 protected mode, etc. Once they had this skelatal foundation, they stuffed a lot of Win 3.1 back on there to support graphics, printing, UI, etc. That's why Win95 has a lot of 16 bit code, even though the architecture is totally new.
a) Hungarian notation is, well, hellishly hard to understand, and that with this lovely notation, you don't need them funny characters above the numeric keys, or the languages Perl, INTERCAL, Brain**ck, or Malbolge to create write-only code.
;)
... not by a long shot. At least that's IMHO. Do I use them? Yes.
>>>
You only have to learn it once. People program Win32 everyday, and frankly, not that many people consider Hungarian notationa "deal breaker."
b) DirectX/3D is under MS influence (control, as it were), and that MS doesn't have much of a rep for releasing documentation that accurately reflects the underlying API. Not to mention that NT (at least previously) had a problem of keeping updated in terms of DirectX, whereas it ran OpenGL just fine.
>>>>>>>
Yes, DX is under MS control. That's why it can progress so quickly. The ARB is both a strength and a weakness. It is a strength because it insures that one company cannot use OpenGL to its advantage (like MS does with DirectX.) However, the consensus method slows down the introduction of new features. That's why I think the open source development model would be so cool for something like this. One core group is in control so the API stays focused and moves quickly, but they are required to commit changes, so the API stays Open. As for NT, it really wasn't a political issue. DirectX access hardware directly, while the NT HAL is designed to prevent just that thing. As a result, concessions (ahem) had to be made in Win2K.
c) Or that while The Gamers(tm) run mostly Windows machines, that The Gamers(tm) make up a tiny fraction of the software market, especially in terms of revenue. Of the remaining population, not everyone runs Windows 9X/NT/2000/Whatever, and writing in OpenGL means that your apps can be ported to whatever platform has OGL support.
>>>>>>
Think of it this way. Gamers are just like normal consumers. Consumers use DirectX everyday. Office uses it, MSIE uses it, RealPlayer and QuickTime use it. These consumers (including business people) make up 95% of the market revenue-wise. Plus most run windows. From a business point of view, leaving out the Linux, BeOS, and Mac users means almost nothing! That said, I'm not urging people to use DirectX. (I want ports to BeOS) I'm simply saying that it is a superior API to OpenGL.
I don't see all the hoopla about DirectX. Maybe it's just me, but I've always valued things like ANSI C, ANSI C++, and Java, because of their portability. Sure, some languages may be better, or more elegant for certain things, but writing in languages that are standardized and portable gives you great flexibility, and allows 'laziness'.
>>>>>>>>>>
The hoopla is that its fast, flexible, and usefull. An API is not like a language. Where the speed, flexibility characteristics of a language are pretty set in stone, and API can change and evolve. If I was a business person, it makes much more sense for me to take advantage of something like DirectX, and leave 1% of users out in the cold, than to not use it, and get that 1%. Then, I'm not urging people to use DirectX. I'm extolling its virtues as a better API
Is the C family of languages the best for programming? Um
Same goes for OpenGL. Is it necessarily the best in terms of features? Well, maybe not. Do I use it? Yes. Why? See the above reasons. 'nuff said.
Smee
>>>>>>>>
You can use it, that's great. In fact I use it! I like it better because I can run it on BeOS. But I hate every minute of using it, thinking that if I would just use Windows, I would have access to a much better API.
I've used both DirectX and OpenGL. In fact, I program OpenGL mainly. I find Direct3D has direct hardware access in most implementations. You simply cannot get a pointer to graphics memory from OpenGL. First, because OpenGL has no symantics for interaction with another graphics API (like D3D does for DirectDraw). Second, because there is nothing in the API that allows you to do that, the API just wasn't designed that way. You simply cannot use a rendered surface for a texture without rendering to a windowing system bitmap. OpenGL has no conception of a rendering target, it simply considers the primary buffer. As such, rendering to anything other than the screen takes jiggering by the glue logic (GLX or wgl.) These are weaknesses in OpenGL itself. It is possible that an implementation could expose direct access and the concept of a rendering target through something in wgl or GLX, but in that case it would not really be OpenGL anymore now would it? It would be almost-OpenGL. Anything written using these extensions would have to be rewritten to use another implementation.
Sorry, I don't know HTML that well.
Game programmers don't put out buggy code in general, it all depends on who you buy from. Quake III, for example, as been rock solid for me. As has Half-Life (I bought after most of the patches were out.) Unreal has also yet to crash, though I haven't played it much. In general, games are very speed sensetive code. As such, some of the alogirthms designed to wring out that speed tend to be a little fragile. It is really a side effect of the genre than anything else. If you don't want that on your system, then fine. Nobody's forcing you to. But notice something. I use NT for most of my gaming. Quake and Half-Life tend to run better on NT than on Win9x. Also, if you look at the reviews of Win2000, you'll notice that D3D is faster under that than under Win9x, and so far Win2K has been VERY stable. Not UNIX quality, but uptimes are about a month or so, certainly enough for workstation users. Speed is made in sacrifice to stability (for an OS anyway) only if you can't figure out how to do it right. The direct access can be unstable, (simply by writing out of a surface) but in practice, it tends to be stable. As for your status quo, that's the same thing Nintendo said, and look how they got whopped by Sony. Also, who is Loki to say what is a good game. They aren't porting Half-Life or Diablo, both games of the year, and they aren't porting my personal favorites like Shogo and FF8. OSS is all about choice, isn't it? Consoles will never capture PC market share, simply because they are totally different types of games. PC games in general tend to be more in depth. PC RPGs, for example, simply don't work in the console market. People have been saying that forever, but in practice, both segments get increasing userbases without stealing the other's users. Windows has 99% of home PCs, and I don't see that number declining. Supporting multiple platforms is just too much of a burden to make it cost effective. Although people like Carmack are making a stand for OpenGL, people like the creator of Unreal Tournament are pointing out its flaws. As time goes on, these flaws will become larger. While NVIDIA and ATI are making new chips with new features, and MS is immediatly incorporating these features into D3D, the ARB will be struggling to get older features into the spec, and developers will have to deal with multiple, incompatible extensions to support the same feature. I'm thinking, that unless the ARB does something drastic to make OpenGL competitive, there will simply be no incentive for developers to put up with the headaches. The main reason that the future looks bleak for GL is this. Direct3D continues to get better. It is pushed by Microsoft. No matter your opinion of them, they are aggressive. They get features in quickly. And, most frightening for OpenGL, they DirectX guys actually know how to program! DirectX is a relativly small code base, and it keeps getting faster and more stable with every release, even though features are being added so quickly. OpenGL is progressing more slowly. Unless the ARB does something to speed up OpenGL development, there will come a point (around DirectX 8 or 9) where D3D is DRASTICALLY better than OpenGL, and nobody will want to develop on it anymore. (At least in consumer space.)