65af224fa6Removed zero-length file. Disabled shader compilation warning related to vertex lights.
Lasse Öörni
2011-11-27 19:47:02 +0000
471d3ec5ffAdded libcpuid for improved CPU detection. Added separate functions for querying logical & physical CPU count.
Lasse Öörni
2011-11-27 17:45:03 +0000
b1ba025970Fixed hyperthreading detection again. Send frame update events in Engine::Update(), not in Timer::BeginFrame().
Lasse Öörni
2011-11-27 13:40:40 +0000
998333b4b5Fixed GCC build.
Lasse Öörni
2011-11-27 12:26:10 +0000
e8c8a33ea0Fixed hyperthreading detection code.
Lasse Öörni
2011-11-27 12:11:26 +0000
92128e4bc4Detect hyperthreading and halve amount of worker threads only if detected.
Lasse Öörni
2011-11-27 01:08:09 +0000
1fbbf5f2cdLimit the amount of worker threads to half the available CPU cores.
Lasse Öörni
2011-11-26 20:00:29 +0000
c5f6516aeeMigrated to AngelScript 2.22.1 WIP.
Lasse Öörni
2011-11-26 11:19:20 +0000
47f77d1d1cFixed GLSL shaders.
Lasse Öörni
2011-11-24 18:47:58 +0000
3cf25e801aDo not use "camera centered" coordinates for light calculations.
Lasse Öörni
2011-11-24 18:38:03 +0000
04a7049bdfSlight optimizations in light-related operations.
Lasse Öörni
2011-11-24 16:26:45 +0000
7cb8985e05Convert to vertex lights when pixel light count exceeded.
Lasse Öörni
2011-11-23 22:47:19 +0000
8b61a23cd0Updated to newest ODE from svn.
Lasse Öörni
2011-11-21 19:37:19 +0000
bc5dd97e4bAllow 6 vertex lights.
Lasse Öörni
2011-11-21 07:54:31 +0000
a51afb0631Initial vertex lighting support.
Lasse Öörni
2011-11-21 00:17:52 +0000
67a0650cdbFixed missing copy constructor specifiers in script classes.
Lasse Öörni
2011-11-19 13:42:53 +0000
a48c7ccdfbMigrated to new scriptarray add-on.
Lasse Öörni
2011-11-19 13:14:15 +0000
691b72d500Added missing volatile keyword.
Lasse Öörni
2011-11-18 08:34:56 +0000
59b855087cFixed typo.
Lasse Öörni
2011-11-18 00:32:03 +0000
f53f75f6f3Fixed raycast early-out logic.
Lasse Öörni
2011-11-18 00:31:21 +0000
5cf7e09324Added Octree raycast that returns only a single drawable result. Fixed conditions in raycast code.
Lasse Öörni
2011-11-18 00:16:01 +0000
929a37f782Fixed uninitialized shadow batch zone.
Lasse Öörni
2011-11-17 22:22:32 +0000
57070cafc3Limit to three worker threads for more consistent performance. Ensure the FPU is set up similarly on each thread to avoid for example small errors in shadow camera calculations.
Lasse Öörni
2011-11-17 21:31:40 +0000
75c33d8b5cChanged the global script property arguments to GetArguments() function, as it performs an expensive vector to array conversion on each call.
Lasse Öörni
2011-11-17 18:34:49 +0000
79c229b67eFor global per-frame light sorting, give priority to directional lights so that they will most likely be combined with the ambient pass.
Lasse Öörni
2011-11-16 23:26:02 +0000
4c3be1f600Added List::Resize(). Store light queues into a list instead of a vector for cleaner code. Fixed copy-pasting local nodes in editor not making the components local.
Lasse Öörni
2011-11-16 22:57:20 +0000
61b0277fddAdded kerning support to fonts.
Lasse Öörni
2011-11-16 20:56:43 +0000
cbac6a30a5Optimized large scene modify operations in the editor.
Lasse Öörni
2011-11-14 23:36:39 +0000
642cde63d5Cleaned up Unlit shader code.
Lasse Öörni
2011-11-13 22:14:30 +0000
b068022660Use function pointers directly for preparing AngelScript context. Use bilinear filtering also in non-hardware shadow map mode for consistency between Direct3D9 & OpenGL.
Lasse Öörni
2011-11-13 22:04:19 +0000
47ffc91908Reverted AngelScript fixes due to assert in debug mode and NinjaSnowWar not working.
Lasse Öörni
2011-11-13 21:45:19 +0000
f568ce93e6Applied AngelScript patch from SVN and removed AS_OLD workaround.
Lasse Öörni
2011-11-13 17:09:37 +0000
3313a7a66bUpdated script API.
Lasse Öörni
2011-11-12 21:53:41 +0000
1b08deec28Fixed editor gizmo movement in local axes mode. Added local Z-direction ambient color gradient support to Zone. Draw Zone debug geometry as an oriented bounding box. Shader code cleanup.
Lasse Öörni
2011-11-12 21:35:12 +0000
dabf92dcbdUse the AS_OLD define instead of script workaround for the VariantMap crash.
Lasse Öörni
2011-11-10 08:29:42 +0000
2f0d3caecdMigrated to AngelScript 2.22.0.
Lasse Öörni
2011-11-10 00:05:05 +0000
1ae6e878f7Added an initialization-time test to TestScene script for disabling unnecessary shadowcasters.
Lasse Öörni
2011-11-09 08:13:30 +0000
baefa6fb4eCorrected the constness of WorkQueue::IsCompleted().
Lasse Öörni
2011-11-07 23:11:28 +0000
8a52455faaAdded shadow mask feature, which allows selective shadow casting by different lights. Documented multithreading.
Lasse Öörni
2011-11-07 20:11:20 +0000
787f1d5de0Code cleanup.
Lasse Öörni
2011-11-07 07:51:27 +0000
0da41425b5Fixed debug mode assert. Do not build raycast work items if no worker threads.
Lasse Öörni
2011-11-04 19:55:18 +0000
d470af37cbAdded command line option to disable worker threads.
Lasse Öörni
2011-11-04 08:44:54 +0000
39bbcd1b81Reverted to the previous worker thread sleeping behaviour as on other systems no performance gain was observed.
Lasse Öörni
2011-11-03 23:17:01 +0000
f50422a04bRepositioned the sleep in the worker thread for improved performance in starting work.
Lasse Öörni
2011-11-03 13:35:03 +0000
8a57a3ee18Threaded ray query.
Lasse Öörni
2011-11-03 08:38:23 +0000
950e37beb1Refactored raycast query handling in preparation to threading it.
Lasse Öörni
2011-11-03 07:55:48 +0000
14678bfad0Fixed editor script.
Lasse Öörni
2011-11-02 19:43:15 +0000
6a502fad89Cleaned up WorkQueue code. Removed WorkerThread.cpp & .h.
Lasse Öörni
2011-11-02 19:19:10 +0000
b204b2031dRemoved directional light shadowcaster occlusion for potentially taking much CPU time for relatively little gain, and/or being inaccurate.
Lasse Öörni
2011-11-02 19:07:42 +0000
f3b5dae787Threaded occlusion check for the main view. Fixed worker thread work distribution in Octree & View.
Lasse Öörni
2011-11-02 18:17:51 +0000
db5fbec28fGet main view zones, occluders, lights and geometries using one octree query.
Lasse Öörni
2011-11-02 10:16:01 +0000
d958692fafFurther work item building optimizations.
Lasse Öörni
2011-11-02 00:47:30 +0000
714414a755Code cleanup and work item building optimization in Octree & View.
Lasse Öörni
2011-11-02 00:04:52 +0000
f2b5b45f59Added Pause() & Resume() functions to WorkQueue.
Lasse Öörni
2011-11-01 22:56:57 +0000
0bc0b668abFor some performance gain, use only a mutex to synchronize the work queue, instead of an event.
Lasse Öörni
2011-11-01 19:21:41 +0000
6b504a0b21Refactored occlusion buffer allocation to be thread-safe. Thread queries for directional shadowed lights as well.
Lasse Öörni
2011-11-01 18:16:15 +0000
4bdc1cf2c1Create worker threads in Engine. Refactored the WorkQueue implementation into a separate Signal class.
Lasse Öörni
2011-11-01 11:37:21 +0000
7df7b2eaacProfiling blocks cleanup. Threaded zone query. Reduced the amount of temporary vectors used in View.
Lasse Öörni
2011-11-01 08:48:41 +0000
cccb072a3dThreaded light queries.
Lasse Öörni
2011-10-31 19:26:15 +0000
80656971deRemoved SpinLock class.
Lasse Öörni
2011-10-31 17:26:07 +0000
d29885dd9fClamp max. amount of worker threads.
Lasse Öörni
2011-10-31 16:36:09 +0000
9e7295d666Threaded batch sorting.
Lasse Öörni
2011-10-31 08:18:09 +0000
aadc22f05aChanged WorkItem to a value type to make it easier to construct work queue tasks.
Lasse Öörni
2011-10-31 07:56:48 +0000
f843523ee8Removed the start/stop mechanism from WorkQueue.
Lasse Öörni
2011-10-31 07:22:32 +0000
8c11839139Optimized octree reinsertion of AnimatedModel by recalculating the bounding box during the threaded update.
Lasse Öörni
2011-10-31 00:53:46 +0000
313610c346Fixed GCC build. Log amount of created worker threads.
Lasse Öörni
2011-10-30 21:30:03 +0000
f9d04676f8Queue octree updates & reinsertions in a PODVector instead of a HashSet.
Lasse Öörni
2011-10-30 20:50:43 +0000
d976a8043bReverted TestSceneOld.as modifications.
Lasse Öörni
2011-10-30 19:24:15 +0000
721885ba4aDivide geometry updates explicitly into main thread, worker threads, and none.
Lasse Öörni
2011-10-30 19:22:26 +0000
c8089b1687Initial work queue & multithreading support.
Lasse Öörni
2011-10-30 18:08:39 +0000
7dad787a9dAdded SpinLock class.
Lasse Öörni
2011-10-29 19:27:06 +0000
62e5541039Removed the duplicate FrameInfo structure for shadow rendering as unnecessary.
Lasse Öörni
2011-10-29 12:32:05 +0000
353270e6c7UpdateDistance() / UpdateGeometry() refactoring. LOD levels are calculated in UpdateDistance(), while UpdateGeometry() is strictly used for preparing GPU resources, and is called after culling and preparing batches. Fixed possible bug in FindZone().
Lasse Öörni
2011-10-29 12:18:47 +0000
668da79dc4Added SM3 requirement to instancing shaders.
Lasse Öörni
2011-10-27 20:35:44 +0000
41f5aeae88Reduce shader permutations by requiring diffuse map for normal & specular mapping.
Lasse Öörni
2011-10-27 20:08:25 +0000
163688c577Removed unnecessary GLSL shader variations.
Lasse Öörni
2011-10-27 19:57:37 +0000
0be37e8495Shader refactoring. Forward shader split to Ambient, BlinnPhong, Unlit & Volumetric. Added support for multiple variation groups to ShaderCompiler & GLShaderProcessor.
Lasse Öörni
2011-10-27 19:51:14 +0000
960b8de398Folded GetShadowPos() back into the lighting shader code as the function contains light-specific #ifdefs.
Lasse Öörni
2011-10-27 07:56:33 +0000
8fb7ee1a69Fixed GLSL code.
Lasse Öörni
2011-10-27 07:00:39 +0000
bef427937cLighting shader code cleanup. Automatically set black fog color for additive blending, so that shaders do not necessarily have to take it into account themselves.
Lasse Öörni
2011-10-27 06:57:47 +0000
75d74ea3f1Removed unnecessary #ifdef from varyings.
Lasse Öörni
2011-10-26 22:24:13 +0000
ce811badc3Removed unnecessary shader permutations.
Lasse Öörni
2011-10-26 22:20:46 +0000
dd9597a5aeRemoved unnecessary #ifdef.
Lasse Öörni
2011-10-26 21:27:11 +0000
0a6538f069Further shader cleanup.
Lasse Öörni
2011-10-26 21:15:12 +0000
d0cdfd6f1eShader code cleanup.
Lasse Öörni
2011-10-26 20:27:39 +0000
d5c42e8c2cAdded Node::LookAt(). Added Quaternion::FromAxes().
Lasse Öörni
2011-10-25 22:04:11 +0000
7e4bc727b4Cleaned up Batch & instancing code. BatchGroup inherits from Batch to reduce unnecessary copying of values.
Lasse Öörni
2011-10-25 20:08:34 +0000
b60a806058Updated changelog in the docs as well.
Lasse Öörni
2011-10-23 21:14:46 +0000
530a6f02efRemoved CoreData/Models directory.
Lasse Öörni
2011-10-23 20:40:07 +0000
f4afb2e092Moved the manipulator gizmo to Data directory for consistency.
Lasse Öörni
2011-10-23 20:36:08 +0000
80130159acCleaned up graphics features change handling.
Lasse Öörni
2011-10-23 20:01:49 +0000
6e51dffdebUpdated readme. Allow to switch force SM2 / force fallback modes at runtime.
Lasse Öörni
2011-10-23 18:18:47 +0000
35e58c42f9Added select/deselect all in the editor.
Lasse Öörni
2011-10-23 16:28:28 +0000
58eb27c25cFurther fix for not rendering unnecessary shadow casters.
Lasse Öörni
2011-10-23 14:53:11 +0000
d1ca0fd6ccDo not render unnecessary directional light shadow map splits.
Lasse Öörni
2011-10-23 14:18:16 +0000
9c7908ca82Do not show unused rendering passes in profiling.
Lasse Öörni
2011-10-23 12:31:41 +0000
9d077e78a8Code cleanup. Fixed lit base pass optimization working only for the first subgeometry of an object. Calculate per-subgeometry distances in UpdateDistance() for StaticModel & AnimatedModel.
Lasse Öörni
2011-10-23 12:17:57 +0000
5f65f9a530Dirty the zone if its priority changes.
Lasse Öörni
2011-10-22 20:02:20 +0000