Jump to content

Torque 3D 3.8 Release Candidate


JeffR

Recommended Posts

Hello everyone!


It's been mere 2 months since 3.7 came out but we've all moved at a break neck pace in that time, and already find ourselves poised for the next.


As I'd mentioned in the progress update, we intentionally set a very aggressive timeline on 3.8 to try and keep focus, and get a feel for how much can be pushed through when that focus takes hold - and also because there were some fairly large issues in the 3.7 release we had not properly caught and tested.


This set the theme for our work on 3.8: cleanup and stability. Linux was a major factor of this: due to oddities with drivers, and minimal testing ability, some pretty big issues slipped past us for 3.7, and while that's never a good thing, it did teach us a lot. A lot of new Linux users, and a few old-hat users setting up Linux environments, allowed us to be in a MUCH better testing position for issues such as these.


This is part of what we ran over by a little bit: getting some of those major problems resolved, a lot of which came from the still-in-progress SDL implementation, took a good bit of time and work to get in a more acceptable shape. However, with this, it puts us in a better position going forward to streamline and de-gunk a lot of old stuff from the engine - not QUITE yet, but in the near future.


And so, while 3.8 will find itself fairly light-weight on the new and shiney, hopefully everyone that grabs it on our downloads page will find it to be a much more stable platform. We ask that you guys grab it, create some test projects on whatever platforms you have access to, and really rake it over the coals. She's just about ready, but no doubt there are some problems that were missed, and that's where this release candidate comes in.


The RC will run for a week or two to try and squeeze a little bit more polish in, but she's almost there, and we look forward to you guys testing this RC, and then making use of the release!


NOTE: The reason why this is a few days past the 1st, like we were shooting for, is because Linux still lacks save/open dialogs. I've been working to fix this for 3.8, but I've ran into a few problems with it, so it's not currently in the 3.8 RC. I'll keep working on it during the RC testing phase and will have it in for the 3.8 release proper.

Link to comment
Share on other sites

Could you please provide .exe in the templates ?

 

Whoops! Thanks for catching that, total brainfart on my part. I've added the Windows binaries in.

 

Thanks for this! I was able to install on my Linux Mint 17 system. I'm a beginner. Not sure if I'm giving the engine a true challenge, but is there anything you would like for me to test?

 

If you can, one major helper would be if you could toss me a Linux binary so I can add them to the Linux package.


Beyond that, pretty much just test everything you can. Like I'd mentioned, a lot of this release was stability rather than new features, so the more surface area you can poke and prod, the better idea we'll have of how much more stable the whole thing is. Especially on Linux systems, if you can ensure there's as few graphical and input problems as possible, and that the editors seem to work as expected(sans the already mentioned save/load dialogs that are still being worked on) that'd give a good idea of how she's shaping up.


Tl;dr: if you can think of it, give it a poke and see what it does ;) I'd started working on a master test-list on the wiki here


If you think of anything that should be tested, either edit that wiki page to add it in, or mention it here to be added.

Link to comment
Share on other sites


If you can, one major helper would be if you could toss me a Linux binary so I can add them to the Linux package.

 

 

JeffR I'm not sure what you are asking for here. Do you want me to send you the actual application file that I open to start T3D? What's the best way to send that?

Link to comment
Share on other sites


If you can, one major helper would be if you could toss me a Linux binary so I can add them to the Linux package.

 

 

JeffR I'm not sure what you are asking for here. Do you want me to send you the actual application file that I open to start T3D? What's the best way to send that?

 

Correct, that way people on Linux can download and give it a whirl before needing to worry about compiling it themselves.


As for file hosting...hmm. Maybe a dropbox?


I should probably make a public folder on my stuff for cases like this.

Link to comment
Share on other sites

Here's what I have tested so far:


Terrain Paint:

New Paint Layer- OK

Slope Mask- OK

AutoPaint- OK


Forest Paint:

Brush follows terrain- OK

Error when trying to paint trees- ../Engine/source/math/mathUtils.cpp(326,0): {Fatal} - MathUtils::randomPointInRadius - something is wrong, should not fail this many times.

When I try to paint trees, I get an error dialog. If I press Ignore, I get one tree. If I press Debug, or Exit, T3D closes.


Scene Tree:

UI locks up when trying to name Basic Clouds (Global u)

I can name the Basic Clouds something without a "u" in the name

Cloud Layer works, but I cannot name it anything with a "u" in the name

Ground Cover works. Applied new texture OK

Cannot drag items from the Library to the scene. I can only add objects if I double click the Library item.


Terrain Editor:

All brushes seem to work


Object Import:

DAE with textures OK

Link to comment
Share on other sites

Error when trying to paint trees- ../Engine/source/math/mathUtils.cpp(326,0): {Fatal} - MathUtils::randomPointInRadius - something is wrong, should not fail this many times.

