Jump to content

Closing in on 3.8


JeffR

Recommended Posts

Hey guys!


We've been hard at work shifting through issues and PRs to get 3.8 completed.


One month was an aggressive turnaround, but we felt it was needed to avoid the "5-6 months late" thing that cropped up when trying to work through 3.7. That said, a glance at the github milestone indicates we're 2 weeks late.


So what gives?


Well, 3.8 had a relatively short list of active issues and PRs, but a big one was ironing out the major walls in Linux support. 3.7 introduced Linux support, but there was a lot of stuff that didn't get the testing it deserved, so while it functioned, there were a lot of cases where things would go awry. A lot of that has to do with how tricky it can be to juggle support for the various Linux distros, compared to Windows or OSX.


So we tried to target graphical issues, and also some niggling issues with SDL as the platform layer. Part of this is because in the future, we'd like to gut all the custom platform code and just have the platform code act as a wrapper to SDL with some additional helper functions. This would go a long way to make the codebase leaner, and less stuff that can go pearshaped because no one is remotely familiar with what the original writer was doing.


However, as we started pulling on those SDL threads, more and more frays began to crop up, which meant other things that needed to be fixed.


Happily though, as far as we've been able to tell, there's on a few remaining issues pertaining to utilizing SDL as a platform layer, and a few outstanding problems with what we've got mapped so far for current Linux support, meaning that we shouldn't see many new PRs go into the stack, and we can finish up whittling down the ones that are there while reaping the benefits of everything working much better than before.


So, to conclude the update, everything's moving along and wrap-up and an RC is impending.


A huge thank you for everyone that's helped out so far, especially Az and TMM who have spearheaded a lot of the "make Linux not a shambling horror" effort.

Link to comment
Share on other sites

Do suppose shambling horror to creeping terror is a bit of an upgrade, yeah.


Should note on that end that the cmake build route now supports sdl2+opengl on windows, which'll cut down on the crossplatform differences for folks a bit, though it could use a bit more review in terms of properly hooking into say, steamOS and using that dll/.so instead of genning it's own. Project generator still needs that converted.


On the openGL end, we found that mesa drivers in particular weren't terribly happy with the extensions detection, so started eyeballing 2 solutions. First, TMM seems to have found an environment variable we can check to short-circuit that for glew, second we'll be looking into replacing the glew bindings with libepoxy. TMMs agreed to take point on that with Luis's approval.


As a quality of life thing, will try and snag some time next week to look into the possibility of having warnings crop up in debug mode windows side for files accessed that violate case sensitivity since that's a complete non-starter for unix derivatives, but that end of things is a bit of a mess as well, so no guarantees.


As always, aint particularly territorial about any of this stuff, so if folks want to jump in, by all means, please do.

Edited by Azaezel
Link to comment
Share on other sites

Then don't. Development has most of the stuff rolled in, and reports on oversights for combos and configs are just as important as the code its self.

 

I reported some problems I had in the 3.7 thread. buckmaster said that he really did not know what to tell me. I'll just wait till the newer version comes out to see if I have better luck with my system. I'm a beginner/hobbyist so I can wait. The devs work very hard and I don't want to annoy them!

Link to comment
Share on other sites

Then don't. Development has most of the stuff rolled in, and reports on oversights for combos and configs are just as important as the code its self.

 

I reported some problems I had in the 3.7 thread. buckmaster said that he really did not know what to tell me. I'll just wait till the newer version comes out to see if I have better luck with my system. I'm a beginner/hobbyist so I can wait. The devs work very hard and I don't want to annoy them!

 

Not sure what you're meaning here. Are you waiting on the precompiled binary?


Or do you mean you just don't want to spam us with a bunch of notices about how stuff is a bit janky/not working? If it's the latter, then you really don't need to worry about annoying us. One of the big reasons the Linux support was weak in 3.7 was because we didn't have many people that actually had it trying it out, so we had a total black hole of information on how it was doing on various distros and computer settings.


More information is NEVER a bad thing, so if you can, I'd really like you to grab the latest and give it a try. :)

Link to comment
Share on other sites

Thanks, I'll be happy to try out the latest again. Please link me to it, and the most updated compiling instructions for Linux. I am not very experienced with compiling software, but buckmaster seemed to think that I did everything the last time correctly. If it will help you, I posted the error messages that I was receiving, and my system information to Pastebin. I posted a link to that information in the Torque 3D 3.7 Released thread. Here's that link:

Thanks buckmaster,


Here's the link to my console.log on pastebin:

http://pastebin.com/frTmXMBs


I was not able to post the entire thing as pastsbin said it was too big. The last messages just repeat thousands of times.


Do you need my system info? Here it is:

http://pastebin.com/GYuLdZ9A


Thanks for all your hard work!

 

I hope this help you guys. Thanks again

Link to comment
Share on other sites

OPENGL: GL_INVALID_OPERATION error generated. No active program.

OPENGL: GL_INVALID_OPERATION error generated. No active program.

OPENGL: GL_INVALID_OPERATION error generated. No active program.

OPENGL: GL_INVALID_OPERATION error generated. No active program.

OPENGL: GL_INVALID_OPERATION error generated. No active program.

OPENGL: GL_INVALID_OPERATION error generated. No active program.

OPENGL: GL_INVALID_OPERATION error generated. No active program.

