Граф коммитов

50 Коммитов

Автор SHA1 Сообщение Дата
Rokas Kupstys e2d2f8e388 Fix crash on android
In some cases old activity may be destroyed after new activity is created. `onCreate()` of new activity gets called and initializes new activity as well as static variables, then `onDestroy()` is called on old activity and cleans up static variables that were just initialized by new activity. This change prevents calling `SDLActivity.initialize()` in `onDestroy()` if new activity has already reinitialized static variables.
2017-08-21 15:25:40 +03:00
Yao Wei Tjong 姚伟忠 aec2090727 Remove redundant old batch file.
The resource dirs will be symlinked or (fallback) copied one way or another automatically now.
2017-04-07 22:26:06 +08:00
Yao Wei Tjong 姚伟忠 2f8a80def4 Rewrite from scratch a new Android toolchain file.
The new toolchain file requires Android NDK r12b and above. Default to use 'arm-linux-androideabi-clang' toolchain and LLVM libc++ STL runtime.
Align all the compiler and linker flags according to new ndk-build configuration in Android NDK r12b, i.e. no more '-f[no-]strict-aliasing' and '-f[no-]omit-frame-pointer', but more stringent warnings check.
Improve over the old toolchain file where most of the options are now changeable after the initial configuration. The exceptions are ANDROID_NDK and ANDROID_TOOLCHAIN_NAME due to limitation of CMake.
Close #1441.
Other changes in this commit includes:
- Fix Android sample launcher app to support shared C++ STL runtime library.
- Remove temporary fix in FindUrho3D module as it is not required anymore with our new toolchain file.
- Fix Log::WriteRaw() method to pass the parameters correctly to __android_log_print() function.
- Fix enable_pch() macro to emit -fPIC compiler flags correctly based on target's POSITION_INDEPENDENT_CODE property.
- Fix linker flags for ld.bfd where it needs help to find the location of the rooted shared libraries. The flags are not required for ld.gold but they do no harm for gold linker.
- Enhance the CheckCompilerToolchain module to auto-detect if the NEON SIMD is enabled or not for Android build (based on the chosen ANDROID_ABI).
2017-03-05 08:45:40 +08:00
Lasse Öörni 83e4651e77 Replace Android sample launcher logo. Fix minor typo in script selector. 2017-01-02 20:25:35 +02:00
Lasse Öörni 3b911a2adc Update Android icons. 2017-01-02 19:49:27 +02:00
urho3d-travis-ci ee054a1507 Travis CI: bump copyright to 2017.
[ccache clear]
2017-01-01 13:01:31 +00:00
Yao Wei Tjong 姚伟忠 ad97bfacd0 Fix Android build. 2016-11-09 23:10:02 +08:00
Yao Wei Tjong 姚伟忠 0486b3bb3e Fix SDL 2.0.4 Android code to exclude bogus joystick registration.
Fix Android sample browser glitch when being launched in landscape orientation.
Close #1315.
2016-04-09 21:43:39 +08:00
Yao Wei Tjong 姚伟忠 ccf6648eb3 Utilize new SDLActivity's get arguments feature. 2016-03-16 01:42:01 +08:00
Yao Wei Tjong 姚伟忠 5bcd5e4b1d Merge SDL 2.0.4
- Revert back commits from PR #191. The media keys support on Linux/x11 platform will be reinvestigated later.
- Add additional include dir for RPI platform. This change is to keep the original SDL/src/video/raspberry/SDL_rpivideo.h header file happy. Previously we were using a slightly altered header file.
- Merge changes from SDL's android-project template.
- Add new source files for Android platform into SDL's CMakeLists.txt. Use new SDL hint to separate mouse and touch events on Android platform. Strangely though a similar hint does not exist on iOS platform, so we retain our local changes to suppress emulated events on iOS platform.
- Adjust OSX and iOS linker flags to include more frameworks.
- Turn ARC on when compiling Objective-C on iOS platform.
- Enable SDL_WINDOW_ALLOW_HIGHDPI on all Apple platforms. Replace all the SDL_WindowGetSize() call with SDL_GL_GetDrawableSize() call in all the graphics backend implementation classes. The former now returns the number in screen coordinates while the latter returns the number in pixels suitable for setting up the glViewport.
- Always use fullscreen mode for iOS platform. Revert back local changes in SDL src/video/uikit/SDL_uikitviewcontroller.m.
2016-03-16 01:09:49 +08:00
urho3d-travis-ci c4f6f315ff Travis CI: bump copyright to 2016.
[ccache clear]
2016-01-26 13:55:03 +00:00
Newb I the Newbd e43113ee9c Unite hardware keyboard input with other platforms. 2015-10-27 09:01:03 +01:00
Yao Wei Tjong 姚伟忠 2fcf1d3146 Only patch Android assets directories when it is being requested.
Without the patch though, the FileSystem::DirExist() works with reduce accuracy and FileSystem::ScanDir() no longer ables to differentiate between files and directories (thus, cannot scan recursively as well).
2015-09-13 21:35:51 +08:00
Yao Wei Tjong 姚伟忠 71a8f6d104 Parameterise the asset directory indicator character(s) using env-var. 2015-09-10 00:51:58 +08:00
Yao Wei Tjong 姚伟忠 ac2b2ba121 Add new JNI function to interface with AssetManager.list() method.
Fix #855.
2015-09-08 22:37:45 +08:00
Yao Wei Tjong 姚伟忠 cfff44873f Bump missed out files. [ci skip]
$ for f in `git grep -l '2008-2014 the Urho3D project'`; do perl -pi -e 's/2008-2014 the Urho3D project/2008-2015 the Urho3D project/g' $f; done
2015-02-01 08:16:05 +08:00
Yao Wei Tjong 姚伟忠 05dd995b85 Refactor all the codes and scripts to use the renamed 'bin' subdir. 2015-01-18 21:40:54 +08:00
Yao Wei Tjong 姚伟忠 20ce0cebca Move Android subdir from Source dir to project root. 2015-01-04 22:32:38 +08:00
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'. 2013-08-09 10:29:22 +00:00
Wei Tjong Yao cc99a07a53 Added Raspberry Pi port, currently only supported in GCC build either natively or cross compiling (if the CC tool is detected). Moved the gcc out-of-source build directory one more level up as it is better supported by cmake/eclipse generator this way. Enhanced shell scripts so they can be invoked in any directory. A few bug bug fixes on SDL library code. 2013-07-25 15:56:53 +00:00
Lasse Öörni dac3f4e0a8 Fixed Android library stripping on some Windows configurations.
Perform Android build as out-of-source on Windows to match the Unix behavior and allow the same commands to be used.
Finalized the Android build documentation.
Removed the old Android native code build path using ndk-build.
Fixed post processing intermediate rendertargets not matching the rendertarget format.
2013-07-13 18:47:36 +00:00
Wei Tjong Yao ace1fef9e6 Fixed android-gcc build. Moved enabling of ASM_MASM to the library targets that need it (for Win64 build). 2013-07-09 05:40:14 +00:00
Lasse Öörni fa0ba1f2d8 Updated Android toolchain to newer.
Reverted some of the hacks for CMake Android build.
Documented the work-in-progress CMake Android build path.
2013-07-07 22:04:18 +00:00
Lasse Öörni 1704bd16a9 Initial support for CMake-based Android build. 2013-07-07 19:41:45 +00:00
Lasse Öörni 17d990098c Updated to new SDL 2.0. 2013-07-04 11:04:02 +00:00
Lasse Öörni 4e618bb80e Subclass SDLActivity so that the package name in SDL JNI code does not need to be changed.
Do not check for duplicate vertices when building triangle collision meshes to avoid a O(n^2) algorithm.
2013-05-25 23:14:14 +00:00
Lasse Öörni 08075f0915 Reversed if's in Variant code to favor the correct type.
Added non-const Variant functions to get modifiable collection objects (buffer, variant vector, variant map.)
Added Recast & Detour libraries. Added skeleton of a Navigation library & component, no functionality yet.
2013-04-04 07:49:18 +00:00
Lasse Öörni 4652de45fd Compile AngelScript library in arm mode on Android to ensure compatibility with newest NDK's. 2013-03-11 23:03:40 +00:00
Lasse Öörni 7d8558a51f Applied massive patch from weitjong.
Changes:

I. Build environment
1. Added new cmake definition to disable/enable Log subsystem in main's CMakeLists.txt.
2. Added setting in main's CMakeLists.txt to pass the "-D_DEBUG" compiler flags for Debug configuration build on non-MSVC compiler. At least it is needed on XCode to get verbose debug log. I assume MSVC does not have this problem.
3. Added '../Engine. to include directories in Input's CMakeLists.txt to allow Input to reference Engine class for handling of SDL_QUIT event (see V.5 and VII.1).
4. Changed cmake_gcc.sh to sed Doxyfile to exclude Direct3D9 and include OpenGL variants of the classes, assuming gcc is only for Mac OS X and Linux.
5. Changed cmake_ios.sh to sed Doxyfile to exclude Direct3D9 and include OpenGL variants of the classes.
6. Added new cmake_macosx.sh shell script to prepare cmake for Xcode in Mac OS X environment.
7. Updated Docs/Reference.dox to correct the URL to AMD's Compressonator.
8. Updated Docs/ScriptAPI.dox to reflect API changes in UI.
9. Added *.sh scripts in the Bin folder to invoke the respective demos.

II. Audio
1. Minor refactoring on Audio class: removed redundant header include, removed redundant call.
2. Corrected minor documentation typo error in Sound.h.

III. Container
1. HashMap minor optimisation: operator [] implementation would not traverse the container twice before node insertion, refactored Clear() and Sort() implementation, changed to static_cast instead of reinterpret_cast, etc.
2. HashSet minor optimisation: refactored Clear() and Sort() implementation, changed to static_cast instead of reinterpret_cast, etc.
3. List minor optimisation: refactored Clear() implementation and changed to static_cast instead of reinterpret_cast.
4. Corrected documentation error for operator > in Pair class.
5. Added new Contains() methods and renamed Print()/PrintArgs() to AppendWithFormat()/AppendWithFormatArgs (while they are still new :-) in String class. Added ToString() global function in StringUtils class to take advantage of new append methods (useful in constructing a formatted string for logging in one liner; becomes no-ops when logging not enabled).
6. Added new Remove() method in Vector and PODVector classes.