When I try to paint trees, I get an error dialog. If I press Ignore, I get one tree. If I press Debug, or Exit, T3D closes.


Scene Tree:

UI locks up when trying to name Basic Clouds (Global u)

I can name the Basic Clouds something without a "u" in the name

Cloud Layer works, but I cannot name it anything with a "u" in the name

 

Haven't been abvle to repro the pointinradius bit win side. will try lin side tomorrow morning. on the global u, Got: http://i.imgur.com/6wecIj2.png where wasd also moved the player. so looks like she's not properly taking full control for the text edit elements *edit: except for the console, which does seem to be behaving...

Link to comment
Share on other sites

On the forest:

Point2F randomPointInCircle( F32 radius )
{
  AssertFatal( radius > 0.0f, "MathUtils::randomPointInRadius - radius must be positive" );

  #define MAX_TRIES 20

  Point2F out;
  F32 radiusSq = radius * radius;

  for ( S32 i = 0; i < MAX_TRIES; i++ )
  {
     out.x = sgRandom.randF(-radius,radius);
     out.y = sgRandom.randF(-radius,radius);

     if ( out.lenSquared() < radiusSq )
        return out;
     Con::errorf("radius: %f, coord:(%f,%f), squares: %f>=%f",radius,out.x,out.y, out.lenSquared(), radiusSq);
  }

  AssertFatal( false, "MathUtils::randomPointInRadius - something is wrong, should not fail this many times." );

radius: 5.000000, coord:(12.564140,5.486708), squares: 187.961578>=25.000000
radius: 5.000000, coord:(5.096106,10.246315), squares: 130.957260>=25.000000
radius: 5.000000, coord:(9.821218,5.205967), squares: 123.558426>=25.000000
radius: 5.000000, coord:(6.688040,5.880724), squares: 79.312790>=25.000000
radius: 5.000000, coord:(7.324609,14.703672), squares: 269.847870>=25.000000
radius: 5.000000, coord:(14.631927,8.820086), squares: 291.887207>=25.000000
radius: 5.000000, coord:(9.185753,14.953035), squares: 307.971313>=25.000000
radius: 5.000000, coord:(5.667538,14.292549), squares: 236.397949>=25.000000
radius: 5.000000, coord:(14.871305,12.033293), squares: 365.955872>=25.000000
radius: 5.000000, coord:(13.559505,14.593695), squares: 396.836121>=25.000000
radius: 5.000000, coord:(6.238934,7.759239), squares: 99.130081>=25.000000
radius: 5.000000, coord:(9.548182,6.286511), squares: 130.687988>=25.000000
radius: 5.000000, coord:(7.388700,11.892736), squares: 196.030075>=25.000000
radius: 5.000000, coord:(11.225512,7.160976), squares: 177.291687>=25.000000
radius: 5.000000, coord:(14.532150,11.854084), squares: 351.702698>=25.000000
radius: 5.000000, coord:(11.582703,10.503599), squares: 244.484589>=25.000000
radius: 5.000000, coord:(14.001133,7.045525), squares: 245.671143>=25.000000
radius: 5.000000, coord:(14.128210,12.840799), squares: 364.492432>=25.000000
radius: 5.000000, coord:(5.306587,7.801613), squares: 89.025032>=25.000000
radius: 5.000000, coord:(11.712645,14.402870), squares: 344.628723>=25.000000

 

That definitely aint right.

Best I can say is throwing https://github.com/GarageGames/Torque3D/blob/c152ae86f3f09b3c1d736954b352723d274582f1/Engine/source/core/util/endian.h#L110

at

https://github.com/GarageGames/Torque3D/blob/development/Engine/source/math/mRandom.cpp#L105 doesn't seem to cut it.

Link to comment
Share on other sites

Builds out of the box

Seems much more stable, perhaps even loading/startup a bit faster.

Torque3D 3.8 RC link from Wiki 9.10.2015

https://github.com/GarageGames/Torque3D/archive/v3.8-rc.zip


OpenGL

Still observing this issue

https://github.com/GarageGames/Torque3D/issues/1318


Fog issue

Confirmed fog working as I expect on 3.7 in OpenGL

3.8 RC shows this https://www.dropbox.com/s/6y5wszyobww4etn/fogissue-3.png?dl=0

Played with various density offsets neg/pos, height etc. OpenGL and D3D9



Picking of nits


Forrest editor error on first creation of forest if no selection of "ExampleElement"

1)Fresh level -> select Forrest editor

2) Place, choose add a forrest to mission

3) Don't select the dropdown

4) Click to place = error box https://www.dropbox.com/s/tr3eoixird3aw8f/forrestEditor-Error-box.png?dl=0


Console.log

https://www.dropbox.com/s/yoys0yf2l7lsr0z/console.log?dl=0


System

Visual Studio 2013 Community edition update 4

