T3D -- OpenGL support? MAX OS X? Linux ??
by Jeff Yaskus · in Torque 3D Professional · 08/13/2012 (2:09 pm) · 44 replies
So, has there been any change in porting T3D fully to Max / Linux ?
Last posts I could find, mention openGL porting and Mac OS X drivers as the road block.
But I haven't seen any updates since 2009 ... and recently became involved in a project whose intended target is schools --- which all use MAC OS.
And when searching the GG forums, came across a recent post
www.garagegames.com/community/forums/viewthread/129581
where Richard states the following ... which piqued my curiosity;
When we get back up and running on Mac OS X it should get us an OpenGL renderer that might be easier to port back to Linux than trying to wade through the DirectX to OpenGL path, but there's no word on when that'll happen.
Is it a strictly OS X issue? namely, crappy drivers were mentioned as previous cause of delays.
Or is it an OpenGL issue? If so, what exactly ?
Was the code partially ported, then stopped when roadblocks encountered??
And if openGL is resolved, will it also allow it to then run on Linux builds as well?
If Advanced Lighting is an issue ... can't we work on a build that just uses basic lighting??
... I'm not asking for someone to do all this, just want to know the current state of things.
TGE compiles and works under Linux / Mac OS X / Windows OSes, right? (I had the license)
Maybe I should consider that as a possible solution if T3D is still years from a working *nix port.
Besides, T3D just looks so much better!
Last posts I could find, mention openGL porting and Mac OS X drivers as the road block.
But I haven't seen any updates since 2009 ... and recently became involved in a project whose intended target is schools --- which all use MAC OS.
And when searching the GG forums, came across a recent post
www.garagegames.com/community/forums/viewthread/129581
where Richard states the following ... which piqued my curiosity;
When we get back up and running on Mac OS X it should get us an OpenGL renderer that might be easier to port back to Linux than trying to wade through the DirectX to OpenGL path, but there's no word on when that'll happen.
Is it a strictly OS X issue? namely, crappy drivers were mentioned as previous cause of delays.
Or is it an OpenGL issue? If so, what exactly ?
Was the code partially ported, then stopped when roadblocks encountered??
And if openGL is resolved, will it also allow it to then run on Linux builds as well?
If Advanced Lighting is an issue ... can't we work on a build that just uses basic lighting??
... I'm not asking for someone to do all this, just want to know the current state of things.
TGE compiles and works under Linux / Mac OS X / Windows OSes, right? (I had the license)
Maybe I should consider that as a possible solution if T3D is still years from a working *nix port.
Besides, T3D just looks so much better!
About the author
Long time gamer, hacker and programmer. With dreams of making video games -
#2
It runs, and I can connect from Windows... but the problem is, that it (server on linux) crashes when running sim with Bullet enabled (crash happens somewhere deep in lib). I don't have spare time to track down the issue, so this is why I still haven't pushed it into repo.
Of course, I can push it as is (so it doesn't use Bullet), but then, the dedicated build on Linux will not work with bullet-enabled client.
Any thoughts/ideas?
P.S. My changes doesn't break/change anything if you run on Windows."
https://lab.collateral-studios.eu/trac/ticket/39
if u have time then can try it out.
08/13/2012 (4:39 pm)
"I've got the engine compiled on Linux (have a local git branch), and I can push it to the trunk..It runs, and I can connect from Windows... but the problem is, that it (server on linux) crashes when running sim with Bullet enabled (crash happens somewhere deep in lib). I don't have spare time to track down the issue, so this is why I still haven't pushed it into repo.
Of course, I can push it as is (so it doesn't use Bullet), but then, the dedicated build on Linux will not work with bullet-enabled client.
Any thoughts/ideas?
P.S. My changes doesn't break/change anything if you run on Windows."
https://lab.collateral-studios.eu/trac/ticket/39
if u have time then can try it out.
#3
http://www.garagegames.com/community/forums/viewthread/130724/6#comment-830347
summery:
there is mac and linux port.still in testing level.but the problem is there is no tester.
everybody wants the port to be done by someone.
and then gave them to fulfill their needs.
alas,if i had enough knowledge on opem GL :(
08/13/2012 (4:45 pm)
for mac port see this comment:http://www.garagegames.com/community/forums/viewthread/130724/6#comment-830347
summery:
there is mac and linux port.still in testing level.but the problem is there is no tester.
everybody wants the port to be done by someone.
and then gave them to fulfill their needs.
alas,if i had enough knowledge on opem GL :(
#4
08/13/2012 (11:32 pm)
@Ahsan is the linux port a NULL render device only? Or can it run openGL?
#5
I would really like to at least see basic functionality working, as I have a project that runs in schools and they tend to use only MAC OS computers.
Basic lighting and no physics is fine even
08/14/2012 (1:01 am)
I'm trying to put my hands on a Mac running OS X to assist with the testing ... and may also build a Linux test box. I would really like to at least see basic functionality working, as I have a project that runs in schools and they tend to use only MAC OS computers.
Basic lighting and no physics is fine even
#6
Once we get a mac version working, hopefully, moving to linux won't be too trivial.
08/14/2012 (2:05 am)
I was going to get a mac version working with the CE, but I'm still awaiting a reply from Mich about it.Once we get a mac version working, hopefully, moving to linux won't be too trivial.
#7
I will provide to merge on the CE.
08/14/2012 (4:40 am)
Steven, you could add a folder with files received from Mich?I will provide to merge on the CE.
#8
dont know.but as it says "dedicated build" so i think "NULL render".
08/14/2012 (5:12 am)
Quote:
@Ahsan is the linux port a NULL render device only? Or can it run openGL?
dont know.but as it says "dedicated build" so i think "NULL render".
#9
Don't get me wrong. I ran Linux exclusively at home for more than 10 years. That is one of the reasons I picked up TGE early on. I could compile and run under Linux.
However, most of the posts I see about video games and Linux is that people who want to play video games just dual boot. Those that don't want to dual boot use Wine. So, if you really want Linux desktop support without changing the render or input layers, just make sure it is Wine friendly.
08/14/2012 (7:59 am)
Is there even a market for Linux support on the desktop?Don't get me wrong. I ran Linux exclusively at home for more than 10 years. That is one of the reasons I picked up TGE early on. I could compile and run under Linux.
However, most of the posts I see about video games and Linux is that people who want to play video games just dual boot. Those that don't want to dual boot use Wine. So, if you really want Linux desktop support without changing the render or input layers, just make sure it is Wine friendly.
#10
If you game was on the market when Steam comes to Linux, that's a good chance for sales.
I think Multiplatform support was a good selling point for TGE, but since TGEA and T3D they haven't been viable options. Unity is better if you want to ensure support for these platforms and makes sure you go to market everywhere possible. Yes source comes in to it, but remember most other indie solutions have less of a need to be in source of the engine.
I think GG should bring back support for Linux and Mac. I really don't see the reason to not have OpenGL on Windows either. IT would mean just all GLSL, rather than HLSL and GLSL etc. Make it more simplified, and look the same on all platforms.
08/14/2012 (4:52 pm)
Well with Steam now coming to Linux I actually see it as a potential market. For indie games you want as big as a market as you can get, and there are less games to choose from on Linux and Mac.If you game was on the market when Steam comes to Linux, that's a good chance for sales.
I think Multiplatform support was a good selling point for TGE, but since TGEA and T3D they haven't been viable options. Unity is better if you want to ensure support for these platforms and makes sure you go to market everywhere possible. Yes source comes in to it, but remember most other indie solutions have less of a need to be in source of the engine.
I think GG should bring back support for Linux and Mac. I really don't see the reason to not have OpenGL on Windows either. IT would mean just all GLSL, rather than HLSL and GLSL etc. Make it more simplified, and look the same on all platforms.
#11
So how is Steam going to work under Linux? Are all those games going to magically work under Linux? Or are they using Wine like technology? Unless a game actually runs under Linux natively having Steam won't matter. Steam is just a game pimp, not the actual game.
08/14/2012 (8:44 pm)
Wasn't the move to directx for the xbox anyway? Or is that a different api entirely?So how is Steam going to work under Linux? Are all those games going to magically work under Linux? Or are they using Wine like technology? Unless a game actually runs under Linux natively having Steam won't matter. Steam is just a game pimp, not the actual game.
#12
The reason I was considering the Mac port was because my target audience for current project is schools, 4-5th grade students specifically ... and so a Mac version would allow it to run natively on all their MAC computers.
w/o the need for dual booting or what not. And of course, allow for some tweaks to be done to ensure it runs ok on their hardware.
But as I research the MACs it seems the majority are about 2-3 years behind PCs -- for the equivalent cost + power combination.
None of them have extremely powerful video cards, etc ... feels almost more like buying into some exclusive club to get mediocre hardware, than simply buying a decent piece of computing hardware. imho
08/14/2012 (9:46 pm)
Frank @ Yep, direct X came to PCs as a result of the xbox ...The reason I was considering the Mac port was because my target audience for current project is schools, 4-5th grade students specifically ... and so a Mac version would allow it to run natively on all their MAC computers.
w/o the need for dual booting or what not. And of course, allow for some tweaks to be done to ensure it runs ok on their hardware.
But as I research the MACs it seems the majority are about 2-3 years behind PCs -- for the equivalent cost + power combination.
None of them have extremely powerful video cards, etc ... feels almost more like buying into some exclusive club to get mediocre hardware, than simply buying a decent piece of computing hardware. imho
#13
Yeah, I am kind of thinking it might be a good idea to be ready for that. So, yeah, we need Mac and Linux ports. Like I was sayin' all along... ;)
08/14/2012 (11:50 pm)
I can understand the Mac port, but after seeing and being an exclusive Linux user for a long time I just don't think the Linux desktop as a very big market right now. I do think, however that the hand held Linux market like Android is just getting started. I expect that they will have hardware with the embedded GPUs that will be able to run T3D in the not too distant future. So to prepare for that maybe we make sure we have a Linux desktop port... Yeah, I am kind of thinking it might be a good idea to be ready for that. So, yeah, we need Mac and Linux ports. Like I was sayin' all along... ;)
#14
@Frank: Unity Technologies have Linux support for the player in the forthcoming 4.0 version. When anyone can suddenly support the average Linux (latest few Ubuntu, Mint, CentOS and Fedora) distro effortlessly, it just might be worth it. It might not be a huge market, but if we judge purely from HumbleBundle stats the users aren't entirely opposed to spending money. Linux users consistently pay more for everything when given the choice, including for soundtracks :)
Linux and OS X ports would share all the OpenGL code, so the real work is just getting the window/input wrapper for each done right. Maybe also untangling old code and making a true headless mode not depend on all the graphical libraries.
I'd personally be satisfied with just a dedicated server which runs on any of the three platforms (Linux would be the biggest one here, so even more of a reason). Preferably supported directly by GG.
08/16/2012 (8:41 pm)
@Jeff: DirectX existed long before the first Xbox. And "MAC" is "Media Access Control" ;)@Frank: Unity Technologies have Linux support for the player in the forthcoming 4.0 version. When anyone can suddenly support the average Linux (latest few Ubuntu, Mint, CentOS and Fedora) distro effortlessly, it just might be worth it. It might not be a huge market, but if we judge purely from HumbleBundle stats the users aren't entirely opposed to spending money. Linux users consistently pay more for everything when given the choice, including for soundtracks :)
Linux and OS X ports would share all the OpenGL code, so the real work is just getting the window/input wrapper for each done right. Maybe also untangling old code and making a true headless mode not depend on all the graphical libraries.
I'd personally be satisfied with just a dedicated server which runs on any of the three platforms (Linux would be the biggest one here, so even more of a reason). Preferably supported directly by GG.
#15
Am curious how well it will work (if at all) on those built in video cards, like the Intel ones used in so many of the cheaper machines.
08/20/2012 (10:43 am)
I have a couple machines for testing the Mac and Linux ports ... just need to get a first hand look at the test builds.Am curious how well it will work (if at all) on those built in video cards, like the Intel ones used in so many of the cheaper machines.
#16
@Jeff
DirectX ... ah yes.. when most talk about DX they think of 3D (not 2D) and that part came from a company called RenderMorphics way back in the mid 90's (around 95 I think) because I worked at a small game company in Nottingham then when it came around. So I saw the very first version :) (yeah, I'm *that* old :) ) The initial DirectX (2D) came as a replacement for the WinG API (Still have all of them stashed away somewhere) and the first versions were absolutely horrible. It gave a whole new meaning to the term 'snafu' :) So most people I knew back then mostly dealt with Software 3D or OpenGL.
Anyway, Microsoft bought RenderMorphics (the guys there ended up writing another API called 'Qube' (or maybe qubesoft? Don't remember, maybe they are still around?) and incorporated it as DirectX 3D, and that was also a nightmare to deal with. DirectX didn't become reasonable to work with until version 7. Version 8 (a slightly modified version) is what ended up in XBox (1) and version 9 (again modified) in XBox 360. Some of those tools found their way back into PC world later.
A little bit of history there :)
08/28/2012 (5:00 pm)
@Frank Many DirectX based games (on linux) work through the use of 'Wine' and similar. Google it. And AFAIK the work that Valve have done for Linux apparently have better performance than the DirectX counterpart, much thanks to cooperation with nVidia. Or so I'm told anyway.@Jeff
DirectX ... ah yes.. when most talk about DX they think of 3D (not 2D) and that part came from a company called RenderMorphics way back in the mid 90's (around 95 I think) because I worked at a small game company in Nottingham then when it came around. So I saw the very first version :) (yeah, I'm *that* old :) ) The initial DirectX (2D) came as a replacement for the WinG API (Still have all of them stashed away somewhere) and the first versions were absolutely horrible. It gave a whole new meaning to the term 'snafu' :) So most people I knew back then mostly dealt with Software 3D or OpenGL.
Anyway, Microsoft bought RenderMorphics (the guys there ended up writing another API called 'Qube' (or maybe qubesoft? Don't remember, maybe they are still around?) and incorporated it as DirectX 3D, and that was also a nightmare to deal with. DirectX didn't become reasonable to work with until version 7. Version 8 (a slightly modified version) is what ended up in XBox (1) and version 9 (again modified) in XBox 360. Some of those tools found their way back into PC world later.
A little bit of history there :)
#17
08/28/2012 (5:01 pm)
Just the mention of WinG makes me want to punch someone...
#18
Just joking ;)
08/28/2012 (5:31 pm)
@David: :) remember this? :...
WinGRecommendDIBFormat((BITMAPINFO *)&HeaderAndPalette);
DibWidth = (rect.right > MIN_DIB_WIDTH) ? rect.right : MIN_DIB_WIDTH;
DibPitch = (DibWidth+3) & ~0x03; // round up to dword
DibHeight = (rect.bottom > MIN_DIB_HEIGHT) ? rect.bottom : MIN_DIB_HEIGHT;
HeaderAndPalette.Header.biWidth = DibWidth;
HeaderAndPalette.Header.biHeight *= DibHeight;
hbmWinG = WinGCreateBitmap(hdcWinG, (BITMAPINFO *)&HeaderAndPalette, (void **)&pBits);
hbmOld = SelectBitmap(hdcWinG, hbmWinG);
if (HeaderAndPalette.Header.biHeight > 0)
{
pBits += (HeaderAndPalette.Header.biHeight - 1) * DibPitch;
DibPitch = -DibPitch;
}
for (int i=0; i<NUM_BOXES; i++) Boxes[i].X = Boxes[i].Y = 0;
...Just joking ;)
#19
I run Oblivion under Linux using Wine. OBSE even works under Wine.
@Ronny,
That is interesting. Info like that is good for understanding who might want to run the code. I know back when a company worked on Quake 3 for Linux that was one reason I bought it. It was because I could get the Linux executable. I think you can run as a dedicated server in Linux. Not sure about OSX.
08/28/2012 (6:52 pm)
@Michael,I run Oblivion under Linux using Wine. OBSE even works under Wine.
@Ronny,
That is interesting. Info like that is good for understanding who might want to run the code. I know back when a company worked on Quake 3 for Linux that was one reason I bought it. It was because I could get the Linux executable. I think you can run as a dedicated server in Linux. Not sure about OSX.
#20
Plus as a Unix Administrator by day, its always nice to see anything NON-windows ... without all the bloat. so I'm all for Linux or Mac native versions of Torque.
WINE is great, but cant really expect elementary school kids to understand how to use it, etc. So a native Apple OS would be a big help. (for the project I'm working on, at least)
Coincidently, I've found it a bit more difficult than expected to get Mac running in VMware ... seems they only want you to do so, from actual Apple Hardware?!
08/28/2012 (10:32 pm)
Steam is also owned by Valve -- so I wouldn't be surprised if they started also releasing their games on Linux as well. or re-leased their older games, etc... Plus as a Unix Administrator by day, its always nice to see anything NON-windows ... without all the bloat. so I'm all for Linux or Mac native versions of Torque.
WINE is great, but cant really expect elementary school kids to understand how to use it, etc. So a native Apple OS would be a big help. (for the project I'm working on, at least)
Coincidently, I've found it a bit more difficult than expected to get Mac running in VMware ... seems they only want you to do so, from actual Apple Hardware?!
Torque Owner Jeff Yaskus
jy games
www.garagegames.com/community/forums/viewthread/130833
In it, Scott Burns says;
Torque does not support Linux, all Linux support was dropped years ago and has since been community supported only. T3D supports Windows and Mac, however the Mac support does lag behind Windows. Qualified Mac 3D graphics programmers are very difficult to come by, which is why 1.1 and 1.2 still need to be updated to fully support Mac currently.
Anyone know how/where to find the Linux port?