Commit Graph

515 Commits

Author SHA1 Message Date
Yao Wei Tjong 姚伟忠
f0d107d3db Add new build option to support non-PCH build.
In order to achieve this, the Precompiled.h is now included back in all the Urho3D implementation source file. So, when the Precompiled.h is not being force-included in the PCH build, then the compiler is still able to find all the required symbol declarations. By doing so, it should also fix the indexer in some IDEs to index all the Urho3D declared symbols correctly whether it is a PCH build or not.
2015-07-07 23:43:56 +08:00
David Feltell
414e92dad2 Tidied/updated Lua raw script loader CMake definition and documentation.
* Tidied CMake definition and defaulted to disabled for
multi-configuration build types.
* Added CMake variable to table in "Building Urho3D" docs page.
* Added a section on "Debugging script files" to the "Lua scripting"
docs page.
2015-06-15 23:59:38 +01:00
Lasse Öörni
d3e28ce1e9 Minor edits to the build instructions. 2015-06-04 11:41:38 +03:00
Lasse Öörni
7219560320 Improve Emscripten Windows instructions. Thanks to Ali Kämäräinen for mentioning possible issues & solutions. 2015-05-14 21:05:58 +03:00
Yao Wei Tjong 姚伟忠
cc64e9bb7b Minor documentation update on ccache section for Xcode 6 users. 2015-05-14 16:26:21 +08:00
Lasse Öörni
5e68b57921 Added note of Xcode command line tools. 2015-05-13 10:48:50 +03:00
Yao Wei Tjong 姚伟忠
00388288f2 Update 'Using ccache' section for xcodebuild users. 2015-05-10 23:07:52 +08:00
Yao Wei Tjong 姚伟忠
f2b21ee816 Enable ccache support for Emscripten (incoming) without the caveat.
The upstream issue https://github.com/kripken/emscripten/issues/3365 has been fixed now in Emscripten's incoming branch.
2015-04-22 10:14:22 +08:00
Yao Wei Tjong 姚伟忠
9a5dea71e1 Update documentation on ccache to explain its usage is optional.
Add simple diagnostic message to help user to rectify ccache configuration error.
2015-04-19 14:20:38 +08:00
Yao Wei Tjong 姚伟忠
2dd22c82ef Attempt to enable ccache support for Emscripten compiler toolchain.
Minor documentation update again on ccache usage.
2015-04-17 17:33:33 +08:00
Yao Wei Tjong 姚伟忠
44e50b0ebe Minor documentation update on ccache usage. [ci skip] 2015-04-16 14:43:14 +08:00
Yao Wei Tjong 姚伟忠
b7f0a1807f Minor documentation update on the build options section.
Add a simple usage instruction on build scripts error.
Related to issues #697 and #698.
2015-04-09 22:27:51 +08:00
Lasse Öörni
4628a44a5a Removed table of contents from "simple" pages like Examples & Overall Structure. Added contributor credit. Closes #694. 2015-04-07 18:52:09 +03:00
Jon Slenk
7b548b5543 add table of contents to some doc pages. 2015-04-06 22:37:08 -07:00
Yao Wei Tjong 姚伟忠
b468eac53e Only supply the CCACHE environment variable when user hasn't done it. 2015-04-02 16:17:35 +08:00
Yao Wei Tjong 姚伟忠
8ab5ffac52 Add a small chapter on how to setup ccache to work correctly. 2015-04-02 00:06:44 +08:00
Yao Wei Tjong 姚伟忠
601dfc4603 Enhance the 'rake make' task to utilise all the logical cpu cores.
[ci package]
2015-03-31 17:08:21 +08:00
Yao Wei Tjong 姚伟忠
377fd30e9a Minor code cleanup on handling of URHO3D_D3D11 and URHO3D_OPENGL. 2015-03-30 20:22:26 +08:00
Lasse Öörni
d06ffe1445 Merge pull request #680 from urho3d/render-refactor
Render refactor
2015-03-24 23:34:39 +02:00
Lasse Öörni
234c57a598 Minor documentation update. [ci rebase] 2015-03-24 18:21:49 +02:00
Chris Friesen
909860635a Fix usage of word 2015-03-22 20:30:05 -05:00
Chris Friesen
8e2b9475a8 Fix spelling 2015-03-22 20:21:53 -05:00
Lasse Öörni
a363fa2b0e Update documentation related to DirectX SDK and shader compiling. 2015-03-21 13:31:01 +02:00
Lasse Öörni
006c17f78e Added command line & engine startup option to disable OpenGL 3. 2015-03-17 20:44:49 +02:00
Yao Wei Tjong 姚伟忠
d2ea0ca934 Finetune the default test timeout value for Emscripten platform.
We have a time constraint on Travis CI side for all our CI builds and tests. Default value of 10 for Emscripten and 5 for native platform is also inline with Emscripten's claim that asm.js is about 50% slower than native speed.
2015-03-14 12:46:15 +08:00
Yao Wei Tjong 姚伟忠
8a77399bd0 Fix integration tests execution for Emscripten platform.
A test case is considered passed when the html exits as the result of emscripten_force_exit() function being called, which happens when the engine's elapsed time reaches URHO3D_TEST_TIMEOUT seconds. When something goes wrong, the engine's elapsed time does not progress as per normal, in this case the emrun's timeout would kick in and terminate the test case with failed exit status. The EMRUN'S timeout is set to be 2 times URHO3D_TEST_TIMEOUT auotmatically.
Add new build option EMSCRIPTEN_EMRUN_BROWSER to select which browser to use for testing. Default is 'firefox'. Refer to https://github.com/kripken/emscripten/issues/3234 to apply the recommended Firefox preference setting for emrun.
2015-03-12 18:04:16 +08:00
Lasse Öörni
988f1fdc33 Merge branch 'master' into render-refactor 2015-03-07 17:59:37 +02:00
Yao Wei Tjong 姚伟忠
0fe597223f Add initial support for integration tests on Emscripten platform.
At the moment the 'make test' cannot be run non-interactively yet on Linux host and Mac OS X host systems due to what-could-be a bug in 'emrun' script. The issue with 'emrun' has been reported to upstream (https://github.com/kripken/emscripten/issues/3234).
2015-03-07 12:00:47 +08:00
Yao Wei Tjong 姚伟忠
4d34d0a626 Add new Emscripten build option for creating shared data file. 2015-03-03 23:32:27 +08:00
Yao Wei Tjong 姚伟忠
02572a9ec5 Add generic support for embedding and loading files for Emscripten.
Via the following source file property "EMCC_OPTION". The supported property values are: js-library, pre-js, post-js, embed-file, preload-file, shell-file. The files are added as link dependency so a relink will automatically occur when they are modified (have newer timestamp than target).
2015-03-03 01:16:40 +08:00
Yao Wei Tjong 姚伟忠
536b0a5429 Add new build option for better targeting Raspberry Pi platform. 2015-02-27 22:19:44 +08:00
Lasse Öörni
9f129ecd51 Merge branch 'master' into render-refactor 2015-02-23 01:43:02 +02:00
Lasse Öörni
281809121c Skeleton of D3D11 graphics classes. Does not render anything visible yet and many functions lack implementation. 2015-02-22 22:44:12 +02:00
Lasse Öörni
88080dad31 Remove Shader Model 2 mode & instancing without stream offset (D3D9) as they are hard to test. Added Graphics::GetApiName() function. 2015-02-21 20:53:12 +02:00
Yao Wei Tjong 姚伟忠
10e477bbc8 Add flag to consider 'unresolved symbol' as an error. 2015-02-16 14:51:28 +08:00
Yao Wei Tjong 姚伟忠
d3f90cbe08 Make the URHO3D_LUA build option available for Emscripten build. 2015-02-16 07:23:10 +08:00
Lasse Öörni
b6ea033ce3 Enable CharacterDemo & VehicleDemo also without networking. Update documentation. 2015-02-14 22:16:39 +02:00
Yao Wei Tjong 姚伟忠
598030140d Some how the strike through markdown does not work, so use hard delete.
Audio and mouse locking are working now in Emscripten build, credits to Chris and hd_, respectively.
[ci skip]
2015-02-14 21:41:10 +08:00
Yao Wei Tjong 姚伟忠
9bf0d95b33 Use full URL so that SF.net can display our logo correctly there.
Mark Emscripten build support as experimental.
2015-02-14 20:24:30 +08:00
Yao Wei Tjong 姚伟忠
8471dcf3e4 Add option to package resource dirs and treat those dirs as build deps.
Fix static library building using emar instead of ar (from host compiler toolchain).
2015-02-13 21:31:59 +08:00
Yao Wei Tjong 姚伟忠
6e0ff48059 Suppress linker warnings. Minor doc update. 2015-02-13 21:23:05 +08:00
Yao Wei Tjong 姚伟忠
19ab396e74 Add new Emscripten/CMake toolchain file based on Urho3D convention.
Use EMSCRIPTEN_ROOT_PATH environment variable to specify the root path to the emscripten, instead of the original EMSCRIPTEN environment variable exported in emsdk_set_env.sh.
This is because the original EMSCRIPTEN environment variable name clashes with our build scripts.
2015-02-13 21:23:05 +08:00
Yao Wei Tjong 姚伟忠
564b77c39f Fix Ninja build by adding directory containing PCH to its search path.
Officially add Ninja build support. Close #653.
2015-02-06 13:49:32 +08:00
Yao Wei Tjong 姚伟忠
8743413816 Attempt to enable precompiled header support for GCC and Clang. 2015-01-29 16:13:41 +08:00
Yao Wei Tjong 姚伟忠
fd84488a73 Add new build option to setup main executable as console application.
The new build option is only applicable for Windows platform only.
2015-01-21 16:50:09 +08:00
Lasse Öörni
6e5d0db379 If Urho3DPlayer command line is empty, attempt to read Data/CommandLine.txt on all platforms. Closes #615. 2015-01-20 12:42:53 +02:00
Chris Friesen
262bb942e4 Editor deselect all 2015-01-19 23:18:43 -06: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 姚伟忠
b86c4927aa Enhance setup_main_executable() to support MACOSX_BUNDLE individually.
When the URHO3D_MACOSX_BUNDLE build option is not set, passing the MACOSX_BUNDLE explicitly when setting up a main executable target will make the corresponding target to be built as a bundle.
2015-01-18 15:59:11 +08:00
Yao Wei Tjong 姚伟忠
1b2dcac1d2 Add new URHO3D_MACOSX_BUNDLE build option to build bundled apps on OSX. 2015-01-17 18:34:22 +08:00
Yao Wei Tjong 姚伟忠
f865522e1d Make the xcpretty filter optional for the 'rake make' task.
Minor documentation update.
2015-01-15 23:32:15 +08:00
Yao Wei Tjong 姚伟忠
bffa727e2e Attempt to suppress Xcode multi-group resource reference warnings. 2015-01-14 13:32:11 +08:00
Yao Wei Tjong 姚伟忠
02a5945b83 For Travis CI - Display where the SDK is being installed to in the log.
Minor document update on new Rake tasks.
2015-01-12 14:17:33 +08:00
Lasse Öörni
b6caeb02a5 Document depth rendering. Disable depth write when sampling a HW depth texture. Disable stencil optimizations when using a custom depth texture, as in that case stencil channel availability can't be guaranteed. Changed -renderpath command line option to use the full resource name instead of defaulting to the RenderPaths directory. Removed test code from ForwardHWDepth renderpath. Closes #597. 2015-01-10 15:54:00 +02:00
Yao Wei Tjong 姚伟忠
32212b1a12 Minor document update. 2015-01-10 21:23:12 +08:00
Yao Wei Tjong 姚伟忠
9d15448830 Keep the basic project structure simple and stupid. 2015-01-08 11:42:12 +08:00
Yao Wei Tjong 姚伟忠
cffcd1e07f Revise the log message when the resource prefix path is not set.
Hopefully in doing so, this will not become FAQ in the support forum.
2015-01-07 21:09:44 +08:00
Yao Wei Tjong 姚伟忠
0a871ace9a Minor document formatting update. 2015-01-06 13:05:31 +08:00
Yao Wei Tjong 姚伟忠
3494bd020d Minor documentation update. 2015-01-05 22:31:32 +08:00
Yao Wei Tjong 姚伟忠
1cbbb6b805 Finalize SDK-like include dirs clean up. Fix build using MSVC. 2015-01-04 22:32:41 +08:00
Yao Wei Tjong 姚伟忠
b654478715 For Travis CI - also use DESTDIR=~ when installing on OSX host. 2015-01-04 22:32:41 +08:00
Yao Wei Tjong 姚伟忠
a4a4cde236 Refactor all CMake toolchains to reset CMAKE_INSTALL_PREFIX variable.
Add new build options for specifying tool-prefix and target-sysroot in cross-compiling build.
Add new IOS_SYSROOT variable to store the path to iOS sysroot and use it to set CMAKE_FIND_ROOT_PATH variable.
Now also generate pkg-config Urho3D.pc for iOS platform.
For Travis CI - simplify SDK installation logic. Use DESTDIR=~ to avoid sudo.
2015-01-04 22:32:41 +08:00
Yao Wei Tjong 姚伟忠
1b465fb704 Clean up FindUrho3D.cmake module.
Add new build options to override 64-bit Linux package setup for Debian and Redhad -based host systems.
For Travis CI - fix 64-bit RPM package generation to install library in /usr/lib64, also fix external project build test using Urho3D library from SDK.
2015-01-04 22:32:41 +08:00
Yao Wei Tjong 姚伟忠
4feb135281 Clean up SDK include dirs. Refactor FindUrho3D CMake module.
For Travis CI - add new steps to install the Urho3D SDK and to reference Urho3D library from the installed SDK.
2015-01-04 22:32:41 +08:00
Yao Wei Tjong 姚伟忠
325a4f7365 Refactor to use the newly renamed Source/Urho3D directory. 2015-01-04 22:32:40 +08:00
Yao Wei Tjong 姚伟忠
67e415acc8 Fine tune LuaJIT target arch detection logic. 2015-01-04 22:32:39 +08:00
Yao Wei Tjong 姚伟忠
4db162eb62 Lua/LuaJIT host tool building while cross-compiling in one go.
For Travis CI - reenable CI build with Lua/LuaJIT build option turned on.
2015-01-04 22:32:39 +08:00
Yao Wei Tjong 姚伟忠
f9cb911cec Fix AngelScript binding which broke MinGW and OSX CI build.
Unify CMake module path setting command between Windows and non-Windows hosts for using library from SDK installation.
2015-01-04 22:32:38 +08:00
Yao Wei Tjong 姚伟忠
d75c592bd2 Add new engine parameter to set the location of resource prefix path.
Remove temporary measure instead use the new URHO3D_PREFIX_PATH environment variable to set the resource prefix path for testing the executables.
2015-01-04 22:32:38 +08:00
Yao Wei Tjong 姚伟忠
20e21050e9 Rename everything 'RASPI' to 'RPI'. [ci rebase] 2015-01-04 22:32:38 +08:00
Yao Wei Tjong 姚伟忠
d8a3b8b4f4 Make repo root is also CMake source tree for the Urho3D project.
Build tree location is now fully user defined. The build tree location could also be the same as source tree, although it is not recommended.
2015-01-04 22:32:38 +08:00
Yao Wei Tjong 姚伟忠
514847fb99 Adjust batch files and shell scripts to take build tree as user input.
Refactor to use a single generic batch file/shell script that does the actual work.
2015-01-04 22:32:38 +08:00
Yao Wei Tjong 姚伟忠
4f60123516 Move CMake modules and toolchains to the new source tree. 2015-01-04 22:32:38 +08:00
Lasse Öörni
50e2493b97 Added example of loading scene & UI content. Closes #583. 2014-12-29 22:33:15 +02:00
hdunderscore
34dc78169e - Added support for duplication in the editor (Ctrl+D / menu / context).
- Changed pasting default behavior to paste into the selected node, rather than the scene root (UI pasting was doing this already).
2014-12-08 20:14:51 +11:00
Lasse Öörni
a7fef9291c Added note of required shared Urho3D library build if creating an application consisting of multiple modules. 2014-12-02 14:56:51 +02:00
Yao Wei Tjong 姚伟忠
60eeb45222 For Travis CI - skip APK test run when packaging.
General build script cleanup:
- Constrain build option values in cmake-gui.
- Constrain build configuration for both multi-configuration and single-configuration generators.
- Mark cached variables as advanced or internal as appropriate.
2014-11-22 00:39:48 +08:00
Yao Wei Tjong 姚伟忠
0fb99af9e4 Misc. fixes and enhancement for Android platform.
- Add initial support for ndk-gdb. Enable via new 'URHO3D_NDK_GDB' build option.
- Enhance rake android task: more effective loop to wait for Android device, ability to pick library to run from SampleLauncher from the adb shell.
- Fix "buildvm" tool name for Android to derive from the correct NDK ABI CMake's variable.
- Fix Android toolchain to copy shared STL library to the correct Android library output directory.
2014-11-19 21:50:37 +08:00
Yao Wei Tjong 姚伟忠
e0e3b11757 Refactor build scripts to auto detect ANDROID and RASPI build options. 2014-11-19 21:48:25 +08:00
Yao Wei Tjong 姚伟忠
eda52984ac Add initial support for 64-bit Android ABIs. 2014-11-19 21:48:25 +08:00
Lasse Öörni
b325ba5195 Support excluding 2D functionality from the build (CMake option URHO3D_URHO2D=0). Removed empty scene creation from the UIDrag example. Make compiling Civetweb conditional of URHO3D_NETWORK. Exclude samples depending on the Controls structure when URHO3D_NETWORK is disabled. 2014-11-17 21:00:02 +02:00
Yao Wei Tjong 姚伟忠
125adf1228 Enhance Urho3D.pc file generation to support MSVC and MinGW better.
Simplify the pkg-config invocation example for MinGW cross-compiler since the Urho3D library name is already corrected. No need to sed anymore.
2014-11-09 18:08:58 +08:00
Yao Wei Tjong 姚伟忠
1f6215cf58 Initial support of rake scaffolding task on Windows platform.
The task requires privilege to create symlink via mklink command.
2014-11-09 00:38:35 +08:00
Yao Wei Tjong 姚伟忠
1edc6bfe64 Append '_d' to the output executable file name in the example.
Related to commit 78436eecd4.
2014-11-08 15:01:54 +08:00
Yao Wei Tjong 姚伟忠
78436eecd4 Add another pkg-config usage example for MinGW cross compiling. 2014-11-08 14:59:02 +08:00
Lasse Öörni
d21dea2cde Copy/paste fix. 2014-10-07 19:49:42 +03:00
Lasse Öörni
807bd28a9d Add URHO3D_NETWORK CMake parameter to control whether networking support is built. 2014-10-07 19:33:33 +03:00
Yao Wei Tjong 姚伟忠
e06762db76 On non-MSVC compiler, default to 64-bit when host compiler is.
The default can be overriden using URHO3D_64BIT build option as before.
2014-09-29 18:28:08 +08:00
Yao Wei Tjong 姚伟忠
70e7cb2d25 Give more verbose message when SOURCE_FILES variable is found not set.
Minor documentation update to stress that most of the build options supported by Urho3D project can also be pased to build script for configuring external project.
Add initial documentation on 'scaffolding' rake task.
2014-09-23 21:25:06 +08:00
Yao Wei Tjong 姚伟忠
bb573887ae Shorten anchor so that the line does not wrap around in Readme.txt. 2014-09-22 22:53:32 +08:00
Yao Wei Tjong 姚伟忠
47fb292a3a Add documentation for the OS X and iOS deployment target build options. 2014-09-15 14:51:18 +08:00
Yao Wei Tjong 姚伟忠
5a79a7c552 Add the new build options to documentation page.
Closes #446. [ci skip]
2014-09-13 14:55:08 +08:00
Yao Wei Tjong 姚伟忠
20d1cef4c2 Fix line wrap in the Readme.txt when viewed from GitHub.
[ci skip]
2014-08-10 15:46:18 +08:00
Yao Wei Tjong 姚伟忠
91c489bdfb Setup RPATH for Mac OS X. Adjust soversion to keep Apple linker happy.
Set CMake policy CMP0042 to NEW for early CMake 3.0.0 adopters to prevent warning message when generating Urho3D project file.
2014-07-19 21:23:11 +08:00
Yao Wei Tjong 姚伟忠
08f08e460b Improve the reliablity to find SDL_android_main.c when using SDK.
Replace usage of URHO3D_INSTALL_PREFIX environment variable with the more standard CMake's own CMAKE_PREFIX_PATH environment variable to define prefix path of non-standard SDK installation location.
2014-07-17 15:15:15 +08:00
Yao Wei Tjong 姚伟忠
cf1a0156e9 Briefly comment the CMake policy settings and update the documentation. 2014-07-17 12:31:02 +08:00
Lasse Öörni
25d164bd0c Merge remote-tracking branch 'remotes/friesencr/editor-mouse-panning'
Conflicts:
	Docs/GettingStarted.dox
2014-06-06 00:29:10 +03:00
Chris Friesen
ffc4dffba7 Editor resource browser & right click menus 2014-06-04 23:20:18 -05:00
Chris Friesen
4722737049 Pan editor camera w/ shift+middle mouse button 2014-06-03 10:06:37 -05:00
Yao Wei Tjong 姚伟忠
a690e6b2f4 Attempt to fix the bullet numbering issue in GitHub pages.
The numbering is fine locally for some reason. [ci skip]
2014-05-24 12:59:01 +08:00
Yao Wei Tjong 姚伟忠
cf654822c4 Add initial support for CodeBlocks IDE. [ci skip] 2014-05-24 09:41:31 +08:00
Lasse Öörni
8d050480bc Specify the customizable project & executable names on the "Using Urho3D as external library" documentation page. Closes #334. 2014-04-29 16:44:15 +03:00
Yao Wei Tjong 姚伟忠
6ad8c14346 Add engine param for enabling touch emulation during initialization.
Adjust sample base class to add screen joystick on desktop platform when touch emulation is enabled.
2014-04-29 10:36:43 +08:00
Lasse Öörni
848ecce091 Merge remote-tracking branch 'remotes/friesencr/auto-load-folders' 2014-04-18 00:34:36 +03:00
Chris Friesen
873cef9840 Folders that autoload subfolders/paks on load 2014-04-16 22:27:31 -05:00
Chris Friesen
bf138fb567 Added middle editor mouse button to documentation 2014-04-16 22:19:40 -05:00
Chris Friesen
c346c3db23 Take screenshots in the editor w/ F11 2014-04-15 23:01:33 -05:00
Yao Wei Tjong 姚伟忠
a2a4690945 Fix document reference's title. 2014-04-05 22:44:19 +08:00
Yao Wei Tjong 姚伟忠
1f879a084d Cleanup the documentation on build options. 2014-04-05 11:59:35 +08:00
Yao Wei Tjong 姚伟忠
46285baf97 Refactor build scripts to group Urho3D specific build option.
Initial support of project configuration and generation via cmake-gui.
2014-04-05 00:20:56 +08:00
Lasse Öörni
97ec02619f Locate scene node in editor by doubleclicking in the hierarchy window. 2014-04-02 18:33:56 +03:00
Lasse Öörni
35195939c1 Exposed allowed screen orientations (effective on iOS only currently) and the flush GPU setting as engine startup parameters. 2014-03-28 00:23:31 +02:00
Lasse Öörni
52aa369f5d Android fixes. Bump required Android SDK required for compiling to 12 due to SDL joystick code. Removed the activity finish request code, as SDLActivity should now cleanly wait for the native thread to exit. 2014-03-21 02:46:42 +02:00
Lasse Öörni
fb3306170e Material quality, texture quality, texture filter mode and anisotropy level as engine startup parameters and command line options. Closes #241. 2014-03-09 19:36:40 +02:00
Yao Wei Tjong 姚伟忠
62ce85adfe Add new build options to control FileWatcher/profiling/logging support. 2014-03-07 23:36:07 +08:00
Lasse Öörni
0cf91f489b Changelog for upcoming release. 2014-03-05 15:04:13 +02:00
Lasse Öörni
4c67f1b254 Added mention of the Urho2D components to Rendering page. 2014-03-05 11:23:41 +02:00
Lasse Öörni
592f0db8ce Fixed null exception when toggling orthographic camera in UI element selection mode. Updated editor documentation. 2014-02-18 11:52:18 +02:00
Yao Wei Tjong 姚伟忠
48eb60fd8e Rename 'magic' module to 'common' module to reflect its purpose better.
The purpose of Urho3D-CMake-common module is to store all the commonly used CMake commands and macros in one place so that they can be reused by other external projects using Urho3D as external library by simply including this module in their own CMakeList.txt.
2014-02-18 12:55:13 +08:00
Lasse Öörni
abc6fcd8b8 Shader precaching mechanism. Call Graphics::BeginDumpShaders() or use the engine command line parameter -ds <file> to create a shader dump file of the variations that are loaded during program run, and Graphics::PrecacheShaders() to load the dump file.
Moved GetShader() from Renderer subsystem to Graphics, which is more logical as loading shaders is a low-level operation, while Renderer should be concerned with high-level rendering of 3D scenes. Now eg. UI does not need to depend on Renderer at all.

Simplified internal state of ShaderVariation & ShaderProgram objects, the success of compile/link can be deduced from the presence of a non-null GPU object.

Fixed FILE_READWRITE mode to not clear the file contents, and to handle alternating reads and writes correctly.
2014-02-16 22:23:07 +02:00
Yao Wei Tjong 姚伟忠
8ef4dc47eb Better integration of MinGW cross-compiling build process.
- Runtime and archive output directories change to mingw-Bin and mingw-Lib, respectively.
- Enable SCP_TO_TARGET build option for all cross-compiling build process (except Android).
- Enable LuaJIT support for MinGW cross-compiling build.
- Cache MinGW toolchain path and sysroot.
- Fix "object file is too big" issue when building Assimp library in debug build using MinGW.
- Reorder the build processes documentation section to match the Readme.txt file.
2014-02-15 13:34:42 +08:00
Daniel Wiberg
4d03b08acb Copied MinGW build instructions from Readme.txt to GettingStarted.dox 2014-02-13 17:39:46 +01:00
Lasse Öörni
fccf4fbe96 Changed the Direct3D library fallback mechanism: on MinGW the SDK is never searched for, because if it is found, the libraries likely are incompatible. Instead the fallback libraries are set in Urho3D-CMake-magic.cmake if the SDK was not found or not searched for. Documented the use of MinGW-w64 to enable a fully functional Direct3D build. 2014-02-03 02:48:11 +02:00
Lasse Öörni
caf080ecbb Initial refactoring of Direct3D9 shaders. ShaderCompiler removed. Bytecode not cached into files yet. 2014-02-02 14:54:46 +02:00
Lasse Öörni
5062dbba42 Sanitate screenshot name in the samples to ensure saving it succeeds. Prepend the executable path properly. Flip image in OpenGL Graphics::TakeScreenShot() instead of having the user to do it. 2014-02-01 01:07:03 +02:00
Yao Wei Tjong 姚伟忠
b740d94a56 Minor documentation update on build options to better use of space. 2014-01-25 16:07:30 +08:00
Yao Wei Tjong 姚伟忠
48eb0497df Rename var name from <package>_INCLUDE_DIR to <package>_INCLUDE_DIRS.
See http://urho3d.prophpbb.com/topic9.html.
2014-01-21 15:57:07 +08:00
Lasse Öörni
28254f9a1d Improved the "Overall structure" documentation page. 2014-01-03 11:59:49 +02:00
Lasse Öörni
721f70fe1a Fixed D3D9 build. Added borderless as a command line option and documented it. 2013-12-28 00:49:06 +02:00
Yao Wei Tjong 姚伟忠
e52bc6e45d Fix Editor argument parsing to load startup scene correctly. 2013-12-26 15:10:37 +08:00
Pete Chown
62a455da7c Document the view keys (Numpad 1, 3, 7) and the ascend/descend keys (E, Q). 2013-12-17 23:51:04 +00:00
StevenZhang
a17baf2695 make AngelScript an optional module, you can use -DENABLE_ANGELSCRIPT=0 to disable it. 2013-12-02 19:02:39 +02:00
Yao Wei Tjong 姚伟忠
484f855127 Build Lua and LuaJIT standalone interpreter and bytecode compiler.
Use the internal standalone lua/luajit interpreter for dumping LuaScript API doxygen file.
2013-11-27 00:28:59 +08:00
Yao Wei Tjong 姚伟忠
6e18827fd7 Clean up the documetation. 2013-11-25 22:02:41 +08:00
Yao Wei Tjong 姚伟忠
469794689f Refactor to keep the Docs directory clean from temp. build files.
- Move the temp. build files for documentation building to its own build directory.
- Add new build option to include documentation build as part of the normal build (not enabled by default).
- Document the documentation building process.
2013-11-25 15:10:07 +08:00
Yao Wei Tjong 姚伟忠
cff6d6a4d8 Document the importance of URHO3D_STATIC_DEFINE when static linking. 2013-11-24 10:17:02 +08:00
Yao Wei Tjong 姚伟忠
772a546d56 Refactor to expect log level parameter value after a space.
To be consistent with the rest of the Engine parameters.
2013-11-22 22:20:55 +08:00
Yao Wei Tjong 姚伟忠
f6186456a0 Fix SDK destination installation path for Windows platform.
It appears CMake has automatically prepended "Urho3D" to built-in CMAKE_INSTALL_PREFIX variable, so we don't need to prefix the path one more time. Also in the commits:
- Fix documentation on CMake module search path for Windows platform.
- Unified SDK destination installation for Windows and non-Windows platforms.
- Replace global include directories to SDL and export header to locally scoped include directories.
- Enhance Urho3D.pc generation to also provide additional compiler flags for DEBUG/RELEASE/RELWITHDEBINFO as comments/references.
2013-11-20 15:59:38 +08:00
Yao Wei Tjong 姚伟忠
e83d98f016 Fix Urho3D.pc file for Windows and Raspberry Pi platforms.
Document cross-compiling example using pkg-config for Raspberry Pi platform.
Disable Urho3D.pc file generation for Android and iOS platform.
2013-11-17 21:26:44 +08:00
Yao Wei Tjong 姚伟忠
36620dd819 Avoid hardcoding of include dirs in the Urho3D.pc.in input file.
Also revert decision to use smaller letter case cmake destination directory in previous commit :).
2013-11-16 16:21:13 +08:00
Yao Wei Tjong 姚伟忠
56798dcce9 Fix incorrect include dirs in the Urho3D.pc file.
Also:
- Change the CMake module installation destination to use small letter case.
- Update documentation on pkg-config invocation examples.
2013-11-16 14:49:34 +08:00
Yao Wei Tjong 姚伟忠
d7942132f1 Configure and install Urho3D.pc file for pkg-config tool.
This is useful for Urho3D library user via SDK installation without having CMake installed.
2013-11-15 18:33:51 +08:00
Yao Wei Tjong 姚伟忠
f246126fe4 Update documentation on Using Urho3D library. 2013-11-14 15:10:55 +08:00
Lasse Öörni
2c0c10cdcb Renamed "Example applications" Doxygen page to "Examples". 2013-11-12 01:42:58 +02:00
Lasse Öörni
ee8e8031d2 Rework command line options that need a parameter value to have a space in between. Fixes #44. 2013-11-12 01:33:15 +02:00
Yao Wei Tjong 姚伟忠
1b97acc6f3 Minor documentation update for Raspberry Pi cross-compiling build. 2013-11-06 22:53:45 +08:00
Yao Wei Tjong 姚伟忠
8a571ae437 Document how to install library and how to find it from installed SDK. 2013-11-05 15:52:37 +08:00
Lasse Öörni
cfa6b135ce Moved Urho3DPlayer class definition to a .h file. Updated documentation to refer to Urho3DPlayer. 2013-11-04 19:07:00 +02:00
Yao Wei Tjong 姚伟忠
52ff881c54 Add 'install' option (currently only available for native build).
Also enhance FindUrho3D.cmake module to find Urho3D library in the Urho3D SDK installation location.
2013-11-02 16:45:44 +08:00
Lasse Öörni
8ca86afbe7 Merge branch 'sdl-update' 2013-11-02 01:04:02 +02:00
Yao Wei Tjong 姚伟忠
8ff3348503 Refactor define_dependency_libs macro.
Change to remove the references to engine's sub-library targets which are now defunct. General cleanup of the build scripts.
2013-11-01 17:58:47 +08:00
Lasse Öörni
c057b29dba Unify how command line options are shown in utilities.
Added note in documentation about lack of space between command line option and its parameter.
Prepend Materials/ to the material list written by OgreImporter (assume "standard" materials subdirectory.)
2013-10-30 18:49:27 +02:00
Yao Wei Tjong 姚伟忠
f442c0c16a Updated documentation on additional Linux software package for RPI. 2013-10-29 21:28:38 +08:00
Lasse Öörni
3ce378d5e2 Merge branch 'master' into sdl-update 2013-10-28 13:13:08 +02:00
Yao Wei Tjong 姚伟忠
e423a26461 Refactor CMake build scripts.
Changes:
- Avoid globbing engine source files twice.
- Setup folder group for VS and Xcode. Also group object files according to 3rd-party library name.
- New define_source_files() macro.
2013-10-28 18:21:18 +08:00
Lasse Öörni
afa6c4ccc3 Initial SDL 2.0.1 merge. Windows tested OK. Android will crash when returning to the application. 2013-10-27 03:11:36 +03:00
Yao Wei Tjong 姚伟忠
589e0d53bb Change CMake library type preferences to agree with Urho3D.
This change helps external CMake project to choose the correct library type as the compiler flags setup by the Urho3D-CMake-Magic module. Both the external project and the cmake module are being governed by the same URHO3D_LIB_TYPE build option.
2013-10-25 01:01:53 +08:00
Lasse Öörni
f39702a07e Terminology edits in the documentation. Do not refer to Graphics, Scene etc. as separate libraries anymore. 2013-10-22 00:58:58 +03:00
Yao Wei Tjong 姚伟忠
d33ac02538 Refactor build scripts to build Urho3D library as main target.
Other changes in the commit:
- Change build option from URHO3D_BUILD_TYPE to URHO3D_LIB_TYPE. Default value is STATIC.
- Automatically add compiler definition 'URHO3D_STATIC_DEFINE' when linking with Urho3D library statically.
- Move LuaScript subsystem from Extra/ to Engine/.
- Enable FindUrho3D module to also detect Urho3D library target when the FindUrho3D module is being used internally by Urho3D project.
- Configure to build all the samples for iOS and Android platforms also when option to build samples is enabled.
- Export all the Register*Library() global functions.
- Rewrite all the tools, samples, and extras targets to link against Urho3D library.