Microsoft Windows 8.1

Installed Physical Memory (RAM) 8.00 GB


Graphics Chipset AMD Radeon HD 7700 Series

Memory Size 1024 MB

Link to comment
Share on other sites

Builds out of the box

Seems much more stable, perhaps even loading/startup a bit faster.

Torque3D 3.8 RC link from Wiki 9.10.2015

https://github.com/GarageGames/Torque3D/archive/v3.8-rc.zip


OpenGL

Still observing this issue

https://github.com/GarageGames/Torque3D/issues/1318


Fog issue

Confirmed fog working as I expect on 3.7 in OpenGL

3.8 RC shows this https://www.dropbox.com/s/6y5wszyobww4etn/fogissue-3.png?dl=0

Played with various density offsets neg/pos, height etc. OpenGL and D3D9



Picking of nits


Forrest editor error on first creation of forest if no selection of "ExampleElement"

1)Fresh level -> select Forrest editor

2) Place, choose add a forrest to mission

3) Don't select the dropdown

4) Click to place = error box https://www.dropbox.com/s/tr3eoixird3aw8f/forrestEditor-Error-box.png?dl=0


Console.log

https://www.dropbox.com/s/yoys0yf2l7lsr0z/console.log?dl=0


System

Visual Studio 2013 Community edition update 4

Microsoft Windows 8.1

Installed Physical Memory (RAM) 8.00 GB


Graphics Chipset AMD Radeon HD 7700 Series

Memory Size 1024 MB

 

Thanks for the report!


I'll make sure to follow up on all this. Good to hear it feels more stable so far!


Just to be sure, you're using the lastest graphics drivers?


I hadn't run into the terrain seams issue, but I only checked on nVidia so far. I'll see about testing it on an AMD card tonight.

Link to comment
Share on other sites

Console.log

https://www.dropbox.com/s/yoys0yf2l7lsr0z/console.log?dl=0


System

Visual Studio 2013 Community edition update 4

Microsoft Windows 8.1

Installed Physical Memory (RAM) 8.00 GB


Graphics Chipset AMD Radeon HD 7700 Series

Memory Size 1024 MB

 

Thanks for the report!


I'll make sure to follow up on all this. Good to hear it feels more stable so far!


Just to be sure, you're using the lastest graphics drivers?


I hadn't run into the terrain seams issue, but I only checked on nVidia so far. I'll see about testing it on an AMD card tonight.

 


Did this just now as of 2:54 pm EST :D


http://i1260.photobucket.com/albums/ii567/aurobooth/driver_zps59xni2sl.png

Link to comment
Share on other sites

Hey i think there is a small issue with the spot light and point light animation type. If i set for example brightness 0.2 and select one of the animation types the light goes from 1 brightness on the max value not the 0.2 value that i set up. Should it be like this or i am using it in a bad way?

Edited by Chelaru
Link to comment
Share on other sites

Hey i think there is a small issue with the spot light and point light animation type. If i set for example brightness 0.2 and select one of the animation types the light goes from 1 brightness on the max value not the 0.2 value that i set up. Should it be like this or i am using it in a bat way?

 

Definitely sounds incorrect.


I'll check on that. Did it matter what animation type?

Link to comment
Share on other sites

Hey i think there is a small issue with the spot light and point light animation type. If i set for example brightness 0.2 and select one of the animation types the light goes from 1 brightness on the max value not the 0.2 value that i set up. Should it be like this or i am using it in a bad way?

 

Definitely sounds incorrect.


I'll check on that. Did it matter what animation type?

 


With all of them.


As a solution: a check box could be added to say if the user wants the animation to be from 1 brightness or the one that was set.

Link to comment
Share on other sites

Console.log

https://www.dropbox.com/s/yoys0yf2l7lsr0z/console.log?dl=0


System

Visual Studio 2013 Community edition update 4

Microsoft Windows 8.1

Installed Physical Memory (RAM) 8.00 GB


Graphics Chipset AMD Radeon HD 7700 Series

Memory Size 1024 MB

 

Thanks for the report!


I'll make sure to follow up on all this. Good to hear it feels more stable so far!


Just to be sure, you're using the lastest graphics drivers?


I hadn't run into the terrain seams issue, but I only checked on nVidia so far. I'll see about testing it on an AMD card tonight.

 


Did this just now as of 2:54 pm EST :D


http://i1260.photobucket.com/albums/ii567/aurobooth/driver_zps59xni2sl.png

 

Wasn't able to replicate it on the AMD card just with my dicking around.


Any chance you could upload the mission file with the terrain and textures it uses somewhere so I could try and test your exact case?

Link to comment
Share on other sites

Hey i think there is a small issue with the spot light and point light animation type. If i set for example brightness 0.2 and select one of the animation types the light goes from 1 brightness on the max value not the 0.2 value that i set up. Should it be like this or i am using it in a bad way?

 

