Jump to content

Development on Ubuntu 16.04


Dwarf King
 Share

Recommended Posts

Soooooooooooo! I have this question. Are any of you using Torque 3D MIT to develop games on Ubuntu/Linux? If so what are you experiences so far?


Any issues or show stoppers?


What TS IDE do you use and are they just as good as Torsion?


Is the Linux set up tutorial still up to date?


What do you use for programming in the engine herself and compiling her as well? I mean Visual Studio is not gonna be a choice here...


I have seen that Unity and Unreal are showing healthy signs of being useful for making games on Ubuntu.


Please feel free to answer and share awesome links etc :mrgreen:


Note: I am thinking about moving most of my stuff to Ubuntu 16.04 as I find the system very neat and attractive as a daily work platform.

Link to comment
Share on other sites

For the c++ IDE i always use Qt Creator on linux (actually i do on macOS too because i hate xcode). I have never had any dramas running on linux and when i was actively developing with t3d i always made a point to check and make sure the linux port was still running(i have no idea if the lastest version works though). I have always used Linux mint which is based on Ubuntu, i have also tested it on openSUSE and it worked fine on that too. I'm not sure if the wiki is up to date on linux, the procedure wouldn't have changed too much if it is a wee bit old. As for TS i always atom text editor on linux, it has TS syntax highlighting but it ain't full featured TS ide like torsion though.

Link to comment
Share on other sites

Well, I've recently moved over to Linux, having FINALLY found a Distro that I didn't only find "passable", but actually love using - which is Ubuntu Mate.


Anyway, I got Torque3D downloaded, having happily found there are binaries available for it (I thought I would have to compile it all myself, etc). It runs quite smoothly, about as I'd expect it. Haven't gotten into any real work with it, yet, but intend to. Just posted a thread asking if anyone knows of a good heightmap editor for Linux, as a matter of fact.


I'll post with my experiences and such as time goes on. But so far, it seems to "just work" as I'd expect it to.

Link to comment
Share on other sites

Thanks for all the replies.


So I manage to do a simple test on Ubuntu 16.04 with a binary T3D MIT version 3.10. Just the demo. Well that was a sluggish/snailish experience... :? :? :?


I did some research on the amd drivers for Ubuntu 16.04 and found out that... https://help.ubuntu.com/community/RadeonDriver :idea:


I tested this demo game on an old Alienware m17x R2 with 8 gigs of ram, ATI Radeon Mobility 5870 1G and i7 920xm... :idea:


It would appear that many, many amd gpu drivers are not supported on Ubuntu 16.04 and that people recommend rolling back to 14.04 https://askubuntu.com/questions/815591/ubuntu-14-04-5-16-04-16-10-and-amd-graphics :geek:


since that "ou get to use fglrx and get the performance you want/need". :mrgreen: :mrgreen: :mrgreen:


Damn.... :shock: I mean that is rather disappointing... At least Ubuntu 14.04 is suported to around 2019.... :ugeek: :ugeek:


Well I guess I will have to try that out then....

 

Well, I've recently moved over to Linux, having FINALLY found a Distro that I didn't only find "passable", but actually love using - which is Ubuntu Mate.


Anyway, I got Torque3D downloaded, having happily found there are binaries available for it (I thought I would have to compile it all myself, etc). It runs quite smoothly, about as I'd expect it. Haven't gotten into any real work with it, yet, but intend to. Just posted a thread asking if anyone knows of a good heightmap editor for Linux, as a matter of fact.


I'll post with my experiences and such as time goes on. But so far, it seems to "just work" as I'd expect it to.

 

@Mitovo which gpu are you using with that Ubuntu Mate distro?


Update: Some says that that the Oibaf's drivers should be working fine on older cards with Ubuntu 16.04 https://launchpad.net/~oibaf/+archive/ubuntu/graphics-drivers


UPDATE!!! I did the install of those Oibaf's drivers and they work very well.

Link to comment
Share on other sites

Now to something else. When I move around with the player in the demo he will not stop moving after I release the "w" button. Either that is a bad programming bug(thinking cyclic related issues here) or then something is weird. I mean I have never had that issues with action mapping before myself in any earlier version of Torque 3D.


