PrimitiveWaste
|
3914515326
Merge branch 'master' into drawable-shader-parameters
|
11 years ago |
aster2013
|
c1ea1f9e06
Move attribute name as first parameter in ATTRIBUTE macro, same as other attribute macros.
|
11 years ago |
aster2013
|
13d3f1c8ac
Add attribute trait, treat ref attribute same with attribute.
|
11 years ago |
aster2013
|
cb819a5a6f
Remove class name and variant type from attribute macros.
|
11 years ago |
PrimitiveWaste
|
5f5bb5a4a2
Refactor per drawable shader parameters.
|
11 years ago |
aster2013
|
d99b6e9a4e
Remove type from MIXED_ACCESSOR_ATTRIBUTE macro, make it more cleaner. Other attribute macros will be modify later.
|
11 years ago |
aster2013
|
7e46f0c862
Add MIXED_ACCESSOR_ATTRIBUTE.
|
11 years ago |
Lasse Öörni
|
e0fa4d2560
For a minor performance improvement, do not mark AnimatedModel skinning dirty if it does not contain bones.
|
11 years ago |
Lasse Öörni
|
6d3d336057
If AnimatedModel has no bones (has intentionally loaded a non-skinned model), use StaticModel raycast for more accuracy.
|
11 years ago |
Lasse Öörni
|
7bafe59f2f
Fix crash when master AnimatedModel is destroyed. Do not destroy the bone hierarchy as long as AnimatedModels remain in the node. Allow a non-master AnimatedModel to be promoted to master if necessary. Closes #439.
|
11 years ago |
Lasse Öörni
|
4a9ab417a8
As a possible fix to #409, remove the optimization to not mark a node dirty again if it is already dirty. As a consequence the TransformChanged() script function will work more logically. This change would cause reduced performance with a large amount of animating models; to counteract, introduce a "silent update" mechanism for node transforms.
|
11 years ago |
Lasse Öörni
|
1ace932f1e
Removed unnecessary cases of MarkAnimationDirty() in AnimatedModel to allow manually positioned bones persisting correctly on scene load, when there are no animation states.
|
11 years ago |
Lasse Öörni
|
233b7d8926
Partially reverted the AnimatedModel LOD determination change: use the animated bounding box center to calculate distance from camera. This is to ensure ragdolls will LOD correctly even if their bones move far from the root node.
|
11 years ago |
Lasse Öörni
|
74620c74f2
Ensure non-master models don't update animation or the bone bounding box. Use the model resource's transformed bounding box instead of actual animated bounding box for AnimatedModel LOD calculation to ensure animation does not affect the chosen LOD level. Copy the master model's bounding box for non-master AnimatedModels directly (may result in too large bounding box, but should prevent the non-master model skipping rendering because of a missing bounding box update)
|
11 years ago |
Lasse Öörni
|
47836474e2
Variant pointer refactoring. Variant can now hold a weak pointer to a RefCounted object, which is safer, and is returned using GetPtr(). Engine events have been converted to use that mechanism. GetPtr() is also directly available in AngelScript, as well as assigning a RefCounted or derived class handle to a Variant.
|
12 years ago |
Lasse Öörni
|
6d5ddc23e0
Bump the copyright for 2014.
|
12 years ago |
Lasse Öörni
|
76292ef63e
Centralize allocation of event data variant maps to Context to avoid constant dynamic memory allocation.
|
12 years ago |
Lasse Öörni
|
6219289e9f
Optimize text batch preparation by avoiding dynamic allocation each frame. Use last glyph if rendering the same glyph several times in a row. Changed repeated postincrement of a destination pointer to indexing where applicable.
|
12 years ago |
Lasse Öörni
|
aa0f72cf65
Added world position & normal to RayQueryResult.
|
12 years ago |
Lasse Öörni
|
ee0e3aa663
Removed the mechanism of binary-serializing resource name hashes instead of resource names. This is to allow correct resource loading from binary scene files on platforms that cannot iterate the resources in the application installation (eg. Android). This also affects networking, downside is increased network payload size when resource attributes are transferred. All binary scenes saved with old Urho versions are also invalidated.
|
12 years ago |
Lasse Öörni
|
82007cc4f4
Removed the nonintuitive "invisible LOD factor" attribute from AnimatedModel and replaced it with updateInvisible flag similar to ParticleEmitter. This flag must be used for ragdolls or other physically animated objects to ensure that they come into view properly during animation if they previously were outside view. Fixes #40.
|
12 years ago |
Lasse Öörni
|
c20257cdf7
Merged the shaderData_ and worldTransform_ members of Batch & SourceBatch. The idea is that a batch can define multiple world transforms. For static geometry this means instance transforms. For skinned geometry they are bone transforms instead.
|
12 years ago |
Lasse Öörni
|
c1e03c48db
Combine octree update & reinsertion queuing.
|
12 years ago |
Lasse Öörni
|
372fbed88d
Normalize resource names in SanitateResourceName() if they also contain a registered resource dir name, ie. Data/Scripts/NinjaSnowWar.as becomes Scripts/NinjaSnowWar.as. This fixes script file possibly getting loaded twice.
|
12 years ago |
Lasse Öörni
|
7a20f0ad03
Optimize repeated GetWorldBoundingBox() in Drawable::UpdateBatches() override functions.
|
12 years ago |
Lasse Öörni
|
7de74e6d83
Fixed AnimatedModel bone bounding box not updating when bones are moved without animation, eg. ragdolls.
|
12 years ago |
Lasse Öörni
|
54a0c90d7a
Update AnimatedModel's bounding box with bone accuracy only when the animation is updated. Otherwise transform the previous last calculated bone bounding box. This results in a significant performance boost when a large amount of AnimatedModels are both moved, and animated.
|
12 years ago |
Lasse Öörni
|
1ef35d353c
Added skeletal animation sample.
|
12 years ago |
Wei Tjong Yao
|
02512cecf9
In order to move the out-of-source 'build' directory back to Urho3D project root directory, all the source codes sub-directories are now moved down one level to a new directory under project root called 'Source'.
|
12 years ago |