IV. Core
1. Enhanced ProcessUtils class to add native approach to detect number of Physical and Logical CPUs for iOS platform.
   BUG FIX: Previous ParseArguments(int, char**) implementation assumed there were no space in the pathname which causes parsing error when it does. Fixed by enclosed the argument in quotes before appending into command line. With this fix, Ninja War demo is runable in iPhoneSimulator.
2. In StringUtils added new convenient global function to construct a formatted string, see III.6.
3. In Variant added MAX_VAR_TYPES enum for guarding a while loop.

V. Engine
1. Added pragma to suppress LLVM/Clang erroneous warnings on unused functions in APITemplates.h.
2. Minor refactoring on Console class: removed redundant call, renamed current_Row to currentRow_.
3. In CoreAPI refactored code to replace map's Find() method call with the newly added Contains() method, added call to reserve container capacity.
4. Refactored DebugHUD class to use the String's new append method instead of a series of strings concatenation.
5. Enhanced Engine class to make Logging an optional feature that can be turned on/off like Profiler subsystem (see I.1), only unpause the audio when it was pause by the Engine previously, no need to check for uninitialized graphics due to window was closed (see VII.1) as engine's exiting_ flag should be set when SDL quits (even by quitting the process externally).
6. GraphicsAPI minor optimisation: Add call to reserve vector to the required known size.
7. Enhanced IOAPI to add preprocessor directive to no-ops the logging functions when Logging not enabled, see I.1.
8. Enhanced UIAPI to reflect changes in UI: mainly, exposed nonFocusedMouseWheel property (see XV.12).

VI. Graphics
1. AnimatedModel optimisation: refactored ProcessRayQuery() implementation, added call to reserve container capacity, removed copy-pasta comment.
   BUG FIX: Infinite while loop in SetMorphsAttr() as the index was never incremented.
