# 3D drivers (OpenGL)  for BSD



## Geri (Aug 30, 2011)

hai bsd community!

i decided to put up this question becouse i see that opengl support with bsd is very bad (lot hardware has no 3d drivers, etc) 

i maybee can help a bit on this situation, *IF* there is a lot of peoples are interested.

-I have an own ogl 1.4 driver architecture ( http://TitaniumGL.tk ) wich has a multithreaded software renderer (can split the render of the graphics to multiple cpu cores)
-This driver is 2x-20x faster than mesa (depends on game, and the number of cpu cores)
-This driver is compatible with all hardware that can load X
-This driver - for example - can run a tons of games PLAYABLE on a ~ 3ghz core2duo, for example: quake2, quake3, xmoto, tuxracer, halflife, stepmania, tuxkart, warcraft3, almost every popular opensource game, etc etc etc
-This driver is compatible with WINE
-The driver has no special dependencies (just a lib that should be copyed to the system)

I am now thinking about what platforms should i add to my architecture. So i now thinking about adding BSD support, based on my software renderer.

*Should i create BSD compatibility?*

Please, if you are interested in this, reply to the topic, or just leave here your oppinion.

If i will see enough interest from the community in this driver, i will port it.

I hope i can found some way to share this drivers, that will worth my efforts (dont worry, i will try to keep it freeware and free for home-users).


----------



## vermaden (Aug 30, 2011)

That would be great, if You only have time and resources to do that.

You may also contact FreeBSD Foundation if You think that Your work should be funded.


----------



## graudeejs (Aug 30, 2011)

I'll hold my opinion about *freeware* to myself.... 
This project sounds interesting


----------



## mousaka (Aug 30, 2011)

Sounds great


----------



## Geri (Aug 30, 2011)

Thx for the great, positive oppinions.

My decision slowly started to slide into the ,,DO IT'' option.


----------



## Geri (Aug 30, 2011)

well, this day of my was took by BSD installer. Its still not working, becouse at one of my computer it panics out from the installer, second just cant read the installation disk properly (windows installs from it without problem), and even pkg_add is somewhat broken... 

at the moment, creating the port would not worth it (my invested energy would not recover in any ways...)

but *DONT* worry. I will made this, if this topic will gain over 2500 views within 2 week, becouse that means there is a lot of interest on it, and then it may would worth it.


----------



## from_mars (Aug 31, 2011)

It would be nice, if you add BSD support!


----------



## vertexSymphony (Aug 31, 2011)

Let's be honest ... nobody would be interested in some random 3D binary blob driver from a person just wanting some attention by stating stuff like " if this topic will gain over 2500 views within 2 week" or fooling around with doing it or not.
I honestly have lots of doubts about this, really.

It would be nice to have support for FreeBSD in your software, but you won't have +200 people adoring you like a totem for that.
In my personal opinion you should have another motivations that are useful for something ... like money (if you have something good, as vermaden say, contact FreeBSD Foundation) or simply because on FreeBSD you have an audience to target (I would say so, in GNU/Linux there's simply LLVMpipe, or better yet, the drivers for the card )

Cheers.


----------



## Geri (Aug 31, 2011)

Well, judging from the comments, there is alreday 4 people interested in it. If you not, i suggest you to search some different software, wich fits your needs better.


----------



## kpa (Aug 31, 2011)

Call me sceptical but trying to do something like this without coordinating it with those who are currently in charge of opengl drivers for FreeBSD isn't going to produce anything useful. Present your idea on the freebsd-x11 mailing list and you'll get some real feedback on whether your idea is good or not.


----------



## Geri (Aug 31, 2011)

kpa: this does not working like that.


----------



## Crivens (Aug 31, 2011)

Geri said:
			
		

> kpa: this does not working like that.



Not?
Well, it is one good thing to have more choices which renderer to use, but I do not see this thing going into my systems yet. Placing a library which per default contains code to run under a priviledged user, _without _the chance to audit it, on my systems? No, it is not working like that.

If it really is as good as you state, and you deliver the source also, then I for my case will try it out and may find myself using/liking it. But otherwise, why should I trust it enough to install it?


----------



## Geri (Aug 31, 2011)

Well, if this is so important to you, then maybee you should try to talk to FreeBSD Foundation, to buy a source fork from me.


----------



## segfault (Aug 31, 2011)

I am interested.
The more FreeBSD support the better!


----------



## graudeejs (Aug 31, 2011)

Geri said:
			
		

> Well, if this is so important to you, then maybee you should try to talk to FreeBSD Foundation, to buy a source fork from me.



under BSD license?


----------



## Geri (Aug 31, 2011)

graudeejs: hmm i must think on it 

------

well, i see there is big interest in this stuff, i have also recived some emails about the thing, so i must do it, does not matter how many ppls watch the topic. 

So i started the first steps on the project

- setting up a bsd based system wich is able to build this (20%)
- i prepared the source code to be compiled on BSD (100%)
- it seems i must rewrite the threading a bit (0%)
- i located the incompatible linux kernel-specific parts in my code, i will read about it and i will expand it to support freebsd kernel soon (0%)
- some memory management features does not work in BSD, i will remove them and change it  (0%)
- compilation and testing (0%)
- fixing BSD-specific bugs and issues (0%)


----------



## expl (Aug 31, 2011)

If you want to do any gaming or serious rendering on FreeBSD, you are limited to hardware from nvidia since anything else just does not match in quality of support. Nvidia ships their own renderer tailored for their driver and no other ogl implementation is compatible with the driver. So I do not see this having any significant practicality, specialy when its distributed in binary.


----------



## Geri (Aug 31, 2011)

Of course, this library is not so fast than nvidia's hardware rendering. The goal of this solution isnt to competite with nvidia - the goal is to multiple the ogl performance on systems where there is no 3d acc available.


----------



## Geri (Sep 1, 2011)

***************************************
TitaniumGL software-3D driver for FreeBSD
***************************************
         FIRST *ALPHA* VERSION
         USE AT YOUR OWN RISK!

              v. 2011,09
           free for HOME USE
can be distributed in the original package​

*To install *this driver, overwrite your libGL.so.1 to this.
Your libGL.so.1 is possibly located in /usr/X11R6/lib/ or /usr/X11/lib/

You may backup the original file, before you do this.
You may need administrator priviliges, to owerwrite that file, then switch back to normal user.

If the installation was succesfull, glxinfo should say: renderer: TitaniumGL


**WARNING** This is for 32-bit BSD-s only. Currently, there is no 64-bit compatible
release from this!

Its recommended, to have at least 768 mbyte RAM, before you install this.
This release requires at least Pentium1/6x86 class CPU.

known bugs: disappearing/flickering triangles 
(this platform-specific bug is possibly located in the transforming and lighting block)

if you see a bug, or see performance drop, please report it.


**WARNING** i REALLY hope that pthreads will do its job properly, and will utilise all CPU cores properly.
TitaniumGL's software 3D renderer utilises all your cpu cores (up to 4 cores) VERY AGGRESSIVELY AND CONTINOUSLY.
*PLEASE CHECK YOUR COLLING ON YOUR CPU*, BEFORE YOU INSTALL THIS DRIVER. Overheating of your system may can cause
unrepairable damage. Authour does not responsible for any damage that may this software directrly/indirectly
cause. You have been warned.




If you like the software, and want to help to expand it, please send a small
amount of money to the *paypal *address wich you can found on the download page.


download: 
http://TitaniumGL.tk​


----------



## ericbsd (Sep 10, 2011)

That look great but we need FreeBSD amd64 support too.:e
If it do what you say and work on ati, nvidia, ect....
I will put that on GhostBSD.
I will test soon I have i386 install.


----------



## Geri (Sep 12, 2011)

i currently has no 64 bit machine, so i cant port it. 

but i googling since weeks, to get a good cheap 64 bit devmachine 
(i have a bit special needs, becouse i also have different projects, and i want to setup a stuff for easy testing with multiple graphics card slots and lot of pci)


----------



## vermaden (Sep 12, 2011)

@Geri

Almost any new current CPU or used from 1-2 years ago are all 64bit ...


----------



## Geri (Sep 13, 2011)

and almost any new current graphics card used from 1-2 years ago are all supported by drivers on bsd, so my driver is useless there...


----------



## nekoexmachina (Sep 13, 2011)

Well, thanks for the interest in BSD, but why not open source?


----------



## Geri (Sep 14, 2011)

nekoexmachina said:
			
		

> Well, thanks for the interest in BSD, but why not open source?



money


----------



## xibo (Sep 14, 2011)

Geri said:
			
		

> and almost any new current graphics card used from 1-2 years ago are all supported by drivers on bsd, so my driver is useless there...



If that was true there'd be no point in using your "driver", would there?
In fact it's the opposite. Almost all cards that are more then 2 years old have drivers, while the new ones lack them.



			
				Geri said:
			
		

> money


Don't take it personal, but I'd rather donate money for Kostik to provide *us* with the requirements for the recent graphics drivers (and probably the ability to abuse VRAM for pageout storage) then to pay for a binary blob driver for *me*.


----------



## crankyadm1n (Sep 14, 2011)

xibo said:
			
		

> Don't take it personal, but I'd rather donate money for Kostik to provide *us* with the requirements for the recent graphics drivers (and probably the ability to abuse VRAM for pageout storage) then to pay for a binary blob driver for *me*.



I second that.


----------



## Geri (Sep 14, 2011)

i accept your oppinions, but i use this source codes to help casual gamedevs to port they ogl based games to the d3d api. releasing the source code is impossible. if you found a different, competitive, better software, use that.

,,If that was true there'd be no point in using your "driver", would there?''
as i saw, peoples mostly using bsd-s on very old computers


----------



## graudeejs (Sep 14, 2011)

Geri said:
			
		

> i accept your oppinions, but i use this source codes to help casual gamedevs to port they ogl based games to the d3d api. releasing the source code is impossible. if you found a different, competitive, better software, use that.
> 
> ,,If that was true there'd be no point in using your "driver", would there?''
> as i saw, peoples mostly using bsd-s on very old computers



Not really.


----------



## crankyadm1n (Sep 14, 2011)

Geri said:
			
		

> i accept your oppinions, but i use this source codes to help casual gamedevs to port they ogl based games to the d3d api. releasing the source code is impossible. if you found a different, competitive, better software, use that.
> 
> ,,If that was true there'd be no point in using your "driver", would there?''
> as i saw, peoples mostly using bsd-s on very old computers



I'm not sure whether your joking or not, all being said and done what you have is a very clever product. But this is more principle related than anything else. All of my FreeBSD nodes are very very powerful machines likewise at my place of employment. With a lot of BSD users a binary blob is not going to sit well and where there is a need for heavy lifting OpenGL people tend to lean towards nvidia.

I wish you all the best with your project but I don't think your taget audience is correct.


----------



## Geri (Sep 14, 2011)

yes, my target audience is not the bsd community.

i just made a port for bsd, in the hope that it may will be usefull for some peoples from bsd community, who has issues with 3d. and i also wanted to enhance my bsd programming skills. so porting this was a good, simply, quick project to do it, so first i checked if peoples are interested in it, and then i wrote it, and as a result, my software also gained one more platform, and more popularity.

suggestions are always welcome. but my projects does not driven by ideologies. so use it, if it helps.


----------



## ericbsd (Sep 14, 2011)

Geri said:
			
		

> and almost any new current graphics card used from 1-2 years ago are all supported by drivers on bsd, so my driver is useless there...


Yes but not supporting 3D acceleration.


----------

