Lasse Öörni
|
e6fe0d6cf0
Removed convenience GetWorldTransform() from Component to make it explicit that an indirection to the parent node is being made.
|
13 anos atrás |
Lasse Öörni
|
132847926d
Do not unnecessarily calculate batch sort key or choose shaders for instanced batches.
|
13 anos atrás |
Lasse Öörni
|
ecdfec3e80
Small optimization to drawable collecting.
|
13 anos atrás |
Lasse Öörni
|
25fa4a2926
Optimized drawables' view space Z range calculation.
|
13 anos atrás |
Lasse Öörni
|
b4330ccc46
Optimized CheckVisibilityWork.
|
13 anos atrás |
Lasse Öörni
|
092c6e5bb5
Correct the minimum Z if no geometries at all.
|
13 anos atrás |
Lasse Öörni
|
987a168d9e
Optimized away unnecessary structures from View.
|
13 anos atrás |
Lasse Öörni
|
dbbf2f3310
Do not use octree query to find zone. Instead mark the drawable's zone inconclusive (temporary) if necessary.
|
13 anos atrás |
Lasse Öörni
|
3bec77f823
More descriptive profiler block names.
|
13 anos atrás |
Lasse Öörni
|
df4cd6214d
Ensure existence of default material by dynamically creating it if necessary.
|
13 anos atrás |
Lasse Öörni
|
19f604d105
Removed unnecessary if statement.
|
13 anos atrás |
Lasse Öörni
|
79a59c2e72
Moved the lit base pass check earlier for improved forward rendering performance with large object count.
|
13 anos atrás |
Lasse Öörni
|
50653416da
Reverted earlier shadow split refactoring due to unnecessary shadowcasters being rendered.
|
13 anos atrás |
Lasse Öörni
|
00522a44a7
Optimized GetBatch() in StaticModel & AnimatedModel by caching the current LOD geometries into a flat array.
|
13 anos atrás |
Lasse Öörni
|
504ffaa93d
Code cleanup.
|
13 anos atrás |
Lasse Öörni
|
91f6f87472
Explicitly mark changed nodes to avoid going through the whole scene in PrepareNetworkUpdate().
|
13 anos atrás |
Lasse Öörni
|
9635059778
Sort light and shadow batches as separate work items to optimize for large object count.
|
13 anos atrás |
Lasse Öörni
|
ee39c40667
Fixed crash when point light shadow query was incorrectly threaded.
|
13 anos atrás |
Lasse Öörni
|
0380c2d403
Moved a compare outside the OctreeQuery inner loop.
|
13 anos atrás |
Lasse Öörni
|
2bde036977
Moved drawable iteration inside the OctreeQuery virtual function.
|
13 anos atrás |
Lasse Öörni
|
0937a62115
Octree query micro-optimizations.
|
13 anos atrás |
Lasse Öörni
|
5d069ec2a1
Process the first shadow map split without going through the work queue.
|
13 anos atrás |
Lasse Öörni
|
8d30afc776
Process multiple shadow splits as threaded work items.
|
13 anos atrás |
Lasse Öörni
|
c710fb4ef6
Further optimization of network updates. Use a HashMap to store replicated and local nodes and components separately. Query depended on scene nodes only once per network frame, not per user. Cache the network attribute infos to Serializable.
|
13 anos atrás |
Lasse Öörni
|
139ef6d6e2
Removed the light to light queue map. Instead store the light queue pointer directly to the light.
|
13 anos atrás |
Lasse Öörni
|
97142c1db1
Eliminated n^2 algorithms from event subscribing and octree updates.
|
13 anos atrás |
Lasse Öörni
|
66f3fd4097
Added function to get API-independent projection matrix.
|
13 anos atrás |
Lasse Öörni
|
265d59dfb0
Use occlusion for coarse culling of octants before testing drawable occlusion in worker threads.
|
13 anos atrás |
Lasse Öörni
|
6c1536627e
Refactor of the OctreeQuery class. Use a separate subclass for shadowcaster-only queries.
|
13 anos atrás |
Lasse Öörni
|
fec5d379fd
Re-added camera frustum & projection matrix caching.
|
13 anos atrás |