2. Changed Animation constructor to also initialize length_.
3. Refactored AnimationController class: only mark for network update when necessary, corrected minor documentation error, added call to reserve container capacity, prevent out-of-bound index access in SetAnimationAttr() implementation, use the StringHash instead of plain name to find the animation state.
4. Refactored AnimationState to avoid redundant call.
5. Refactored BillboardSet class: removed redundant class forward, changed to use the revised Drawable's constructor (see VI.9), added call to reserve container capacity.
6. Refactored Camera class to remove redundant construct. 
7. Refactored DebugRenderer to reuse code. 
8. Refactored DecalSet class: changed to use the revised Drawable's constructor (see VI.9), added call to reserve container capacity, added new flag to track the event subscription.
9. Refactored Drawable to change its constructor to take additional drawableFlags parameter.
10. Enhanced Light class: changed to use the revised Drawable's constructor (see VI.9), refactored ProcessRayQuery() implementation, added implementation to debug draw the directional light.
    BUG FIX: On mobile devices, the CSM only has two splits. Use preprocessor directive to define the attribute as VAR_VECTOR2 instead of VAR_VECTOR4, accordingly.
    BUG FIX: Previous implementation used local ray against world bounding box for RAY_OBB. Fixed by first transformed the world bounding box to local coordinate.