None the less it seems that working/developing on Ubuntu 16.04 might be possible after all... Hopefully the editors will behave. Gonna do some more research on that as well.


Atomic IDE seems to be neat as a scripting tool.

Link to comment
Share on other sites

Now to something else. When I move around with the player in the demo he will not stop moving after I release the "w" button. Either that is a bad programming bug(thinking cyclic related issues here) or then something is weird. I mean I have never had that issues with action mapping before myself in any earlier version of Torque 3D.


None the less it seems that working/developing on Ubuntu 16.04 might be possible after all... Hopefully the editors will behave. Gonna do some more research on that as well.


Atomic IDE seems to be neat as a scripting tool.

 

Show me your console.log, if you are not using the binary drivers from amd you won't be getting full hardware acceleration. Amd stopped developing their old binary drivers (fglrx) and re-wrote their linux drivers, they now have an opensource one called amdgpu and the proprietary driver is called amdgpu-pro, problem is they just abandoned a lot of older hardware with these new drivers. Unfortunately if you are going to seriously use linux, you need to use NVidia or late model amd cards. You can also as you suggested go back to using older distro's, i can't remember what version of xorg the old fglrx works with and what version the support stops at, i'm sure a google search will provide those details.


*Edit:

just watch out with ubuntu 14.04, the default gcc version will not work with the latest t3d, you will need a later version, not 100% sure if gcc 4.9.x works? but i know gcc 5.x+ does or you can also use clang.

Link to comment
Share on other sites

Now to something else. When I move around with the player in the demo he will not stop moving after I release the "w" button. Either that is a bad programming bug(thinking cyclic related issues here) or then something is weird. I mean I have never had that issues with action mapping before myself in any earlier version of Torque 3D.


None the less it seems that working/developing on Ubuntu 16.04 might be possible after all... Hopefully the editors will behave. Gonna do some more research on that as well.


Atomic IDE seems to be neat as a scripting tool.

 

Show me your console.log, if you are not using the binary drivers from amd you won't be getting full hardware acceleration. Amd stopped developing their old binary drivers (fglrx) and re-wrote their linux drivers, they now have an opensource one called amdgpu and the proprietary driver is called amdgpu-pro, problem is they just abandoned a lot of older hardware with these new drivers. Unfortunately if you are going to seriously use linux, you need to use NVidia or late model amd cards. You can also as you suggested go back to using older distro's, i can't remember what version of xorg the old fglrx works with and what version the support stops at, i'm sure a google search will provide those details.


*Edit:

just watch out with ubuntu 14.04, the default gcc version will not work with the latest t3d, you will need a later version, not 100% sure if gcc 4.9.x works? but i know gcc 5.x+ does or you can also use clang.

 

Well I solved it. The shaders had to be set to normal under options(I guess my gpu is not that strong when dealing with OpenGL) and then it ran smooth and nice. Also the Oibaf's drivers are working out just fine I think but it also seems that the JUNIPER(at least that is what it calls my gpu under details, but when throwing lspci -nn | grep -E 'VGA|Display' in a terminal I get the ATI mobility 5870 ) chip set is fully supported(see here: https://help.ubuntu.com/community/RadeonDriver and scroll down to fully supported). Yeeaaaah! :mrgreen: :mrgreen: :mrgreen:


The conclusion here is that the laptop works(which is good as I was starting to consider trying out LuBuntu http://lubuntu.me/ ). Now I am gonna see how the Windows 10 Pro desktop can be gutted and made into a Dual boot solution. It has a UEFI bios... damn... http://www.everydaylinuxuser.com/2015/11/how-to-install-ubuntu-linux-alongside.html


I also did a Unigine benchmark and test. As long as quality is set to normal and not high it runs very well on the ATI mobility 5870 1G card.


Anyway it really looks so promising this setup with Ubuntu 16.04 LTS. With some work hopefully very soon Windows 10 and its Telemetry + all its damn hickups with privacy are to be history and will only be needed to be dealt with in case of porting for a short time.


The age of Windows 10 only is over.... Now the age of Ubuntu dual boot has arrived :ugeek:

http://2.bp.blogspot.com/-YOYdSr4Mo80/Vj_OQ6ak3rI/AAAAAAAANJM/gnt6VRsveC8/s1600/windows-vs-ubuntu.png


However the ultimative goal is this only and no other OS unless ports are needed:

http://www.omgubuntu.co.uk/wp-content/uploads/2016/04/ubuntu-1604-thumb.jpg

And hopefully with crossover or Wine I shall be able to reach that goal eventually.

Link to comment
Share on other sites

Dual boot is not too difficult, i run windows 10, linux and macOS on my machine, all run perfectly happy along side each other. I got an NVidia gpu, so luckily i get nice fast official drivers on all 3 of them :D Good luck with it all.

Link to comment
Share on other sites

Dual boot is not too difficult, i run windows 10, linux and macOS on my machine, all run perfectly happy along side each other. I got an NVidia gpu, so luckily i get nice fast official drivers on all 3 of them :D Good luck with it all.

 

Oh I guess I did not write that clearly. I have installed Ubuntu 16.04 as dual boot on the laptop(both on m11x and m17x that is), but the desktop has a UEFI bios so the approach is a bit different here. Not that it is difficult but it is just not boot with USB and follow the GUI's guidelines. It is more like remember to click continue and then enter Ubuntu terminal and do some work in it(I forgot that in the first run and got a not boot option and only windows 10 boot... hence annoying).


I guess I am with time gonna go for some Nvidia gpus as it seems they love Linux a bit more :D

Link to comment
Share on other sites

Oh yeah if you do end up using Qt Creator grab the copy from here and not your local package system, they are often rather out of date for qt creator. https://info.qt.io/download-qt-for-application-development just choose opensource, you only ever need to select Qt Creator with the installer, don't need the other Qt stuff (unless ya plan on using it).


Here is a dark theme based of the dark theme in visual studio if ya like that kind of thing https://drive.google.com/open?id=0B0tHSJ8eQYh6V1V1ZWhLWU5wWXc , screenshot from mine below. It also has built in cmake support, that is handy.


http://i63.tinypic.com/kbu1xj.png

Link to comment
Share on other sites

Oh yeah if you do end up using Qt Creator grab the copy from here and not your local package system, they are often rather out of date for qt creator. https://info.qt.io/download-qt-for-application-development just choose opensource, you only ever need to select Qt Creator with the installer, don't need the other Qt stuff (unless ya plan on using it).


Here is a dark theme based of the dark theme in visual studio if ya like that kind of thing https://drive.google.com/open?id=0B0tHSJ8eQYh6V1V1ZWhLWU5wWXc , screenshot from mine below. It also has built in cmake support, that is handy.


http://i63.tinypic.com/kbu1xj.png

 

Thanks @Timmy I shall check it out.


About AFX:

Okay now that all my awesome machines are on the Ubuntu rocks and that I have seen how smooth and awesome(I mean it feels damn smooth) the Torque 3D MIT version 10 Linux binaries on the desktop my next question is...


Has any of you ported or found an awesome way to make AFX work? I assume that it means making some OpenGL calls instead of DirectX 9 calls in regards to shaders etc... Also I am no engine programmer here and certainly not a OpenGL or DirectX Ninja what so ever.


Please feel free to drop a message in here about that. Calling out @JeffR :mrgreen:

Link to comment
Share on other sites

I've been Linux only for over a year(now on Mint 18.1) and have since ported Bryce's Tactical AI Kit to 3.10. I just wanted to say that Code::Blocks is what saved the day when compiling. I probably should have tried QT Creator a bit more. For an editor I use Atom because you can search the whole project for keywords, really comes in handy. jEdit's TS plugin looks so promising but for some reason it has a problem loading the changes I make. It;s too bad because it is set up a lot like Torsion. I have not tried the TS editor that was posted here. The instructions for compiling T3D in Linux are fine from the wiki page.

Link to comment
Share on other sites

Pretty sure @Azaezel has an afx branch here on his repo https://github.com/Azaezel/Torque3D .. not sure the status of it or how up to date it is.

 

https://github.com/Azaezel/Torque3D/tree/afx_plus_devhead not 100% up to date, and likely will not continue to play solo-maintenance-monkey on that once we hit E/C given the spiderweb nature of it hooking onto the core classes, and E/C by nature pretty much obliterating those, but should be a largely workable starting point for now.

Link to comment
Share on other sites

Pretty sure @Azaezel has an afx branch here on his repo https://github.com/Azaezel/Torque3D .. not sure the status of it or how up to date it is.

 

https://github.com/Azaezel/Torque3D/tree/afx_plus_devhead not 100% up to date, and likely will not continue to play solo-maintenance-monkey on that once we hit E/C given the spiderweb nature of it hooking onto the core classes, and E/C by nature pretty much obliterating those, but should be a largely workable starting point for now.

 

@Azaezel

I did a install with Cmake and code::block as the tutorial in the Youtube video showed. It works fine with the AFX branch you have. Except that the AFXDemo templates throws a Fatal error in Engine/source/gfx/gl/gfxGLShader.cpp @ 665 when I lunch the Torque application... Damn... The other templates seems to run just fine.

Link to comment
Share on other sites

@Azaezel

I did a install with Cmake and code::block as the tutorial in the Youtube video showed. It works fine with the AFX branch you have. Except that the AFXDemo templates throws a Fatal error in Engine/source/gfx/gl/gfxGLShader.cpp @ 665 when I lunch the Torque application... Damn... The other templates seems to run just fine.

just copy the shaders dir over from full.

Link to comment
Share on other sites

@Azaezel

I did a install with Cmake and code::block as the tutorial in the Youtube video showed. It works fine with the AFX branch you have. Except that the AFXDemo templates throws a Fatal error in Engine/source/gfx/gl/gfxGLShader.cpp @ 665 when I lunch the Torque application... Damn... The other templates seems to run just fine.

just copy the shaders dir over from full.

 

@Azaezel

Ahhhh! I remember that from windows as well :oops: :oops: :oops: :oops:


Thanks :D

Link to comment
Share on other sites

Not sure if I am posting in the correct subject/board.

But I compiled Torque3D on Ubuntu, not 16.04 but 17.04, and compiling went well but when I try to run the code I get the following error message:

 

./Project01 -dedicated -mission "levels/Empty Terrain"
Initializing platform...
Input Init:
% 
/home/T3DPro/Engine/source/windowManager/sdl/sdlWindowMgr.cpp(448,0): {Fatal} - SDL init error
Platform::debugBreak: triggering SIGSEGV for core dump
% Trace/breakpoint trap (core dumped)

 

I checked the code in sdlWindowMgr.cpp and the following is in there:

 

int res = SDL_Init( SDL_INIT_VIDEO | SDL_INIT_JOYSTICK | SDL_INIT_HAPTIC | SDL_INIT_GAMECONTROLLER | SDL_INIT_EVENTS | SDL_INIT_NOPARACHUTE );
AssertFatal(res != -1, "SDL init error");

 

No idea what it does to be honest and no idea why it gives me that error.

Is there anyone that can help me with this?

I did not change anything on the code so far, just cloned it from the GIT repository and compiled it.


Thanks in advance

Link to comment
Share on other sites

Thank you for that information. I changed the code and now I get the message:


/home/T3DPro/Engine/source/windowManager/sdl/sdlWindowMgr.cpp(446,0): {Fatal} - SDL error:No available video device


So guess I will have to find out why it does not find an available video device.

Probably cause I am running it on a VMware machine. But I did not have this problem before though.

Link to comment
Share on other sites

I take it other GPU-requiring programs have no issues running in your VM, like a game or somesuch?


SDL's pretty good about detecting stuff as far as i know, so if something's getting missed, we'll want to check on that. The VM could be confounding it's detection though.


Also, just to clarify, Az's PR for the SDL error reporting worked for you? If so, I can check that into devhead to make it official.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...