On 5/13/06, Ray Heasman <[EMAIL PROTECTED]> wrote:
I will reply with more in this particular thread later, but I want to make it clear that I am not saying I have a better idea.
You should feel lucky I'm not Linus. :) Geek psychology doesn't take well to people who complain a lot but don't contribute something better. You either need to provide solid arguments or an alternative design that is demonstrably superior. You obviously have something in mind, so spill it. Also, if you go too long without contributing viable alternatives, people are going to start assuming that you're a shill from one of the other graphics vendors who feels threatened and wants to poison us with fear, uncertainty, and doubt. :)
I'm saying I have serious doubts about the way things are going. I'm saying "The Emperor has no clothes", not "I have the Emperor's clothes".
Surely, we do not want to delude ourselves into thinking that everything about what we're doing is optimal. But I don't think any of us feels like we have a solid handle on the future of things here. If OGD1 were the only thing we ever produced, we'd still be going a long way towards making it easier for hobbyists and FOSS enthusiasts to develop new hardware.
I'm not trying to just dump on the whole project, but I am extremely dubious about the direction things are going in and I am trying to explain why there is a problem. I am trying to air dirty laundry and make everyone re-evaluate where we are.
You're dubious because you feel that we're getting caught up in a narrowly thought out plan and we're going in the wrong direction. You think we're being brainwashed by "OpenGL" and "3D". Ok, I get it. We've been working on a "3D" design, while what you're asking for is something like a "2 1/2 D" design. Whatever. Who gives a crap what you call it. The things you've asked for, as far as I understand them, are either special cases of things provided in so-called "3D engines" or a minor generalization of such things. I'm not the world's top hardware designer, but I do have SOME sense of how much logic one thing or another is going to require. You haven't convinced me that we should do any thing more than look over our existing design and make sure it's general enough to do all of the things you think it should do while at the same time considering what features could be removed because they're not helpful. Don't get distracted by the fact that we call something a "shader" when it's just a generalized source image fetcher. Exactly HOW we design it is arbitrary. Any number of different approaches can be taken with similar performance and results. The fact that some abstract feature may be more or less difficult to program with one design or another doesn't matter as much as developing something that WORKS so that people can start using it. I can get caught up in a philosophical discussion as easily as the next geek, but I have also had "getting shit done" beaten into me, so I know that some times you just have to stop designing and start implementing, and if you forgot some minor feature or could have made something 2% faster, well, that's just too bad. At least now you have a product you can sell, giving you the opportunity you need to fix those things, rather than spinning your wheels never getting anywhere. The limiting factor for me wrt coding OGA is the practical issue of getting enough uninterrupted periods of time to work on it. Whether or not the design has some feature that forces me to have a 2 pixel pipelines instead of 3 or 4 isn't all that important to me when the total memory bandwidth is only so high anyhow and the throughput for operations that don't saturate the memory bandwidth is way more than fast enough anyhow. You say that 3D is impractical. I say that it's impractical to spend too much time worrying about it in the hopes that you can get extra performance somewhere where you can't necessarily benefit from it.
One of my points is that I think the current target is simultaneously too similar to the other stuff out there and too complicated to be a good first project. Complexity is a cost, not a feature.
Can you point out a few things that over-complicate OGA? You mentioned divide-by-w. That's fair. For orthogonal z, it totally useless. Anything else?
I do have an idea. It's weird and purposely "out there". I'm not going to bring it up now, because I'm not claiming that it's the answer to OGP's problems.
I can see some value in tearing things down before building them back up again. Trying to do both at the same time can get confusing. But at the same time, you're walking a fine line, because some people won't take you seriously when you make vague assertions. On the other hand, rigorous proofs and well though out arguments are ALWAYS interesting. But when you start attacking the design just because we call it "3D," all you do is make yourself sound like you're being distracted by arbitrary semantics.... which is what you seem to be accusing us of by wanting to design an "OpenGL" engine. Irony. Feel free to begin tearing things down whenever you're ready. And be specific.
I don't want a discussion of my idea right now, but a discussion of where OGP is today. I WILL put forward my idea later, but please bear in mind that I am not claiming it as a solution. It's just "different", and I hope that it might interest people more than a copy of everything else out there. I only started bringing it up, because I had to reply to your comments about 3D pipelines.
Different is always good. Lots of "different" ideas have been proposed here. Some have been helpful or inspirational, while others have not applied to our design but are still very interesting. But keep in mind, as a practical matter, that if we spend too much time trying to make a perfect design, we'll never produce a good one. What was that quote that Linus stole from Voltaire? :) _______________________________________________ Open-graphics mailing list [email protected] http://lists.duskglow.com/mailman/listinfo/open-graphics List service provided by Duskglow Consulting, LLC (www.duskglow.com)
