aster2013
a1105f7d38
Minor refactor, add comment to type info.
2015-10-12 10:31:38 +08:00
Lasse Öörni
04dba029ed
Clarifications for third party library use in the contribution checklist.
2015-10-11 20:14:01 +03:00
Jukka Jylänki
bf9111b862
Make Jacks not walk in synchronized lockstep timing in 06_SkeletalAnimation sample.
2015-10-11 19:05:51 +03:00
aster2013
3a948899a7
Add type info, remove BASEOBJECT macro, now user can use type info check object type. for example:
...
Button::IsTypeOf<UIElement>() is ture, Button::IsTypeOf<BorderImage>() is ture, Button::IsTypeOf<CheckBox>() is false.
2015-10-11 23:26:29 +08:00
aster2013
6bd1d77634
Add baseTypeName argument to OBJECT macro.
2015-10-11 22:17:55 +08:00
Yao Wei Tjong 姚伟忠
08e0b3bd62
Switch off SSE when targeting iOS/iPhoneSimulator as well.
2015-10-11 12:54:19 +08:00
Yao Wei Tjong 姚伟忠
c44ff392df
Minor clean up to remove redundant linker flag.
...
[ci skip]
2015-10-11 09:52:00 +08:00
Lasse Öörni
1a317e63ce
Actually allow to enable the threading option on Emscripten platform. Define the required compiler & linker flag when enabled.
2015-10-11 01:11:56 +03:00
Jukka Jylänki
3ac2cb6e37
Avoid depending on 64-bit only function _mm_cvtsi128_si64() in Matrix operator == to allow targeting 32-bit as well.
2015-10-11 01:07:01 +03:00
Jukka Jylänki
00be823f71
Update URHO3D_SSE to denote SSE2.
2015-10-11 00:12:13 +03:00
Lasse Öörni
af7ed744f0
URHO3D_THREADING build option. Closes #939 .
2015-10-10 23:17:03 +03:00
Jukka Jylänki
0107a0bf75
SSE optimize Urho3D/Math/Matrix3x4.h and Urho3D/Math/Matrix4.h. These yield a ~3% improvement in 06_SkeletalAnimation sample with 2000 Jacks in it.
2015-10-10 21:20:29 +03:00
Lasse Öörni
da81b99ca3
Do not return a resolution list containing 1x1 on Emscripten, rather return empty. Do not check fullscreen mode validity if the resolution list is empty.
2015-10-10 19:29:28 +03:00
Yao Wei Tjong 姚伟忠
ec125f2952
Switch off SSE for 64-bit arm platforms as well.
...
[ci only: Android, OSX, Coverity]
2015-10-10 23:15:48 +08:00
Lasse Öörni
e6e16b90ed
Minor code formatting. Document that we have returned to the old behavior of not notifying dirty node transform if it was already dirty before, and users of the TransformChanged() function should read the node's world transform to ensure continued notifications.
2015-10-10 14:42:29 +03:00
Jukka Jylänki
d168ab9d91
Optimize Node::MarkDirty() implementation by a) relying on the invariant that all children of a dirty node must also be dirty, and that all parents of a clean node must also be clean, b) avoid double-dereferencing Component WeakPtr in listeners, c) use the swap-with-last erase trick to avoid O(n^2) behavior in removing listeners, and d) perform tail call optimization to avoid excessive recursive function calls when marking children dirty. This optimizes the Node::MarkDirty() time in 06_SkeletalAnimation scene with 2000 Jacks from 42.73% down to 16.43%, a net saving of -61.5% less time spent in that call site. Closes #931 .
2015-10-10 14:42:28 +03:00
Yao Wei Tjong 姚伟忠
ace1f1155b
Avoid hardcoding the conditional list for URHO3D_SSE build option.
...
Android on Intel Atom will now have this option and defaulted to true.
2015-10-10 19:16:14 +08:00
Yao Wei Tjong 姚伟忠
fde2ad45ac
Fix Android and Raspberry-Pi build by always disabling SSE support.
...
[ci only: RPI, Android]
2015-10-10 17:49:29 +08:00
Yao Wei Tjong 姚伟忠
d05226e448
Only include object/bitcode files when archiving the hard way on Win.
...
Fix #937 .
[ci only: master, Emscripten]
2015-10-10 12:12:34 +08:00
urho3d-travis-ci
2d80a25394
Travis CI: API documentation update at 2015-10-09 22:24:01 UTC.
...
[ci package]
Commit: 4bdd80775b
Message: Add accelerator keys for reset pos/rot/scale also in editor standard mode. Add reset transform function (Alt-Q).
2015-10-09 22:24:01 +00:00
Lasse Öörni
4bdd80775b
Add accelerator keys for reset pos/rot/scale also in editor standard mode. Add reset transform function (Alt-Q).
2015-10-10 01:09:06 +03:00
Lasse Öörni
0e8aafbbb6
Make the Slerp approximation conditional of Emscripten platform to preserve consistency with rest of the math operations.
2015-10-09 23:24:04 +03:00
Lasse Öörni
7287e02278
Expose Node::MarkDirty() to AngelScript for consistency.
2015-10-09 23:12:30 +03:00
Lasse Öörni
f9de34e994
Code formatting.
2015-10-09 22:34:11 +03:00
Lasse Öörni
ed633009c2
Merge remote-tracking branch 'juj/approx_quat_slerp'
2015-10-09 22:29:22 +03:00
Lasse Öörni
e82708d0e0
Merge remote-tracking branch 'juj/ANGLE_instanced_arrays'
2015-10-09 22:29:12 +03:00
Lasse Öörni
b9d753171f
Merge remote-tracking branch 'juj/sse_matrix'
2015-10-09 22:28:56 +03:00
Jukka Jylänki
52ef3e92eb
Optimize Quaternion::Slerp() to remove the costly trigonometric functions and replace them by approximations instead. The approximations have been profiled to generate a maximum interpolation error of 0.38 degrees (see test Quat_Slerp_precision in MathGeoLib). In native 64bit Windows 8.1 VS2015 builds, testing in 06_SkeletalAnimation sample with 2000 Jacks, the time taken in Quaternion::Slerp() is reduced by -17.4%, and in Emscripten build of the same sample running in Firefox 41, the time taken by Quaternion::Slerp() is reduced by -44.7%. Closes #914 .
2015-10-09 21:35:34 +03:00
Jukka Jylänki
af8d27e8b4
Use fast and sub-millisecond-precise Emscripten-specific emscripten_get_now() for timer queries instead of gettimeofday(), which is slower and has only millisecond precision. Closes #916 .
2015-10-09 21:34:10 +03:00
Jukka Jylänki
e3ce38bb52
Remove code repetition in Source/Urho3D/Core/Timer.cpp.
2015-10-09 21:34:00 +03:00
Jukka Jylänki
3ad9ba306d
SSE optimize matrix-matrix multiplications when URHO3D_SSE is enabled. These constitute 7.82% of 06_SkeletalAnimation sample with 2000 Jacks in it. After SSE optimizations applied, matrix multiplication takes only 2.13% of total time in AMD CodeXL profile. This change also seems to have the effect that in scalar version, VS2015 did not dare to inline Matrix3x4 multiplication in AnimatedModel::UpdateSkinning(), but after SSE, the instruction count is small enough that it happily does so.
2015-10-09 20:36:10 +03:00
Jukka Jylänki
fc0d427557
Add support for GPU hardware instancing on Emscripten. In WebGL 1 it is exposed by the ANGLE_instanced_arrays ( https://www.khronos.org/registry/webgl/extensions/ANGLE_instanced_arrays/ ) extension, and in WebGL 2, it is enabled in core.
2015-10-09 18:58:42 +03:00
Lasse Öörni
2cc066d709
Update Bullet to 2.83.6. Thanks to Jukka for the initial work & Emscripten fix. Closes #929 .
2015-10-09 16:52:51 +03:00
urho3d-travis-ci
0cefd559a7
Travis CI: API documentation update at 2015-10-08 19:32:15 UTC.
...
[ci package]
Commit: 7db65a8952
Message: Added possibility to set time position of attribute or object animation manually. SetAnimationEnabled(false) should be used in that case to disable auto update. Closes #926 . Added RemoveObjectAnimation() and RemoveAttributeAnimation() to Animatable. Closes #928 . Fixed attribute animations in hierarchy (e.g. in components) not getting removed when a null object animation is assigned.
2015-10-08 19:32:15 +00:00
Lasse Öörni
7db65a8952
Added possibility to set time position of attribute or object animation manually. SetAnimationEnabled(false) should be used in that case to disable auto update. Closes #926 . Added RemoveObjectAnimation() and RemoveAttributeAnimation() to Animatable. Closes #928 . Fixed attribute animations in hierarchy (e.g. in components) not getting removed when a null object animation is assigned.
2015-10-08 22:18:06 +03:00
urho3d-travis-ci
bef4de0bc1
Travis CI: API documentation update at 2015-10-08 12:09:46 UTC.
...
[ci package]
Commit: 730388c0ce
Message: Fixed SplinePath AngelScript bindings and added documentation for it.
2015-10-08 12:09:46 +00:00
Mike3D
730388c0ce
Fixed SplinePath AngelScript bindings and added documentation for it.
2015-10-08 14:00:44 +02:00
aster2013
1ab328db34
Only apply world transform for active and awake rigid body.
2015-10-08 18:10:01 +08:00
aster2013
67a3b10e94
Remove half size offset in D3D mode in Sprite2D::GetDrawRectangle. Fix #927
2015-10-08 13:57:59 +08:00
Lasse Öörni
2a223949aa
Optionally move model's initial bone positions to bind pose (-bp argument).
2015-10-06 23:15:37 +03:00
Yao Wei Tjong 姚伟忠
e1341f7261
Replace the usage of Emscripten define and include to follow its norm.
...
Close #921 .
[ci only: Emscripten]
2015-10-06 17:42:15 +08:00
Yao Wei Tjong 姚伟忠
01cae9de6a
Switch off the sound support for most of the sample apps by default.
...
Close #924 .
[ci package]
2015-10-06 16:58:02 +08:00
Lasse Öörni
b6ff82571a
Remove glEnable & glDisable calls related to GL texture types, as they're not needed with GLSL shaders, which Urho3D uses always. Ensure that SetTextureForUpdate() also correctly unbinds the old texture type if it changes in the unit. Closes #922 .
2015-10-06 11:35:46 +03:00
Lasse Öörni
2ac9f90e32
Added contributor credit.
2015-10-06 10:51:44 +03:00
Lasse Öörni
9fcf88eb2c
Merge pull request #923 from juj/webgl_etc1_pvrtc
...
Add support for detecting ETC1 and PVRTC extensions in Emscripten/WebGL.
2015-10-06 10:38:50 +03:00
Yao Wei Tjong 姚伟忠
9b041c061a
Add warning to user on Windows host system without MKLINK privilege.
...
[ci skip]
2015-10-06 12:15:02 +08:00
Yao Wei Tjong 姚伟忠
5961b7f2d6
Always use file symlinks for dummy custom library targets.
...
So that when in fallback mode, the post-build step will use copy_if_different for each individual file to avoid unnecessary file copying and triggering subsequent dependency to rebuild. Close #913 .
2015-10-06 11:40:36 +08:00
Jukka Jylänki
78514da22e
Add support for detecting ETC1 and PVRTC extensions in Emscripten/WebGL.
2015-10-05 20:22:15 -07:00
Lasse Öörni
e6416070f2
Force loading of the space glyph even if the font's charcode listing doesn't mention it.
2015-10-05 20:38:53 +03:00
Lasse Öörni
7b9692cbfb
Disable frame limiter Sleep() on Emscripten builds. Closes #915 .
2015-10-05 19:29:33 +03:00