* DesktopAssetManager now works as before (flipY and generate mips options are enabled)
* Fix crash in TestSimpleWater
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9322 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
* Added new method to AssetCache interface to specify that registerAssetClone() won't be used (for the methods used above)
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9318 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
* Added 3 implementations of AssetCache: SimpleAssetCache, WeakRefAssetCache and WeakRefCloneAssetCache
* Added AssetProcessor interface that handles cloning and post processing of assets after they are loaded
* AssetKey can now configure which cache/processor to use for a particular asset type
* Added AssetManager unregisterLoader method
* AssetManager now supports more than one AssetLoadListener
* Javadoc improvements in AssetManager
* Asset interface now renamed to CloneableSmartAsset (which more accurately describes its behavior and use case)
* DesktopAssetManager now makes proper use of the new AssetProcessor/AssetCache classes when handling asset loading
* Added proper equals/hashCode methods to many AssetKey subclasses, which is required for the new system to work properly
* All AssetKeys were rewritten to work with the new asset system
* loadAsset(AudioKey) now returns an AudioNode and not AudioData, similar to the behavior of loadAsset(TextureKey) returning a Texture and not an Image. Because of that, the key storage in AudioData has been removed.
* Texture, Spatial, and Material are all cloneable smart assets now and will be cleared from the cache when all instances become unreachable
* Improved the existing TestAssetCache test to make sure the new system works
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9309 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
This allow to have shadows that fully works with partially transparent objects (like trees).
If a material does not have the postShadow technique, the renderer uses the fallback material (like before).
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9279 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
* AppSettings now supports custom user settings
* Add test case TestCustomAppSettings to test custom user settings
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9276 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
interface since no engine uses of Control will ever call
these methods. The functionality is still left in
AbstractControl which makes more sense since it is up
to the control implementation to enable or disable itself
as it sees fit.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9268 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
- Added flag to enable rotating down when zoomed out.
- Added getter/setter to enable/query if down rotation is only on "close view" (zoomed-in).
- Javadoc for certain method clearly explaining the "angles" are in radian.
Note:
To enable down rotation when zoomed out, you have to call setDownRotateOnCloseViewOnly with FALSE and also set a minimum radian with setMinVerticalRotation(radian) as it is by default to 0.
Ex:
chaseCam.setDownRotateOnCloseViewOnly(false);
chaseCam.setMinVerticalRotation(FastMath.DEG_TO_RAD * - 90);
This would enable rotation when zoomed-out down to -90 degrees, effectively having the camera looking up to its tied spatial.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9247 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
method that can be overridden by subclasses.
This isn't really complicated enough to move to
an app state and the fact that the field is
exposed is already sort of "unclean" anyway.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9240 75d07b2b-3a1a-0410-a2c5-0572b91ccdca