OpenGL support?


#1

Hi,
I’m sorry for my ignorance, but can someone tell me if haiku supports OpenGL? I’m interested in reimplementing the basic OpenGL functions…would this be something useful for haiku?

-Alex


#2

A little big of digging around google revealed that there is a Mesa port for haiku…sorry for the post.

-Alex


#3
cypherx wrote:
A little big of digging around google revealed that there is a Mesa port for haiku...sorry for the post.
Although there is a port to BeOS, according to http://www.bebits.com/app/925 " It's still an alpha quality port. Any feature can be buggy, crashy or just unsupported. "

Also, I don’t believe that this is a reimplimentation of BeOS’s OpenGL kit. So, there is no BGLView. A nice project - that I’ve thought of doing/starting - is to do this.

Time has prevented me from starting it but it would be neat to do :wink:


#4
SigmaNunki wrote:
cypherx wrote:
A little big of digging around google revealed that there is a Mesa port for haiku...sorry for the post.
Although there is a port to BeOS, according to http://www.bebits.com/app/925 " It's still an alpha quality port. Any feature can be buggy, crashy or just unsupported. "

Also, I don’t believe that this is a reimplimentation of BeOS’s OpenGL kit. So, there is no BGLView. A nice project - that I’ve thought of doing/starting - is to do this.

Time has prevented me from starting it but it would be neat to do :wink:

It has an almost complete implementation of BGLView, etc. I dunno if its enough to support Blender3D, but I think it is. Teapot, etc all work perfectly.


#5
MYOB wrote:
It has an almost complete implementation of BGLView, etc. I dunno if its enough to support Blender3D, but I think it is. Teapot, etc all work perfectly.
Cool! Has there been talk about putting it in the Haiku source tree. The license seems to be capatible.

#6
SigmaNunki wrote:
MYOB wrote:
It has an almost complete implementation of BGLView, etc. I dunno if its enough to support Blender3D, but I think it is. Teapot, etc all work perfectly.
Cool! Has there been talk about putting it in the Haiku source tree. The license seems to be capatible.

Since one of the Haiku devs (Philippe Houdoin, network team leader) was the one that provided the original Mesa port for BeOS, and according to statements and perceived intent specified in this thread (see comments by phoudoin):

http://haiku-os.org/forums/viewtopic.php?t=208&highlight=mesa

It would appear that Mesa is already intended as the basis of Haiku’s OpenGL implementation. With appropriate information and driver-development effort, the software-rendering already present in Mesa can be substituted with 3d hardware-acceleration as necessary. Unfortunately this is the hard part as 3d hardware acceleration is somewhat of a trade-secret for video card manufacturers…

I’m not sure anything official has been stated, but I think based on what I have read here and elsewhere, that there is a high likelihood that Mesa will become part of the Haiku sourcetree if licensing permits.


#7

I really want to know how is going thispart now in the last version of haiku, because i test it in a usb and seem very advanced in develop.


#8

Hi,
We are using Mesa for OpenGL. For gcc5 applications we are using a rather recent version (currently 10.something, IIRC). It is still only doing software rendering, using either swrast (the old software rasterizer) or softpipe (a newer one based on llvm). There is still not much in terms of 3D acceleration, the last developments in that area being the old driver for NVidia cards (TNT2 to GeForce 4 or so) - probably too old to get anything useful out of it.


#9

in the theory one person can in this moment start to write a driver or should wait for that new rasterizer? i really dont know so much about ir but it is really intersting.


#10

It is possible to start working on the 3D stack already. It will probably need changes both in the drivers (adding something similar to Linux’s DRI/DRM) and in Mesa (enabling use of said interface).


#11

I took a look at DRI3 a while back; it looks like it might be abstract enough from X11 (they created it partially so that it would work with Wayland, I think?) that we might be able to implement that both in app_server and in the various drivers (not all that many hooks driver-side IIRC). And our intel_extreme and radeon_hd drivers are well-designed enough that modifying them shouldn’t be too hard.


#12

Then the wayland project are good for us in haiku in this time?


#13

I ported Mesa 18.0.2 (64-bit, gcc5) a few days ago to provide recent bug fixes. The current Mesa port in Haiku Depot (i.e. Mesa 17.1) provides OpenGL 4.5-related software rendering. Any OpenGL-based games and apps available for Debian (i.e.Ubuntu, etc), FreeBSD, Linux and Windows 10 will work if properly ported to Haiku.

Now that we have tools like Blender 2.79 and hopefully work on projects like Second Life (i.e. https://secondlife.com) , more users can enjoy OpenGL graphics on Haiku.


#14

Just for clarity, it is still software render. As far as i can see, it is “just” a version bump. I think the most work was the testing, and it is really nice, that you invested time to test it well.
Still a great job, mate, keep this up! :slight_smile: