Commit Graph

9869 Commits

Author SHA1 Message Date
Lasse Öörni
9d864d3f89 Fixed return type of Texture2D::SetSize() & TextureCube::SetSize() when exposed to script. 2012-03-30 23:45:44 +00:00
Lasse Öörni
ff950d7dca Refactored joint attributes. Now the joint should be created into a node with a rigidbody, and only the connected body needs to be specified. 2012-03-30 23:02:33 +00:00
Lasse Öörni
7eaa728f84 Restored accurate frame limiting. May need more testing on different systems. 2012-03-28 18:40:15 +00:00
Lasse Öörni
bea4b8d60b Allow per-rigidbody disabling of gravity. 2012-03-25 12:57:45 +00:00
Lasse Öörni
a972435910 Reverted previous change for increased readability as no performance difference was observed. 2012-03-23 16:24:43 +00:00
Lasse Öörni
c0273f35ca Removed deprecated SuppressNextChar() function. 2012-03-23 11:45:46 +00:00
Lasse Öörni
6a99c8ad0d Added ifdefs to disable inclusion of unneeded uniforms, samplers and attributes.
Removed deprecated LightVolume shader.
2012-03-23 11:40:25 +00:00
Lasse Öörni
1ab5dd3e8d Fixed crash if OpenGL version or extensions are not satisfied. 2012-03-23 00:00:24 +00:00
Lasse Öörni
139ef6d6e2 Removed the light to light queue map. Instead store the light queue pointer directly to the light. 2012-03-21 08:13:57 +00:00
Lasse Öörni
1f89e97116 Insert drawable into the proper octant (instead of root) immediately when OnNodeSet() is called. 2012-03-21 00:13:34 +00:00
Lasse Öörni
b7f5a6c997 Reverted use of HashSet in Octree for updates & reinsertions. Instead use vectors of weak pointers to Drawables to require no explicit cleanup when removed. 2012-03-20 18:39:57 +00:00
Lasse Öörni
97142c1db1 Eliminated n^2 algorithms from event subscribing and octree updates. 2012-03-20 16:33:46 +00:00
Lasse Öörni
66f3fd4097 Added function to get API-independent projection matrix.
Preallocate light queues once per frame instead of resizing the light queue container multiple times.
2012-03-19 20:13:53 +00:00
Lasse Öörni
265d59dfb0 Use occlusion for coarse culling of octants before testing drawable occlusion in worker threads.
More specialized octree queries moved to View.
2012-03-19 08:08:57 +00:00
Lasse Öörni
6c1536627e Refactor of the OctreeQuery class. Use a separate subclass for shadowcaster-only queries. 2012-03-18 23:06:54 +00:00
Lasse Öörni
612a0c2dee Fixed erroneous occlusion culling in orthographic mode.
Use two smaller Z-biases (before and after viewport transform) for occlusion instead of one large.
2012-03-18 22:19:55 +00:00
Lasse Öörni
6fbf8d0404 Increased occlusion buffer Z-accuracy.
Use similar calculations for occluders and occludees to minimize errors.
Decreased default minimum occluder screen size to allow better occluder fusion of small occluders.
2012-03-18 19:33:23 +00:00
Lasse Öörni
fec5d379fd Re-added camera frustum & projection matrix caching. 2012-03-18 14:38:27 +00:00
Lasse Öörni
dd28073cfc Optimized shadowed point light shadowcaster queries.
Removed redundant camera frustum recalculations from shadow processing.
2012-03-17 23:12:06 +00:00
Lasse Öörni
5a6dfe6c19 Added missing spaces. 2012-03-11 14:15:40 +00:00
Lasse Öörni
72794673d1 Fixed crash if a window message was received before the Input subsystem had initialized itself.
Fixed profiler output indent off by one.
Updated script API.
2012-03-11 13:49:01 +00:00
Lasse Öörni
9ab2bf4c14 Added top-level profiling blocks for frame execution. Explicitly call Profiler::BeginFrame() and EndFrame() in Time subsystem to not depend on event subscription order. Profiler max. display depth in DebugHud can be specified. 2012-03-11 12:21:02 +00:00
Lasse Öörni
9b2e4e694a Fixed character encoding. 2012-03-09 15:35:45 +00:00
Lasse Öörni
ce4c4ae96f Do not use the "preferred resource path" mechanism when explicitly choosing a path via UI. 2012-03-09 13:43:17 +00:00
Lasse Öörni
c5f5be8ef0 Added beneficial AssImp processing flags. 2012-03-09 13:38:34 +00:00
Lasse Öörni
3735bd6916 Strip double quotes from arguments.
Fixed String::EndsWith().
Fixed crash in AssetImporter when instantiating an Octree component.
2012-03-03 23:52:40 +00:00
Lasse Öörni
e10da28c4b Reverted PrintLine() to use printf() to allow seeing the tools' intermediate output in the MSVC output window.
Make sure that minidump code is only compiled in on MSVC.
2012-03-03 13:05:25 +00:00
Lasse Öörni
acd6f5be5c Fixed PrintRaw() on Unix. 2012-03-01 22:35:25 +00:00
Lasse Öörni
89d3dc38e9 Fixed conflict with IOAPI.cpp Print() functions. 2012-03-01 21:51:51 +00:00
Lasse Öörni
3805401100 Fixed WString returning length one char too long.
Use WriteConsoleW on Windows for printing to the console.
Allow to exit NinjaSnowWar server by a console command.
2012-03-01 19:27:05 +00:00
Lasse Öörni
a542fae7b6 Centralized printing to the console. 2012-03-01 08:33:07 +00:00
Lasse Öörni
481468e2a0 Replaced further Win32 API calls with Unicode variants.
Win32 console input reading using Unicode.
2012-02-29 23:46:05 +00:00
Lasse Öörni
1efdb25d9d Use PeekMessageW() & DispatchMessageW() for consistency. 2012-02-29 23:11:21 +00:00
Lasse Öörni
0804e9d4ec Sort drawable's lights only if necessary (over the maximum light count.)
Handle lights that are converted from per-pixel to per-vertex correctly even if drawable has both opaque & transparent batches.
2012-02-29 14:24:38 +00:00
Lasse Öörni
cc51e1a40c Reverted code which was only needed when SetDepthStencil() committed the FBO changes. 2012-02-29 08:39:17 +00:00
Lasse Öörni
961f65b467 Flush changes to the current FBO first before cleaning up a rendersurface from other FBOs. 2012-02-28 23:04:36 +00:00
Lasse Öörni
9d15b80fc4 Audio::IsInterpolated() -> Audio::GetInterpolation().
Fixed comments in the audio library.
2012-02-28 22:58:25 +00:00
Lasse Öörni
26e2ebca26 Fixed enemy motion bugs in networked NinjaSnowWar.
Added possibility to disable physics interpolation. This is useful on a network server to ensure clients do not receive interpolated (and possibly non-physical) node transforms.
Changed default network update FPS to 30 (half of the default physics FPS.)
2012-02-28 21:03:42 +00:00
Lasse Öörni
cd00810139 Updated docs for upcoming release. 2012-02-28 18:51:31 +00:00
Lasse Öörni
9a5443ebc4 Store depth bits into Texture2D also in renderbuffer mode. 2012-02-28 18:50:52 +00:00
Lasse Öörni
7ed9a4815d More complete multi-FBO implementation. 2012-02-28 13:11:34 +00:00
Lasse Öörni
e42f16dfbe Set GL_NONE drawbuffer on the depth-only FBO. 2012-02-28 00:39:13 +00:00
Lasse Öörni
f83b968576 To reduce Linux / NVIDIA performance issues, use another FBO for shadow rendering. Commit FBO changes only at SetDepthStencil(). 2012-02-28 00:24:35 +00:00
Lasse Öörni
f78a0cab6d Set also the third texture coordinate wrap mode on OpenGL. 2012-02-27 21:15:31 +00:00
Lasse Öörni
6014f87a0f Added mention to only install libgl1-mesa-dev if OpenGL headers/libs do not already exist. 2012-02-27 08:09:11 +00:00
Lasse Öörni
bc8b45b061 Restored AngelScript typeid caching. 2012-02-26 21:54:05 +00:00
Lasse Öörni
281703c8e5 Use HashMap instead of Map in Font for improved performance. 2012-02-26 20:53:52 +00:00
Lasse Öörni
a7daef9b49 Reverted the busywait code because of unpredictable effect on slower machines. 2012-02-26 20:25:23 +00:00
Lasse Öörni
f4650362c0 Spinwait using a dummy calculation to get accurate frame limiting. 2012-02-26 18:39:55 +00:00
Lasse Öörni
911f9e4c5b Removed the "flush GPU" feature as it was causing erratic timing. The downside is increased input lag when vsync is on.
Increased NinjaSnowWar physics FPS to 100Hz for less likely snowball tunnelling.
Set the player yaw from mouse movement each frame also in singleplayer NinjaSnowWar.
When a physical Node's rotation only changes, do not force the rendering position automatically as the new physics position.
2012-02-26 16:00:52 +00:00