11. Refactored Material class to set or unset the specular_ flag without traversing the shader parameters each time.
12. Refactored Model class: added call to reserve container capacity, removed redundant call to set the number of vertex buffer to 1 (which is Geometry's default).
13. Modified OcclusionBuffer Clear() method to use post decrement.
14. Refactored Octant and Octree classes: changed to use the new PODVector Remove() method, added index_ instance variable to facilitate child octant deletion, simplified the conditional check in the Release() but still achieving the same result.
15. Refactored OctreeQuery class to reorder the condition and to use post increment.
16. Refactored ParticleEmitter class: removed redundant class forward, changed to use the other ColorFade constructor that inits both color and time, added call to reserve container capacity.
17. Refactored Renderer class: removed unused static constants, amended the documentation text for HandleGraphicsFeatures(), delayed event subscription until object is initialized, moved logic to validate the shadow cascades from getter to setter, changed to use String's Contains() method instead of Find(), and a few more code changes (that make no difference :-).
18. Refactored ShaderParser class to change the method signature of GetCombination() method, removed redundant include.
19. Refactored Skeleton class to add call to reserver container capacity.
20. Refactored StaticModel class: changed to use the revised Drawable's constructor (see VI.9), changed the ProcessRayQuery() implementation.
21. Enhanced Tangent class to use pointer arithmetic instead of array indexing.
22. Refactored Terrain class: reordered instance variable initialization in constructor to keep compiler happy, added call to reserve the container capacity.
23. Refactored TerrainPatch class: changed to use the revised Drawable's constructor (see VI.9), changed ProcessRayQuery() implementation.
24. Refactored View class: removed unused method declarations (did not have implementation), changed to reuse existing Vector3 constants, changed octree query base class to FrustumOctreeQuery instead (no additional penalty as the methods are already virtualized anyway), moved constant to outside the loop in CheckVisibilityWork() implementation, reordered logical statement to take advantage of short circuit evaluation, and more.
25. Refactored Viewport class to use the more common way to insert into container.
26. Refactored Zone class: changed to use the revised Drawable's constructor (see VI.9), reordered logical statement to take advantage of short circuit evaluation.
27. Enhanced OGLGraphics class: added code to prevent unnecessary call to get OGL extensions, changed to use new String's Contains() method, added flag to speed up the Release() method, removed redundant code.
28. Changed OGLGraphicsImpl to remove unused include.
29. Changed OGLIndexBuffer to remove unnecessary override. Probably it was copy pasta from Direct3D9 version.
30. Refactored OGLShader class to use the modified ShaderParser's GetCombination() method, see VI.18.
31. Refactored OGLShaderProgram class to use reuse the index for the second string Find() call.
32. Refactored OGLShaderVariation class to the string Insert() method instead to insert all the defines.
33. Refactored OGLTexture class to use the enum instead of hardcoded value.
34. Refactored OGLTexture2D class to simplify the boolean assignment.
35. Refactored OGLTextureCube class to simplify the boolean assignment.
36. Refactored OGLVertexBuffer class to remove unnecessary override and to simplify the for loop condition check in GetElementOffset() method.
37. Refactored CustomGeometry class: changed to use the revised Drawable's constructor (see VI.9), changed ProcessRayQuery() implementation.

VII. Input
1. Enhanced Input class: added call to Engine::Exit() to properly setting the exiting flag instead of just closing the graphics (see V.5), refactored constructor to initialize the mouse related instance variables, delayed event subscription until object is initialized, and other minor refactoring.

VIII. IO
1. Enhanced FileSystem class: added Mac OS X implementation for SystemOpen() method, changed to use new String's Contains() method instead of Find().
   BUG FIX: On non-Win32 platform, files (including dirs) having name starts with '.' were being returned in the result although SCAN_HIDDEN flag is not set. The fix now excludes them.
2. Enhanced Log class: added preprocessor directive to no-ops the logging macros when Logging not enabled (see I.1), removed "XCODE_DEBUG_CONFIGURATION" as it is not effective (at least on my Xcode). Also replaced "XCODE_DEBUG_CONFIGURATION" with "_DEBUG" in SDL_uikitappdelegate.m.
3. Minor changed in Serializer.cpp to suppress compiler warning.

IX. Math
1. Refactored BoundingBox class to reuse code.
2. Enhanced MathDefs.h: better PI, added new constant M_DEGTORAD_2 which is M_DEGTORAD / 2.f (same as M_PI_2, M_PI_4 convention used in math.h).
3. Refactored Frustum class to use the new M_DEGTORAD_2 constant.
4. Refactored Plane.h to reuse code.
   BUG FIX: Copy constructor did not initialize the absNormal_ properly.
5. Enhanced Quaternion class: added multiply-assign operator with a scalar, added Conjugate() method, refactored to reuse code as much as possible, returned conjugate as inverse for unit quaternion, refactored code to use the new M_DEGTORAD_2 constant.
6. Refactored Rect class to reuse code.
7. Refactored Sphere to use post increment.

X. Network
1. Refactored Connection class: changed to hide the detail of the message processing from the caller, added preprocessor directive to exclude statistics when logging is disabled, changed the code to reflect the change done in Node::CreateComponent() method signature (see XIII.2).
2. Refactored Controls class: removed redundant class forward, changed the way default constructor initialize the instance variables.
3. Refactored Network class: removed redundant class forward, changed to reflect changes done in X.1 to process messages, changed the GetConnection() implementation to avoid traversing of the clientConnections_ unnecessarily.

XI. Physics
1. Enhanced CollisionShape class to add preprocessor directive to no-ops the logging calls when Logging not enabled, see I.1. Refactored the HeightfieldData() method to eliminate if statement in the loop.
2. Minor changed in Constraint.cpp to suppress compiler warning.
3. Refactored PhysicsWorld class: removed redundant call in destructor, changed to use the new PODVector Remove() method.
4. Refactored RigidBody class to use the new PODVector Remove() method.

XII. Resource
1. Minor changed in Image.cpp to suppress compiler warning.
2. Enhanced ResourceCache class: changed code to subscribe to event only when auto reload is enabled, refactored to use HashMap's Find() instead of traversing through container manually, changed to use new String's Contains() method.
3. Minor changed in XMLElement class to define an EMPTY element constant.

XIII. Scene
1. Refactored Component class: removed redundant include, reordered logical evaluation.
2. Refactored Node class: changed the CreateComponent() to accept optional ID parameter (combined previously two methods into one), refactored to reuse code as much as possible, added new method to reset scene called by Scene class, moved protected section to correct place adhering to code convention, added new private convenient method to remove component. 
3. Refactored Scene class: changed destructor and in NodeAdded() method to use the new Node::ResetScene() method (see XIII.2), changed the GetVarNamesAttr() implementation to avoid if in the loop, instead of using XMLElement and String default constructor, changed to reference new EMPTY XMLElement constant (see XII.3) and String's Clear() method, respectively.
4. Enhanced SceneResolver class to add preprocessor directive to no-ops the logging calls when Logging not enabled, see I.1.
   BUG FIX: The missing 'else' statement in Resolve() method might cause component ID not resolved correctly. Fixed by adding the else statement.
5. Enhanced Serializable class: refactored code to suppress compiler warning, added new feature to read/write new optional "enum" XML element.

XIV. Script
1. Enhanced Addons class: removed redundant include, changed code to suppress compiler warning, exposed new String's Contains() methods to script enginei (see III.6).
   BUG FIX: The Find() and FindLast() were erroneously exposed as returning integer value. Changed it to returning unsigned instead.
2. Enhanced Script class: added preprocessor directive to no-ops the logging calls when Logging not enabled (see I.1), changed to use new String's Contains() method instead of Find(), removed redundant call in destructor.
   BUG FIX: The logMode_ instance variable was not initialized properly in the constructor (although documentation says it should be defaulted to immediate mode). Initialized it according to documentation.
3. Refactored ScriptFile class to remove redundant call.
   BUG FIX: Previous implementation in Load() assumed script log mode. The fix saves the old mode and use it to revert back the mode.
4. Enhanced ScriptInstance class: refactored ClearDelayedExecute() method to avoid unnecessary vector traversal, simplified code that tracks the execution of METHOD_DELAYEDSTART, refactored to code reuse.

XV. UI
1. Refactored UIQuad and UIBatch: Added new constructor that initialize instance variables, moved GetInterpolatedColor() method between the two, modified the UIBatch methods to take in const UIElement reference, changed the implementation to code reuse as much as possible.
2. Refactored BorderImage class to use the new UIBatch constructor, see XV.1.
3. Very minor changed in Button.cpp to simplify the logical statement.
4. Refactored DropDownList class: Changed to call Menu::GetBatches() instead of Button::GetBatches(), changed for code reuse.
5. Refactored FileSelector class: added call to reserve container capacity, changed for code reuse.
6. Refacotred Font class: added call to reserve container capacity, removed redundant call. 
   BUG FIX: Corrected a typo in GetKerning() implementation causing the kerning information not being applied correctly between adjacent characters.
7. Refactored LineEdit class: Changed to call BorderImage::ApplyAttributes() instead of UIElement::Attributes(), removed redundant construct, changed to reuse code as much as possible, initialized variable in the setter method instead of during update.
8. Enhanced ListView class: added optional index parameter for RemoveItem() method, subscribed to the defocused event only when it is needed, changed to reuse code as much as possible (page up/down and home/end now support additive multi-select as the positive side effect), removed redundant construct.
9. Very minor change in Menu.cpp to use Variant::EMPTY instead of constructing an empty Variant instance.
10. Refactored ScrollView class to reuse code.
11. Refactored Text class to use the new UIBatch constructor, see XV.1.
12. Enhanced UI class: Added support to enable non-focused mouse wheel behaviour similar to Mac OS X and Linux, delayed post-update and render-update event subscription until object is initialized, removed redundant construct.
13. Enhanced UIElement class: added optional index parameter for RemoveChild() method, refactor the code to use the right constness, renamed method from GetUintColor() to GetDerivedColor(), added new private Detach() method, added mutable keyword as necessary to support const getter, refactored destructor method, added call to reserve container capacity, and more.
14. Minor change in Window.cpp to suppress compiler warning.

XVI. Third Party
1. FreeType: Included zutil.c as source in the CMakeLists.txt and fixed the problem when compiling with _DEBUG set.
2. kNet: Removed std::cout statement in the UDPMessageConnection.cpp.
3. SDL: Changed XCODE_DEBUG_CONFIGURATION to _DEBUG in SDL_uikitappdelegate.m, see VIII.2.
   BUG FIX: The touch focus was always zero causing the touch event from touchpad in Mac OS X platform was not handled correctly by Input class because the GetInputInstance() method returns 0 when windowID is 0. Assign the touch's focus with current focus window ID. NOT SURE THIS IS THE CORRECT FIX THOUGH.

XVII. Demos
1. BUG FIX: TestScene.as and TestSceneOld.as assert in the btAlignedObjectArray.h. It was caused by the script trying to remove the RigidBody and/or CollisionShape while in the middle of physics collision event handling. The Bullet's assert could be observed when build using _DEBUG. Fixed by postponinig the removal to post step.
2. Enhanced the NinjaSnowWar to support no-background-music (nobgm) option.
   BUG FIX: BGM was purposely not played on multiplayer mode assuming testing is done on a same test machine, however, this has caused the BGM not to be played on the genuinue multiplayer mode using different machines. Re-enable BGM on multiplayer mode. Instead, added comments in the demo shell/batch script on how to avoid multiple BGM played on a same test machine.
2012-12-25 20:56:05 +00:00
Lasse Öörni 411ab13883 Applied jpeg save and system time patches from Alex Fuller. 2012-12-20 23:23:07 +00:00
Lasse Öörni ae9309087c Delete HLSL directory when copying Android assets. 2012-07-06 19:45:57 +00:00
Lasse Öörni dee2e099de Added ETC1 & PVRTC decompression from the Oolong Engine. Used when not supported in hardware. 2012-07-03 11:34:07 +00:00
Lasse Öörni eca32fa03a Applied case-sensitivity fix. 2012-06-12 09:08:41 +00:00
Lasse Öörni 0234bbfc6a Use 24-bit depth buffer on Android if available. 2012-06-11 19:45:26 +00:00
Lasse Öörni 02738d055e Renamed Android package and added instructions on how to replace it with application-specific package name.
Updated documentation.
2012-06-03 11:35:26 +00:00
Lasse Öörni e272896dc1 SDL Java code cleanup.
Fixed point light shadow indirection cubemaps recreated on every frame after first OpenGL context release.
Fixed possible missing depth test after OpenGL context release.
2012-05-31 23:15:32 +00:00
Lasse Öörni 8cc2a83e48 Android OpenGL context loss handling. 2012-05-30 22:17:58 +00:00
Lasse Öörni 3e7882093a Disabled all stencil operations on OpenGL ES for now, as the OES packed depth stencil isn't tested for or used yet.
Use fixed vertex attribute locations on OpenGL.
Always transpose OpenGL matrix uniforms manually.
Workaround failed draw call after drawing billboards on OpenGL ES by transforming billboards with an identity model matrix.
Ensure finger touch ID's are positive.
Improved touch controls in NinjaSnowWar.
2012-05-27 16:39:21 +00:00
Lasse Öörni 0706ae397f Touch input on Android.
Run NinjaSnowWar by default on Android.
Rudimentary touch controls (virtual on-screen joystick) in NinjaSnowWar.
Improved OpenGL ES depth bias.
Support GetUserDocumentsDir() on Android (return the getFilesDir() path.)
Fixed OpenGL ES mode erroneously attempting to use shadowed point lights.
Added .bat file to copy Data & CoreData directories as Android assets.
2012-05-27 00:27:23 +00:00
Lasse Öörni a876436066 Compile also in armeabi-v7a mode for faster floating point operations. 2012-05-23 23:40:53 +00:00
Lasse Öörni cd0668e2d7 Enabled profiler on Android. 2012-05-21 22:56:05 +00:00
Lasse Öörni c1c7dcf0ec Code cleanup.
Do not create point light shadow indirection textures if no shadow mapping capability.
2012-05-20 16:44:51 +00:00
Lasse Öörni 55c1d677fb Fixed automatic onDestroy() on orientation change. 2012-05-20 15:31:43 +00:00
Lasse Öörni 9a4e69d5bc Removed fillmode, as it is deprecated on some APIs and not currently used in Urho3D.
Fixed missing depth buffer on Android.
Use texture units < 8 on OpenGL ES.
2012-05-20 13:48:38 +00:00
Lasse Öörni 58feefc858 Transpose matrices manually for OpenGL ES.
Set landscape mode without titlebar & statusbar on Android.
2012-05-20 11:11:50 +00:00
Lasse Öörni 22f1e3a1eb Enable OpenGL ES2 mode properly.
Fixed shaders.
2012-05-20 01:12:17 +00:00
Lasse Öörni 0debc43fed Further Android fixes. 2012-05-19 22:39:30 +00:00
Lasse Öörni 65378ee15b Fixed Android linking & startup issues. 2012-05-19 22:06:58 +00:00
Lasse Öörni 8af8edd603 Android compile fixes. 2012-05-19 18:43:08 +00:00
Lasse Öörni 866cd89546 Started work for experimental Android support.
Renamed Signal to Condition.
Do not lock vertex/index buffers when loading a model, instead prepare the data on CPU side, then set it to GPU at once.
2012-05-17 22:03:08 +00:00