268 Commits

Author SHA1 Message Date
rem..om
2acbdf9f84 Hardware Skinning now uses its own bone index and bone weight buffers. The vertex buffers are initialized empty when the model is loaded and placed in the cache.
They are populated only if hardware skinning is used with the model.

BoneIndex and BoneWeight buffers are now always CpuOnly and only used for Software Skinning.
Some enhancement could be done to save memory by not generating the bindPose buffers if hardware skinning is used as it doesn't need them.

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10657 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-06-22 10:03:40 +00:00
Kae..pl
217a1a6273 Refactoring: removing AnimData class use in blender importer to make it independent on the OGRE plugin (this way the usage of the importer will not require the presence of Ogre plugin in the classpath).
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10611 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-05-12 19:05:24 +00:00
Kae..pl
5b65b19bda Refactoring: storing importer custom data in blender context instead of loaded features. This way there will be no conflict between the custom data names and user's properties names and no unwanted additional data will be stored in the result features.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10587 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-04-30 21:44:05 +00:00
Kae..pl
9961f77445 Code refactoring:
- removed unused methods
- added javadocs
- minor name fixes
- one constructor type for all helpers

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10585 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-04-29 11:31:48 +00:00
Kae..pl
3602d86c20 Bugfix: fixed a bug that caused a bone constraint to be properly validated even though its bone target was not defined.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10584 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-04-29 11:30:26 +00:00
Kae..pl
29dd973122 Refactoring: large changes in constraints system (see the proper topic on the forum for further changes)
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10581 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-04-27 22:08:19 +00:00
Kae..pl
4f104e4200 Bugfix: (hopefully) final fixes to armature applying to models without applied transformations (+ removing unused pieces of code)
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10529 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-04-10 11:52:31 +00:00
Kae..pl
e282db0f7f Minor fixes to armature loading.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10528 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-04-08 12:06:57 +00:00
Kae..pl
a1fd0272d4 Bugfix: only rotation is used to transform node to its parent armature transformation when computing bone positions.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10512 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-04-05 13:07:59 +00:00
Kae..pl
06f5cab5ba Bugfix: fixed an issue with skeleton loading when the armature was not a parent of an object it should animate.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10511 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-04-04 19:00:21 +00:00
Kae..pl
3888036176 Bugfix: fixed an error that could create wrogn vertex to bone group assignment. This caused animation to be played badly because some vertices remained in their places instead of moving with the proper bone.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10463 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-03-05 09:35:35 +00:00
Kae..pl
fc96e52a4c Bugfix: fixed lowes weight removal method that did not remove all lowest vertices that were necessary (thanks to Tobias Downer for finding it :) ).
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10459 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-03-04 11:06:18 +00:00
Kae..pl
0a90ff21d2 Refactoring: removed unused class.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10428 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-24 20:02:34 +00:00
Kae..pl
687c1216ab Refactoring: removing unused code.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10427 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-24 19:59:33 +00:00
Kae..pl
31e327bbac Refactoring: SpatialConstraint now derives from Constraint and not BoneConstraint.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10404 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-14 10:44:50 +00:00
Kae..pl
4de3be91a9 Refactoring: unsupported (but known) constraint definitions are now represented by a single class instead of many classes that do nothing except logging a warning.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10403 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-14 10:35:49 +00:00
Kae..pl
28ea9d8a0d Refactoring: tabs replaced by spaces in blender importer sources. (removed unnecesary comment about the spaces so that is not misleading later for others ;) )
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10402 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-14 09:45:32 +00:00
Kae..pl
ecc8d8387b Refactoring: tabs replaced by spaces in blender importer sources. (4 spaces for each tab)
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10401 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-14 09:43:08 +00:00
Kae..pl
9f4544a3a8 Added length of the bone to the BoneContext (this will be needed later by some of the constraints).
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10400 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-14 09:15:55 +00:00
Kae..pl
dcd5fd5b4e Making sure that bone constraint will target either object or bone in its own armature. Allowing bone to target object (and not only bone as it was until now).
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10397 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-13 21:52:52 +00:00
Kae..pl
04998a07c0 Bugfix: mipmap generation once again dependant on the blender settings and on blender key settings :)
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10394 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-13 15:34:14 +00:00
Kae..pl
bdd8ab1fb0 Feature: added constraint definitions that were added to blender 2.62 so that the loaded does not crash when meets one
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10385 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-09 19:24:54 +00:00
Kae..pl
142905654f Added a function that creates the full name of the field (with its pointer and table indicators). Just for debugging purposes.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10381 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-09 19:08:11 +00:00
nor..67
ad927bcd6a - change blender texture locator to always set the texture key on loaded textures explicitly (for relative textures too)
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10378 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-09 17:39:38 +00:00
Kae..pl
21dc62e293 Refactoring: removing unnecessary asset manager from BlenderInputStream constructor (the manager was never used).
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10377 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-09 17:39:25 +00:00
nor..67
629d1caba7 - change blender texture locator to always set the texture key on loaded textures explicitly
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10376 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-09 17:13:30 +00:00
nor..67
11e955e020 - use replace instead of replaceAll in blender TextureHelper
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10317 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-03 00:43:32 +00:00
nor..67
836bc37f5f - Improve Blender TextureHelper external texture loading
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10316 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-02-03 00:05:57 +00:00
nor..67
d6ea096da9 - default blender FaceCullMode to back
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10276 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-31 23:07:06 +00:00
nor..67
b0b818dc12 - fix logging in blender loader
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10273 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-31 22:39:43 +00:00
nor..67
ea973c14c3 - change logging from logger.info() logger.fine and logger.warning()
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10272 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-31 22:37:56 +00:00
nor..67
7ba657e430 - set logging from Level.INFO to Level.FINE for most logging
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10271 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-31 22:26:10 +00:00
Kae..pl
9b22b2538d Removing mipmap generation during image texture loading. This is set later if required.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10259 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-31 06:19:19 +00:00
Kae..pl
ded6dce715 Bugfix: fixed a bug that occured when vertex had more than 4 weights but the first 4 weights were not attached to any bone.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10233 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-29 14:47:44 +00:00
Kae..pl
a37b8114b9 Bugfix: fixed a bug that caused an NPE exception which occured when IPO had no curves attached.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10232 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-29 14:46:43 +00:00
Kae..pl
2b94486677 Bugfix: fixed dead code area and NPE being thrown when loading the textures.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10231 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-29 14:29:17 +00:00
nor..67
2da59144c0 - fix blender loader losing texture origin, which caused storing of all images in the j3o instead of referencing them via the assetManager
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10230 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-29 04:16:58 +00:00
Kae..pl
d44727cfdd Bugfix: fix to a bug that caused texture to be loaded more than once
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10202 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-27 16:08:31 +00:00
Kae..pl
fea4c37e06 Feature: user can now decide if the mipmaps will be generated or not; by default 'mipmap' blender flag is used to decide if mips for specified textures shall be generated or not
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10201 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-27 15:46:00 +00:00
nor..67
ed001d4e33 Blender Loader:
- try locating textures without causing AssetNotFoundExceptions

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10196 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-27 02:37:05 +00:00
Kae..pl
01873e6f80 Bugfix: NPE was thrown when object animation was loaded. To fix that modifiers are now loaded after the whole object is loaded to the blenderContext.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10142 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-24 19:40:05 +00:00
Kae..pl
6520fc5b10 Bugfix: fixing a bug that caused negative time values to appear in times[] array in tracks. That caused some animations to behave oddly when in loop mode. Bug and solution found by Tobias Downer.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10141 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-23 16:54:36 +00:00
Kae..pl
fada1b5b90 Bugfix: applied fix suggested by Tobiad Downer that properly computes tracks for rotated bones.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10138 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-21 22:50:33 +00:00
Kae..pl
071581ad30 Added clear information about bugged blender file. Rarely a pointer appears whose block cannot be found. This is cerainly a bug of blender and we cannot do anything but properly inform user about the situation.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10124 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-20 18:49:48 +00:00
Kae..pl
1c2baedbc1 Improvements to the weight and index buffers loading:
- if more than 4 weights is applied to the vertex then the 'strongest' weights are used
- warning is logged only once when model has vertices with more than 4 weights (and not for every vertex as it was before)

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10109 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-19 17:27:36 +00:00
Kae..pl
3d38b634d5 Added functionality that will ignore modifiers that cause no changes to the model due to incomplete (but not invalid) definition. This caused errors when object had for example two armature modifiers and only the second one had armature model attached.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10087 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-17 19:44:05 +00:00
Kae..pl
601a34ba99 Fixed an error that caused NullPointerException to be raised if a curve had no taper object applied.
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10069 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-14 16:39:57 +00:00
Kae..pl
61ad771748 Bugfix: 538: Multiple issues with female3.blend
Yay finally found that one :D Models with multiple materials and armatures should now load withour mesh deformations :D

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10066 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2013-01-13 21:32:04 +00:00
Kae..pl
5e2c814086 Issue 540: NullPointerException when loading blender model
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9998 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2012-11-16 12:47:54 +00:00
Kae..pl
6573b87bf0 Bugfix: Issue 547: Unsupported type exception importing model from Blender
git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9997 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
2012-11-14 10:30:10 +00:00