TODOs:
- Combine engine sub-libraries into one.
- Test builds on non-Linux platforms.
2013-10-21 02:28:29 +08:00
Lasse Öörni
30ce75fd68 LZ4 compressed package file support. Closes #6. 2013-10-12 15:03:17 +03:00
Yao Wei Tjong
8d94a287d5 Make batches consistent with shell script behavior.
Batch reads from CMake cache, if necessary, when the option is not passed explicitly.
2013-10-12 12:23:57 +08:00
Yao Wei Tjong 姚伟忠
b5836237e9 Remove dependency on Lua when LuaJIT is enabled.
Change build option name from ENABLE_LUA_JIT to ENABLE_LUAJIT.
Change tolua++ lua scripts to be compatible with both LuaJIT and Lua. Replace toluabind.c with the corresponding bytecode.
2013-10-11 02:02:08 +08:00
Yao Wei Tjong
2b90804c6e Fixed LuaJIT build on Linux, both native and cross-compiling.
The following platforms should be now supported:
Windows, Linux, Mac OS X, IOS, Android, and Raspberry Pi. Not all platforms are fully tested yet.

Cross-compilation may work on GCC/CLang only.
2013-10-08 12:22:56 +08:00
weitjong
d98c8b4d64 Updated documentation on build option being cached. 2013-10-06 14:01:10 +08:00
weitjong
11ffd62f0c Provide new batch and shell script to clean CMake cache for convenience and document it. Adjust line width of Readme.txt to prevent text overwrap in GitHub view. 2013-10-02 17:04:56 +08:00
Lasse Öörni
165b7c8eae Default to ENABLE_SAFE_LUA=0 for improved performance. 2013-10-01 18:40:47 +00:00
Lasse Öörni
0618b5fc94 Added LuaJIT license and documented the LuaJIT CMake option. 2013-09-29 22:29:24 +00:00
Wei Tjong Yao
be8525ab6e Updated documentation to confirm the existing AngelScript viewing/editing fix also work with Xcode 5 on Mountain Lion. 2013-09-25 05:10:50 +00:00
Lasse Öörni
cf50bb9f39 Optionally remember last resource path in editor.
Remember last import path in editor.
Set node / scene / UI element picker paths from remembered resource path if possible.
2013-09-22 12:18:14 +00:00
Lasse Öörni
0201c1d961 Undefine TOLUA_RELEASE by default for better Lua crash protection. Re-enable with the CMake build option -DENABLE_SAFE_LUA=0.
Fixed some Variant constructors failing in Lua (removed void pointer constructor.)
Removed deprecated RenderMode enum.
Added Camera's ViewOverrideFlags to Lua.
Added MultipleViewports Lua sample.
2013-09-17 19:49:18 +00:00
Lasse Öörni
f0a965c912 Added quick menu feature to editor contributed by Chris Friesen. Open with Ctrl+Space. 2013-09-14 10:54:06 +00:00
Lasse Öörni
54e0691610 Fixed errors/omissions from the Example Applications doxygen page. 2013-09-10 22:18:30 +00:00
Lasse Öörni
e90e99536a Documentation update. 2013-09-09 22:00:14 +00:00
Lasse Öörni
a0e4538f58 Actually removed the old QuickStart documentation text.
Moved the Xcode AngelScript instructions to the Urho3D script host page.
2013-09-03 09:00:03 +00:00
Lasse Öörni
c9865078ad List tools in alphabetical order in the documentation; fixed outdated information. 2013-09-02 21:11:28 +00:00
Lasse Öörni
76161aaecf Build documentation update. 2013-09-02 21:01:57 +00:00
Lasse Öörni
8da3fa5860 Documentation tweaks. 2013-09-02 20:40:06 +00:00
Lasse Öörni
4cc1858329 Removed the old large script example applications and batch files to start them.
Updated documentation for the new sample applications.
Changed the Lua sprite example to use the common sample initialization.
2013-09-02 18:50:15 +00:00
Lasse Öörni
7f64104825 Added -p command line argument, which specifies resource paths to use.
Added IsAbsolutePath() function to FileSystem.
Removed unnecessary double error message from ResourceCache.
2013-08-30 11:03:07 +00:00
Lasse Öörni
04b00263b0 Moved CharacterDemo to the samples.
Use forward declarations in the samples.
2013-08-27 21:45:43 +00:00
Wei Tjong Yao
3efb36599a Refactored Findxxxx and Urho3D-CMake-magic modules to let linker uses absolute path to the found libraries. Updated documentation accordingly. 2013-08-27 14:31:05 +00:00
Wei Tjong Yao
594457df82 Removed line to define ENABLE_64BIT for Visual Studio based on cmake generator as the define must already been set explicitly when invoking cmake_vsxxxx.bat in order to get Win64 generator. Fixed the expression to check whether ENABLE_TOOLS is defined. Minor update on build options documentation. 2013-08-18 06:16:16 +00:00
Wei Tjong Yao
dfd142c7d2 Added Raspberry Pi bootstrap back to fix raspi build. Moved the xmlstarlet logic to cmake_gcc.sh for code reuse. Added ANDROID_ABI into build options documentation. 2013-08-17 06:27:32 +00:00
Lasse Öörni
9047bfa1ab Use DLL runtime by default. Proper fix for building the Urho3D library with VS2008. 2013-08-15 23:00:10 +00:00
Lasse Öörni
6b4a5fd296 Added cmake_mingw.bat contributed by Mika Heinonen. 2013-08-14 15:30:20 +00:00
Wei Tjong Yao
2bf1be4cea Simplified the documentation for Eclipse. The generated Eclipse project file could be in Build or Source directory depends on whether xmlstarlet fix is being invoked or not. 2013-08-14 13:54:07 +00:00
Lasse Öörni
a899f7293e Capitalize name of CMake script directory. 2013-08-13 20:51:20 +00:00
Wei Tjong Yao
d5640aab4b Updated documentation - another attempt. 2013-08-13 09:25:12 +00:00
Wei Tjong Yao
a71d656b9d Updated documentation. 2013-08-13 09:18:53 +00:00
Wei Tjong Yao
217c851811 Create out-of-source build directory for Android on Windows platform when mklink option is enabled. 2013-08-10 17:58:33 +00:00
Wei Tjong Yao
1385700c7f Fixed broken wiki link. 2013-08-09 17:21:30 +00:00
Wei Tjong Yao
2eb5a49353 Updated documentation. 2013-08-09 17:00:43 +00:00
Wei Tjong Yao
9d9b2278fa Updated documentation on using Urho3D as external library. 2013-08-09 04:33:51 +00:00
Lasse Öörni
99560bba71 Use SSE2 instead of SSE on MinGW, but print a warning message.
CMake options can be used to disable SSE & minidumps, instead having to modify CMake script.
2013-08-07 07:41:00 +00:00
Lasse Öörni
e8c16bf658 Read command line from a file on Android and iOS. 2013-08-06 19:12:44 +00:00
Lasse Öörni
92aa3341d5 Simplified the instructions for enabling OpenGL mode.
Wiki update.
2013-08-06 15:26:05 +00:00
Lasse Öörni
560ffd03c2 Moved the Urho3D application code to Tools directory.
Updated documentation.
2013-08-06 15:09:47 +00:00
Wei Tjong Yao
0cd4d9cbe3 Quick fixed DocConverter tool to handle wiki table. 2013-07-28 05:53:59 +00:00
Wei Tjong Yao
1a5670b65c Updated documentation on Raspberry Pi port. 2013-07-28 01:03:38 +00:00
Lasse Öörni
ae5871d912 Documented Application class.
Added deprecation note to the C++ Quickstart documentation page.
Fixed ScriptCompiler.
2013-07-26 14:04:27 +00:00