Hardware OpenGL

I believe that Hardware Assisted OpenGL has been pushed back to Haiku R2. Can anyone confirm this?

That would be somewhat disappointing to hear but very understandable.

If work was being done on OpenGL. Then I wouldn’t mind something similar to what MorphOS did. Where they took TinyGL, added in hardware acceleration and some MESA features. This created a software-hardware OpenGL which is better than just plain software based OpenGL. If this mixed type OpenGL could achieve 50+ fps at 800x600 in 3D games then that would be good enough.

Or if possible, combine MESA software OpenGL + Hardware Assisted routines since TinyGL may be a little old to use.


Edit: Just found the answer. For those wondering, this is planned for R2. Regards.


My opinion on this subject:

I like MorphOS and TinyGL it is there good solution, if us this would permit to have already hardware 3D in R1 I am for - to support this finacially in bounty even.

MESA software OpenGL + Hardware Assisted it’s many better solution surely, but surely and many more difficult.

PS. Afaik. TinyGL have support for Ati r100, r200 as well as Voodoo 3/4 /5.

PS. Sorry for English, I’m not native speaker.

Haiku actually has Mesa 7.0, while all previous versions of BeOS (including Zeta) have the 6.x version of Mesa. Mesa is an OpenGL software rendered, and version 7.0 also supports shader programs. Due to the recent stability and device improvements with Haiku, I’m actually able to continue working on my OpenGL rendering engine under Haiku itself.

2 screenshots for your pleasure:

Both screenshots are taken under Haiku.

Hardware accelerated OpenGL is possible (ie. Rudolf created hardware accelerated drivers for older generation nVidia cards), but the problem is getting hardware specs. But have faith, since nVidia are bound to eventually release hardware accelerated drivers for Haiku. That day will come, my friend, and I’m willing to wager that we’ll see that day in the next 24 months.

So, I decided to look further into this to see what can be done. And I believe it is actually better to wait at least another year before coming up with Hardware OpenGL bounty. I’ll tell you why.

ATI open-sourced specs for R100 to R600 around late March 2008. This means that accelerated 3D can be done now. But the specs just came out recently & will take some time to get worked into Linux ( maybe one to two years ). So, better to let that happen & then port over the Linux driver to Haiku.

Nvidia still remains closed source. So will be too hard to do 3D driver for them. If an ATI 3D driver is made for Haiku then I’m sure that Nvidia will make a closed source one for us too. Or maybe they may decide to open-source their specs too if they notice they’re losing business to ATI.

Ok, so 3D hardware support can be done for ATI.
Someone did the first step really quick here:

There also is a newer RadeonHD 2D driver release. That’ll be good to update Haiku’s 2D driver which presently supports up to ATI X800 ( R400 ) video cards.

More time is also needed for Gallium to mature. Right now it is more in Alpha state. Maybe wait another 1 to 2 years before even using Gallium.

I’m all for contributing to an OpenGL bounty but prefer to start it at the right time. I believe that time will be in 1 to 2 years when Linux creates open-source 3D ATI driver based off the ATI specs. It looks like trying to do OpenGL right now is way too soon.

I actually used Rudolf’s 3D driver on BeOS with a Geforce2 MX card. I still have this video card today. Unfortunately ( because lacking specs ), Rudolf was unable to get his 3D Nvidia driver to work with anything faster like GF3, GF4, GF5, etc. I was able to run the 3D programs from Bebits good. NeverBall was crashing on me though maybe because the driver needed some more work - not complete? It’d be exciting to see a 3D driver from Nvidia for Haiku. I hope it’ll happen too but at the very least we should try to get an open-source ATI 3D driver done so ATI is also supported & to place pressure on Nvidia to make 3D driver for Haiku too. :slight_smile:


What about the ODG1 graphics card i imagine it should be functional enough to use in an R1 BeBox (Perhaps the guys building the BeBox 2.0 could use it? they sell for 1500-700$ to developers right now) by the time R1 is out of course and it is pretty beefy perhaps not cutting edges speed wise but it does have a novel FPGA at its core

I’m pretty certain most people would prefer ATI & Nvidia graphic cards for OpenGL. Don’t think many will buy the ODG1.

3rd & 4th choices would be Intel & VIA but not many have these cards and not easy to find them ( except for on-board video ). Intel I believe have an open-source Linux driver but I and others would prefer ATI or Nvidia get done first.

Now that ATI open-sourced specs, means that a good 3D driver can be made for it, but it’ll take awhile to do. Still, there may be enough time left to come out with an ATI 3D driver for R1. Would only have to support the two later series, R500 & R600, and R100-R400 support could come in R2 if need be.

First, Mesa 7.x is not a software renderer but a full open source OpenGL 2.0 compliant implementation which comes with a software renderer and several hardware accelerated renderers, via DRI.