OPENGL: GL_INVALID_OPERATION error generated. No active program.

OPENGL: GL_INVALID_OPERATION error generated. is invalid.

OPENGL: GL_INVALID_OPERATION error generated. is invalid.

OPENGL: GL_INVALID_OPERATION error generated. is invalid.

OPENGL: GL_INVALID_OPERATION error generated. is invalid.

OPENGL: GL_INVALID_OPERATION error generated. is invalid.

OPENGL: GL_INVALID_OPERATION error generated. is invalid.

OPENGL: GL_INVALID_OPERATION error generated. is invalid.

would be what I was referencing in the commentary for https://github.com/GarageGames/Torque3D/issues/1335. Should be fixed in devhead.


Edit: also, for a simpler compile setup:

Link to comment
Share on other sites

would be what I was referencing in the commentary for https://github.com/GarageGames/Torque3D/issues/1335. Should be fixed in devhead.


Edit: also, for a simpler compile setup:

 

I'm sorry for being such a dunce. Where can I download that latest development source (devhead)?


Thank you for the comments, and the link to that video. I'm excited to see T3D running under Linux. I'm running Linux Mint 17, but that should not matter. I'll have time soon to try this out.


Thanks to all the developers!

Link to comment
Share on other sites

To anyone using Linux at the moment, could you guys give this PR a test for me?


https://github.com/GarageGames/Torque3D/pull/1394


It only is an issue in Linux builds, so I just need a quick secondary confirmation before rolling it in.


You can trigger an assert easily by using the assert console function right into the console. So try it without and with the fix and double-check it behaves as you'd expect.

Link to comment
Share on other sites

  • 2 weeks later...

Nice job guys... BUT... It seems that Torque has become a Linux game engine. :? Now I have the problem that I run Windows7 and when I want to build the engine I still need the bl**dy DirectX SDK! The thing is 5 years old! Also targetting for at least Vista (just because XP is no longer supported) there is no need for it, so why isn't it eliminated?


In my humble opinion this should also be a thing in 3.8. I still use 3.0 with most of the 3.5 things in it and also the D3D9-refactor which Anis did some time ago. With this refactor it isn't necessary to have the SDK installed.


Forgive me the rant, but this frustrates me largely.

Link to comment
Share on other sites

Nice job guys... BUT... It seems that Torque has become a Linux game engine. :? Now I have the problem that I run Windows7 and when I want to build the engine I still need the bl**dy DirectX SDK! The thing is 5 years old! Also targetting for at least Vista (just because XP is no longer supported) there is no need for it, so why isn't it eliminated?


In my humble opinion this should also be a thing in 3.8. I still use 3.0 with most of the 3.5 things in it and also the D3D9-refactor which Anis did some time ago. With this refactor it isn't necessary to have the SDK installed.


Forgive me the rant, but this frustrates me largely.

 

So push a compatible patch?

Link to comment
Share on other sites

Nice job guys... BUT... It seems that Torque has become a Linux game engine. :? Now I have the problem that I run Windows7 and when I want to build the engine I still need the bl**dy DirectX SDK! The thing is 5 years old! Also targetting for at least Vista (just because XP is no longer supported) there is no need for it, so why isn't it eliminated?


In my humble opinion this should also be a thing in 3.8. I still use 3.0 with most of the 3.5 things in it and also the D3D9-refactor which Anis did some time ago. With this refactor it isn't necessary to have the SDK installed.


Forgive me the rant, but this frustrates me largely.

 

Actually, I do want to get Anis' work on that in for 3.9. It didn't get in for 3.8, because while slightly annoying to have to get the older SDK, it wasn't really a stability or function issue. I agree though, using the Windows SDK instead of the DirectX SDK is how it should be in the future.


Like Az said though, if you've got it working? Duuuude pass it over here :) I'd love to get it in.

Link to comment
Share on other sites

You'll forgive me, but I'm not entirely sure I'm tracking how finishing what was started with a submission to the main engine translates to somehow making it a linux engine. Particularly not in light of the fact that putting more work into the SDL2 end of things means *less* platform specific code down the road...


I do sympathize. Like I said on the old forums, ran with a combined refactor/ogl/deferred abomination for a while there myself till the various codebases diverged enough it was tough to track. Have given Anis a poke and asked him to stick his head in if he has a chance, but He's been pretty preoccupied with the day job of late, so no guarantees on an immediate answer there.

Link to comment
Share on other sites

@Azaezel: I'm sorry that I gave the impression that T3D had become a linux engine, it was just my frustration, and certainly didn't mean to insult anybody. In the days of 3.0 and 3.5 it was a relatively easy job to add the D3D9 refactor to the engine and build it with the windows SDK, but in 3.7 it seems to be a hell of a job (I've just run winmerge to see the differences), so it may be somewhat of a missed change here unfortunately. But if we all know everything on forehand, we were all millionaires. ;)


And I know that the Linux/OpenGL version was a problem child for a long time (too long maybe). It is only good that we now have the possibility to build for different platforms. I am currently trying to add DX11 support to my game The Master's Eye (again most of the work has been done by Anis and co.) aside DX9, making some progress but still got many unexpected results. I will see what I can do at my side between all the other gamedev stuff.

Link to comment
Share on other sites

×
×
  • Create New...