Definitely sounds incorrect.


I'll check on that. Did it matter what animation type?

 


With all of them.


As a solution: a check box could be added to say if the user wants the animation to be from 1 brightness or the one that was set.

 

Well, I mean, if they wanted a brightness of 1 on the light, they'd probably just set the brightness to 1 :P


Alright, could you make T3D/lightAnimData.cpp's animate function at line 193

 

bool LightAnimData::AnimValue::animate( F32 time, F32 *output )
{
   F32 scaledTime, lerpFactor, valueRange, keyFrameLerp;
   U32 posFrom, posTo;
   S32 keyFrameFrom, keyFrameTo;
   F32 initialValue = *output; //Add this
 
   bool wasAnimated = false;
 
   for ( U32 i=0; i < COUNT; i++ )
   {
      if ( mIsZero( timeScale ) )
         continue;
 
      wasAnimated = true;
 
      scaledTime = mFmod( time, period ) * timeScale;
 
	   posFrom = mFloor( scaledTime );
	   posTo = mCeil( scaledTime );
 
      keyFrameFrom = dToupper( keys[posFrom] ) - 65;
      keyFrameTo = dToupper( keys[posTo] ) - 65;
	   valueRange = ( value2 - value1 ) / 25.0f;
 
      if ( !smooth )
         output = value1 + (keyFrameFrom * valueRange) * initialValue; //and add the * initialValue to the end
      else
      {
         lerpFactor = scaledTime - posFrom;
   	   keyFrameLerp = ( keyFrameTo - keyFrameFrom ) * lerpFactor;
 
         output = value1 + ( ( keyFrameFrom + keyFrameLerp ) * valueRange ) * initialValue; //and add the * initialValue to the end
      }
   }
 
   return wasAnimated;
}


And see if that makes it behave as you expect.


The way it's set up, the min/max brightness is being set in the animation data, which makes it override the particular light. So we just scale it by our input brightness level, and it seemed to work for me. If that behaves as you expect, I'll get that rolled in.

Link to comment
Share on other sites

Wasn't able to replicate it on the AMD card just with my dicking around.


Any chance you could upload the mission file with the terrain and textures it uses somewhere so I could try and test your exact case?

 


The empty terrain level with the stock textures, I'll gladly upload them if you want but they're just whats in the download.


I must have some edge case combo of card/driver/opengl or settings that is really, really unique.


Appreciate you going to all this trouble. It's not much of a problem if there is only one case


I'll try to futz around with it tomorrow, force a driver clean/update etc.


Hopefully you saw the fog issue, if not then maybe I need to put down the pipe :lol:

Link to comment
Share on other sites

Definitely sounds incorrect.


I'll check on that. Did it matter what animation type?

 


With all of them.


As a solution: a check box could be added to say if the user wants the animation to be from 1 brightness or the one that was set.

 

Well, I mean, if they wanted a brightness of 1 on the light, they'd probably just set the brightness to 1 :P


Alright, could you make T3D/lightAnimData.cpp's animate function at line 193

 

bool LightAnimData::AnimValue::animate( F32 time, F32 *output )
{
   F32 scaledTime, lerpFactor, valueRange, keyFrameLerp;
   U32 posFrom, posTo;
   S32 keyFrameFrom, keyFrameTo;
   F32 initialValue = *output; //Add this
 
   bool wasAnimated = false;
 
   for ( U32 i=0; i < COUNT; i++ )
   {
      if ( mIsZero( timeScale ) )
         continue;
 
      wasAnimated = true;
 
      scaledTime = mFmod( time, period ) * timeScale;
 
	   posFrom = mFloor( scaledTime );
	   posTo = mCeil( scaledTime );
 
      keyFrameFrom = dToupper( keys[posFrom] ) - 65;
      keyFrameTo = dToupper( keys[posTo] ) - 65;
	   valueRange = ( value2 - value1 ) / 25.0f;
 
      if ( !smooth )
         output = value1 + (keyFrameFrom * valueRange) * initialValue; //and add the * initialValue to the end
      else
      {
         lerpFactor = scaledTime - posFrom;
   	   keyFrameLerp = ( keyFrameTo - keyFrameFrom ) * lerpFactor;
 
         output = value1 + ( ( keyFrameFrom + keyFrameLerp ) * valueRange ) * initialValue; //and add the * initialValue to the end
      }
   }
 
   return wasAnimated;
}


And see if that makes it behave as you expect.


The way it's set up, the min/max brightness is being set in the animation data, which makes it override the particular light. So we just scale it by our input brightness level, and it seemed to work for me. If that behaves as you expect, I'll get that rolled in.




Thank you for the response. I don't use it. It was just an observation when i was doing some test. :)

Link to comment
Share on other sites

×
×
  • Create New...