In Haiku, Mesa is used in two places:

  1. in libGL.so, as GL API dispatching layer: all ugly work is delegate to whatever renderer bound behind each BGLView/BGLScreen. No renderers are built-in in this library, they comes as external add-ons, loaded on demand from …/add-ons/opengl directories.

  2. as a static support library, libmesa.a, which is a very helpfull library to write renderers, hardware accelerated or not. Our currently single and default renderer, Mesa Software Renderer, does exactly that. Look at src/add-ons/opengl/mesa_software_renderer to see how.

Second, with the Gallium3D current rework, porting existing DRI hardware accelerated drivers to Haiku/BeOS GL renderer add-ons design could be both pain (no surprise here) and quite too early, as Gallium3D has yet to reach a stable API.

On other hand, Intel have released a very clear, complete and professionnal documentation for their 2D and 3D extreme graphics family, which is maybe the best time and opportunity to write/turn DRI driver code into a first hardware accelerated Haiku’s GL renderer for these GPUs.

Unfortunatly, ATI/AMD’s released documentations are yet far to reach the same level of quality and completeness. Last but not least, NVidia is an even worser player on this topic.

My Haiku system motherboard just died (Asus P5W DH - Rock Solid, Asus!? Not anymore it seems…), so I may eventually buy a new one with onboard intel video in order to explore Intel Extreme 3D acceleration landscape…

tomebstone57 you don’t get it do you? Ati and Nvidia are the best on Windows and even Linux but that does not mean that they are the best for Haiku… they will never be 100% open source even if they do relese specs and the ODG1 WILL appeal to Multimedia users the very ones that BeOS originally targeted because the hardware is not JUST a 3D card it can become say… a dedicated mpeg2 enacoder or whatever type of acceleration is needed atm provided that someone codes support

and don’t go saying that they don’t have a have a product becase as far as that goes Haiku doesnn’t have a real “release” yet either while they do sell the hardware to devs similar to how haiku is being downloaded by the few Linux users out there + Diehard BeOS users and even a few windows refugees

Sure someone is going to write Nvidia and intel and ATI driver eventually but if we are building our own hardware why would we want to choose closed source hardware that is no better than choosing to run windows on a sparc … its stupid

[quote=cb88]Sure someone is going to write Nvidia and intel and ATI driver eventually but if we are building our own hardware why would we want to choose closed source hardware that is no better than choosing to run windows on a sparc … its stupid

Erm but the x86 hardware is closed-source too - you won’t find any detailed schematics on how to build your own Core2 Duo. All that is “open” is the specification of how to use it - and that’s enough to get stuff to run on the platform. Intel have led the way on open specifications for their graphic hardware too, and AMD/ATI are following suit. It’s a perfectly reasonable approach in my book.

I had a look at the opengraphics website - they are far from ready to sell the things. Yes you can buy development versions, but that is exactly what they are. Basically an FPGA on a PCI card. They are currently talking about a code push to have VGA (as in displaying a picture, no acceleration of any sort) working by January. The boards are also likely to be expensive and very underpowered compared to the commercial alternatives. They are also talking about targeting OpenGL 1.3, which predates any pixel/vertex shader stuff AFAIK.

Don’t get me wrong, I think it’s a cool project. It’s a great hobby, and a few years down the line might lead to some very interesting products. However Haiku has never been about open-source zealots, it’s about providing a good desktop experience for average users - and that means the hardware that they should focus on is the stuff that’s most popular.

Simon said it best about ODG1. The Radeon 9500 & Geforce 5200 came out with OpenGL 2.0 ( with latest video cards supporting 2.1 ). You can try to convince the OpenGL team but it’ll be a very hard sell. ODG1 has a long ways to go & will attract very few users ( mostly open-source followers ). Average users will want Nvidia & ATI ( & a few for Intel ) support.

Sure, Gallium3D is too new still. Maybe in 1 to 2 years it’ll reach BETA state & better to use it then instead.

ATI will never be very open because they can’t have Nvidia learning all their secrets. :slight_smile: Intel would be a good choice to get started with.

Buying a motherboard with on-board Intel video sounds good. You can always drop in an ATI video card down the road and be able to do that too for R2.

PS When you believe it is possible to do HW OpenGL renderer then let us know and we can create a bounty to help you along. Even if that is 1 to 2 years from now, so long as HW OpenGL can be done for R1 for Intel, ATI OR Nvidia.

Now, where can I purchase an Intel video card to test with. :slight_smile:

“Erm but the x86 hardware is closed-source too - you won’t find any detailed schematics on how to build your own Core2 Duo.”

that’s why sparc would be a great fir for this philosophy of total open source :slight_smile:

I mean it is like you aren’t even reading what i said :slight_smile:

i said ODG1 will likely be ready by R1 I dont think that is too far fectched and if it is well there is always R2… What I think is far fetched is thinking that Nvidia will ever make drivers for Haiku the reason they make Linux drivers is there there is money in it Linux is used at a lot of big Hollywood companys and they pay for the linux drivers not the average home user… of course the Linux nvidia driver is slowly making progress and you can bet i keep tabs on it :slight_smile:

actually the x86 instruction set is pretty open as far as i know… modern x86 is not even the same arch (as far as internal structure goes) as 486 even though they run the same code so it is really the code that is open how else could you write an OS for it …

I understood exactly what you were saying. :slight_smile:

Ok, I’ll explain. I still have Geforce 2MX around here. This card supports OpenGL 1.2 & Rudolf created Geforce 2 OpenGL driver that works on BeOS ( & may work on Haiku - untested ).

ODG1 is OpenGL 1.3 ( old version ). Newer cards from Nvidia & ATI are OpenGL 2.0 & 2.1. By time R1 is ready, we could be at OpenGL 2.2, 2.3+. Instead of ODG1, you would be better off trying to find a Geforce 2 card which has similar OpenGL spec but at least you’d have Rudolf’s driver to use. And you could use the HW OpenGL now with Geforce 2 on BeOS ( and later on Haiku ) .

ODG1 may or may not be done by the time Haiku R1 is released. Too hard to predict when things will be completed. Questions. What will it cost end users? What OpenGL performance can we expect? How many people would buy it? Would users be happy with OpenGL 1.3 card? etc.,

For 3D non-Windows games, people want video cards with newer OpenGL spec & fast performance. ODG1 will have older OpenGL support only and likely lower performance. ( maybe same as Geforce 2? ).

Intel provides very open-source Linux drivers for their video cards. ATI now provides fairly open-source specs for their cards. It should be possible to make either Intel or ATI 3D renderer for Haiku which more users would want to use. As for Nvidia, they would do a 3D driver if Haiku became mainstream OS ( or maybe if we had an ATI 3D driver - because it may threaten their market share ).

with respect to 3d proformance you probably are quite right … perhaps the intel side will shape up the X4500 series looks promising and now that i think of it the X3000 probably is as fast as a Geforce 2 mx 400 which I have 2 of… merely because they are soo old

I didn’t realize that they had actually written the opengl core of the ODG1 I thought since it was FPGA based they could support whatever… but perhaps they ran out of room on the FPGA? And if you are thinking about the ubuntu demo they did from what i have read that core was proprietary and they have done a major reimplementation… powervr is also getting in the game with intel Atom chips i think so they might become a contender also

on the ODG1 issue i guess it is just one of those things where you have to wait and see…

tonestone57, you really think nvidea would be afraid to loose that 0,0001% market share to us Haiku users?

No nutela, but if Haiku is shown at ( Linux & Open-Source ) conferences and events running ATI 3D. That would create greater exposure & interest among people. Then Nvidia would fear about getting a bad reputation. Especially if popular websites started showing Haiku working with OpenGL games on ATI video cards.

I do believe that at some point in time Haiku will become popular enough, used by millions of people, that Nvidia will take notice and create a 3D driver for it too. This could be with R2, R3+ ( or even as early as R1 ). I don’t have the exact numbers, but Zeta sold millions of copies - half or more in Germany, and people had to pay for the OS. Haiku should be able to get millions of users too because it is similar to BeOS & free. ( ie: If Zeta could do it, then Haiku should be able to too ).

It is about getting a large enough user base to grab Nvidia’s attention. It’ll happen, you wait & see. But if there is NO ATI 3D renderer on Haiku then Nvidia is less likely to do one because ATI is their only competitor.

Maybe the drivers to new, the low - priced and in measure of effective card:


Does this have open documentation?

Erm… although I haven’t seen any sales figures for Zeta, I’m quite sure that it didn’t sell “millions” of copies. I suspect that the number is in the low tens of thousands, at absolute best. If you have sources which say otherwise, I’d be interested in seeing them.

I do believe that Haiku has a very large potential market, however – far larger than (and fundamentally unrelated to) what Zeta was able to achieve.

Only in Bernd Korz’s dreams. :slight_smile:

You guys are right. It wasn’t millions of copies of Zeta sold. Somehow I got sales revenue mixed up with number of copies sold. The sales revenue would have been in the millions of dollars. :slight_smile:

According to Bernd, early on, they had sold 80,000 copies of Zeta 1.0. And he was expecting to do sales of 500,000 copies of Zeta. To guess, I’d say they would have sold 100,000 to 500,000 copies of full version Zeta 1.0 to 1.5. Only Bernd would know the actual numbers and I’m sure he isn’t talking.

Zeta would have sold more, and created a bigger user base, if it had been priced more reasonable. The high price kept many interested people from buying it. Still, it did fairly well getting 100,000+ users proving that there was interest in BeOS. Haiku should get many times more users than Zeta because it’s free.

Good to see that people are actually reading these posts.