9fad97bbccChanged gizmo update order so that it does not lag visually by one frame.
Lasse Öörni
2011-10-22 19:04:09 +0000
bdc29caebdReverted to AngelScript 2.21.1 because of crash with VariantMap. Find the zone at far clip plane and use it for the background color. Added zone mask for drawables, allowing to select which zones they can belong to. When zone moves or changes its bounding box, clear the cached zone from all drawables that were inside.
Lasse Öörni
2011-10-22 18:49:15 +0000
2ae33cd4fcFixed missing Precompiled.h include.
Lasse Öörni
2011-10-22 13:17:44 +0000
5d8ba5e295Added missing notification of modified code.
Lasse Öörni
2011-10-21 23:20:18 +0000
1c47bc6f20Migrated to AngelScript 2.22.0 WIP.
Lasse Öörni
2011-10-21 23:01:30 +0000
4f9f83eaabMade the move mode arrows smaller to match the scaling mode axes. Corrected documentation about fallback mode shadow filtering.
Lasse Öörni
2011-10-21 20:05:57 +0000
4ca9035ba5Reimplemented the MSVC random number generator to produce same random number output on all platforms.
Lasse Öörni
2011-10-21 19:12:20 +0000
2b57762508Added zone property for Drawables in the script API where applicable. Removed the viewmask attribute from Zone as it is not currently used.
Lasse Öörni
2011-10-21 07:13:44 +0000
2fc9d75b9aRewritten zone query handling.
Lasse Öörni
2011-10-20 22:24:39 +0000
00cca6b83cZone system refactoring. Now objects check which zone they're in, for per-object ambient light and fog settings.
Lasse Öörni
2011-10-20 18:22:51 +0000
15e8c14623Separated SetIntensitySortValue() into two separate functions. Use the drawable's bounding box in light sort value calculations, instead of just the bounding box center. Added Rect::Clip().
Lasse Öörni
2011-10-19 23:03:36 +0000
563ad416e9Further optimization and improvement of light intensity sorting.
Lasse Öörni
2011-10-19 16:35:06 +0000
6d5aa888aaTweaks to light intensity sorting.
Lasse Öörni
2011-10-19 08:17:03 +0000
eba23029c0Fixed maxLights not exposed to script. Added maxLights setting to TestSceneOld animated models as a test. Improved drawable light sorting.
Lasse Öörni
2011-10-19 07:27:36 +0000
00dbad68cbAdded different axis models for the rotation & scaling modes.
Lasse Öörni
2011-10-18 19:55:05 +0000
d82608a889Use OpenGL convention in vertex colors to avoid need for different vertex data depending on the API.
Lasse Öörni
2011-10-18 15:52:56 +0000
63f23313d6Sort also the postalpha pass back to front.
Lasse Öörni
2011-10-18 06:36:07 +0000
e7a4fdba41Removed unnecessary paranoia from writing the model's geometry centers.
Lasse Öörni
2011-10-17 22:13:21 +0000
7f7e8b970dAdded subgeometry centers to the model format for proper sorting of transparent geometries.
Lasse Öörni
2011-10-17 21:59:47 +0000
7be9585861Fixed erroneous use of local axis movement when more than one node selected. Split the extra (custom) rendering pass into prealpha and postalpha.
Lasse Öörni
2011-10-17 20:59:13 +0000
081fce3519Removed node rotation post-snapping, as it has potential to produce erratic behavior.
Lasse Öörni
2011-10-17 19:16:07 +0000
0e6b9508b9Gizmo improvements. Reduced node transform edit related code duplication in the editor. Exposed Plane class to script.
Lasse Öörni
2011-10-17 18:55:55 +0000
c4e3833b55Fixed scaling mode.
Lasse Öörni
2011-10-17 08:24:00 +0000
fd6a2ece9eRenamed AddUnculledDrawable() to AddManualDrawable(). Made it easier to select all gizmo axes.
Lasse Öörni
2011-10-17 07:03:36 +0000
d38742b198Added multiple node rotation around the gizmo and scaling.
Lasse Öörni
2011-10-17 06:52:44 +0000
4fe4cd6df0Update node attributes when editing with gizmo.
Lasse Öörni
2011-10-17 00:04:46 +0000
b11b0f8de1Initial gizmo-based node transform editing. Fixed material assignments in the axes model. Possibility to add unculled drawables to the octree.
Lasse Öörni
2011-10-16 23:59:53 +0000
4a34382798Fixed clicking on UI elements clearing the scene node selection in the editor.
Lasse Öörni
2011-10-16 17:52:27 +0000
a32f0f1c26Fixed rotation of the axes model. Added ray-frustum intersection test. Added accurate raycasts for point and spot lights. Directional light now never returns a raycast result, as it has an "infinite" bounding box. Added better debug visualization of a point light. Reorganization of the editor script code.
Lasse Öörni
2011-10-16 14:53:14 +0000
fc0c9aff06Added manipulator axes model.
Lasse Öörni
2011-10-15 21:48:21 +0000
bad42bcc5fTake node parenting into account when moving nodes in the editor. Added LocalToWorld() & WorldToLocal() functions to Node.
Lasse Öörni
2011-10-15 18:37:55 +0000
83dbac20fcFixed Camera's view override flags not exposed to script.
Lasse Öörni
2011-10-15 13:28:28 +0000
1d45da9789Fixed not being able to move a scene node when its component is selected in the hierarchy.
Lasse Öörni
2011-10-14 22:20:07 +0000
510125fe32Removed unused Component::HasComponent() function.
Lasse Öörni
2011-10-14 18:52:26 +0000
a436badf8fMore documentation updates.
Lasse Öörni
2011-10-14 18:43:17 +0000
2e32aace3cDocumentation update.
Lasse Öörni
2011-10-14 18:20:32 +0000
061e68d0d1Multi-copy & paste in the editor.
Lasse Öörni
2011-10-13 20:01:35 +0000
0bbf38fcf5Added script function to add a drawable to an octree manually. Added an event for AnimatedModel hierarchy creation to remove need for special case attribute edit handling.
Lasse Öörni
2011-10-13 17:26:08 +0000
2bf69034c2If only node(s) selected, show their first component(s) for editing if possible.
Lasse Öörni
2011-10-13 06:59:01 +0000
fd13f46170Renamed EditorCamera.as to EditorView.as. Split editor settings handling into a separate file.
Lasse Öörni
2011-10-12 23:04:44 +0000
e9f6407de2Multi-node movement by Ctrl + arrows.
Lasse Öörni
2011-10-12 22:59:47 +0000
4dd0c17651Editor multi-edit & multi-delete. Reversed node selection logic: select nodes by default, and components when Shift is held down. This is to avoid mistakenly deleting components and leaving nodes intact when intending to do a node multi-delete.
Lasse Öörni
2011-10-12 22:15:38 +0000
58843be1faInitial multiselection in the editor.
Lasse Öörni
2011-10-12 13:17:04 +0000
2d2acbda3dAdded Node::GetComponents() to the script API. Added qualifier mode QUAL_ANY for the menu accelerators, which accepts any accelerator combination, including none pressed. Removed setting "Select components instead of nodes" from the editor. Rather components are selected by default, and nodes are selected by holding Shift or Ctrl while clicking.
Lasse Öörni
2011-10-11 21:22:55 +0000
7c42215d98Fixed possible normal map Z reconstruction overflow. Fixed font size inconsistencies in the editor node window. Increased attribute name font size. Merged Light's cascade split attributes into one Vector4 attribute. Show local ID's in the editor in a more readable way.
Lasse Öörni
2011-10-10 19:10:27 +0000
3a55958c5bFixed camera reacquiring in TestSceneOld.
Lasse Öörni
2011-10-10 06:40:57 +0000
407ffc684bDo not close the scene hierarchy or node/component edit window with ESC.
Lasse Öörni
2011-10-09 17:43:59 +0000
d9524b79adAdded light & zone picking to editor.
Lasse Öörni
2011-10-09 17:17:09 +0000
31efab5d65Moved SetSortChildren() to UIElement public API and exposed it to script. Added layout skipping optimizations to UI::GetElementAt().
Lasse Öörni
2011-10-09 10:30:52 +0000
6c5d216c27Added local axis movement mode to the editor. Optimized UI child element queries and sorting.
Lasse Öörni
2011-10-08 22:24:21 +0000
1039a2703dRegister physics joints in similar manner as rigid bodies and collision shapes. Clean up PhysicsWorld destructor.
Lasse Öörni
2011-10-08 11:33:24 +0000
4c03639fedExplicitly register CollisionShapes to the physics world to avoid a recursive scene query when drawing physics debug geometry.
Lasse Öörni
2011-10-08 11:22:44 +0000
26618f0705Further optimization of physics trimesh debug geometry drawing.
Lasse Öörni
2011-10-08 08:45:54 +0000
ce5a45d10fFixed cloned geometries (for morphing) missing raw data. Removed unused member variables from Model.
Lasse Öörni
2011-10-08 08:22:05 +0000
16b8bddde4Fixed SetDataRange() in OGLVertexBuffer & OGLIndexBuffer. Code cleanup.
Lasse Öörni
2011-10-07 22:58:30 +0000
90596a064aUse a memory pool in OGLGraphics for discard lock buffers. Include file reordering.
Lasse Öörni
2011-10-07 22:36:06 +0000
a9c5641371Return to xGxR encoded normal maps and separate specular maps. Instead of double buffered VBOs, avoid glMapBuffer & glUnmapBuffer in "discard" mode and use a CPU-side buffer instead. Reduce UI & DebugRenderer vertex buffer size if grossly too large. Updated documentation. Suggest AMD's Compressonator utility for normal map processing.
Lasse Öörni
2011-10-07 21:30:02 +0000
1ec66fff16Fixed setting data on default pool textures.
Lasse Öörni
2011-10-06 20:12:15 +0000
5134b9a778Do not release shader resources from the cache when reloading them, as subsystems and material passes often hold references to shader variations instead, making the shaders appear unreferenced.
Lasse Öörni
2011-10-06 16:41:23 +0000
8448502918Added flushing to log output.
Lasse Öörni
2011-10-05 22:29:13 +0000
aec8534665Fixed resource dump display. Slightly more accurate memory use calculations for resources.
Lasse Öörni
2011-10-05 20:33:43 +0000
41b001f995Fixed Direct3D build.
Lasse Öörni
2011-10-05 19:03:34 +0000
0bf24ed126Fixed index double buffer resize. Removed unused GetHash() function from VertexBuffer. Removed unnecessary glBindBuffer() calls.
Lasse Öörni
2011-10-05 18:04:55 +0000
9b1efd6a8fUse double buffering to simulate LOCK_DISCARD behavior on OpenGL to avoid GPU stall.
Lasse Öörni
2011-10-05 13:51:40 +0000
2f74622427Converted DebugGeometry to use a vertex buffer instead of using immediate rendering. Removed immediate rendering.
Lasse Öörni
2011-10-05 07:05:33 +0000
3536cbc977Fixed setting the UI vertex buffer on OpenGL.
Lasse Öörni
2011-10-05 06:33:08 +0000
71d2e019e6Use a vertex buffer for UI rendering instead of several immediate mode draw operations. The vertex buffer is locked and updated once per frame, instead of several smaller locks.
Lasse Öörni
2011-10-04 21:49:22 +0000
9add70d3beAdded guard against duplicate component creation in NinjaSnowWar game objects, for possible future load/save feature.
Lasse Öörni
2011-10-04 19:49:14 +0000
593ce78eafRefactored temporary shadow camera creation.
Lasse Öörni
2011-10-04 19:41:46 +0000
37621a0c4bRemoved View friend class from Renderer. Made more Renderer functions public, as they can be usable also outside of View. As they are potentially dangerous, made the execution nesting level related functions private in Script, and added ScriptFile as a friend class.
Lasse Öörni
2011-10-04 19:24:07 +0000
7a45a5b33aMade internal event handling functions private in Object & Context. Refactored NinjaSnowWar game object classes to use Start() function for initialization.
Lasse Öörni
2011-10-04 18:48:42 +0000
653327dd15Added E_NETWORKUPDATESENT event. Added direct script access to the Controls object of Connection, instead of going through setter & getter. Improved NinjaSnowWar controls responsiveness during low FPS, by checking for action button presses separately, and accumulating button presses for networking.
Lasse Öörni
2011-10-04 16:26:19 +0000
4e18121be0Updated documentation.
Lasse Öörni
2011-10-04 06:50:01 +0000
74b995c29aUse 2 shadow map samples in fallback mode.
Lasse Öörni
2011-10-04 06:48:13 +0000
534546f78eFixed node ID reassigning logic.
Lasse Öörni
2011-10-03 17:27:14 +0000
00a86d3a3fFixed 4-sample shadow map offset on OpenGL.
Lasse Öörni
2011-10-03 16:13:45 +0000
0c22a1076bDisallow 1-sample shadow mode when hardware PCF not supported. Fixed OBB debug drawing.
Lasse Öörni
2011-10-03 15:16:58 +0000
1421058c9fEven more optimization of the shadow mapping shader. In 4 sample mode, pre-adjust the shadow map coordinates on the CPU.
Lasse Öörni
2011-10-03 08:21:26 +0000
d51452b6bdFurther optimization of the shadow mapping shader.
Lasse Öörni
2011-10-03 06:50:36 +0000
2ae6aa0b2bRestored missing comment.
Lasse Öörni
2011-10-02 23:11:19 +0000
c880535788Optimized shadow mapping instruction count & performance on non-NVIDIA GPUs.
Lasse Öörni
2011-10-02 21:51:20 +0000
41b67a245aUse more aggressive LOD on Jack.mesh.
Lasse Öörni
2011-10-02 14:58:03 +0000
7f09ddcb14Simplified shader register mapping code.
Lasse Öörni
2011-10-02 14:12:30 +0000
7d96303e39Finalized support for overlapping Direct3D9 shader parameters, or the same shader parameters using different registers in different shaders.
Lasse Öörni
2011-10-02 11:17:45 +0000
0e84c54306Added shader parameter register count information in the D3D shader file format. Added tracking of last assigned shader parameter per hardware register to D3D9Graphics. This allows reusing shader registers for different parameters in different shaders. Removed the ElapsedTime shader parameter, as wrapping it is problematic depending on the calculations it would be used for. Removed support for bool & int shader parameters from Graphics, as bool constants are not supported in OpenGL 2.0, and int parameters are not (at least currently) needed, and can lead to worse performance.
Lasse Öörni
2011-10-01 09:28:27 +0000
af890623a8Fixed batch state sorting. Tidied up lighting shader #ifdefs.
Lasse Öörni
2011-09-30 11:01:41 +0000
2f28445d94Removed the "directional light occluded shadowcaster" -optimization, as it may produce missing light at the far distance when shadow starts to fade.
Lasse Öörni
2011-09-30 07:13:20 +0000
589c0ee141Expanded the lit base pass optimization to cover also the first spot or point light affecting a drawable. Do not render light to stencil if camera is inside the light volume. Added optimization for directional light shadow casters that are fully occluded by another shadow caster: do not render the lit pass for them. Removed the alpha masking hint. Alpha test no longer gives the batch a lower priority.
Lasse Öörni
2011-09-29 22:53:16 +0000
399137b540Force occlusion buffer to an even pixel height to prevent slightly different aspect ratio from generating worse occlusion results.
Lasse Öörni
2011-09-29 19:05:25 +0000
a827f8c1fbFixed potential bug in handling the first light affecting a drawable.
Lasse Öörni
2011-09-29 06:54:03 +0000
b9dd734539Visualize also the node of the currently hovered drawable or collision shape.
Lasse Öörni
2011-09-28 22:33:06 +0000
f26ff1c2f6Sort batch groups front to back according to the distance of the first batch to reduce overdraw.
Lasse Öörni
2011-09-28 22:08:18 +0000
457aa72c37When adding or removing ListView items, update the selection only if something was selected in the first place.
Lasse Öörni
2011-09-28 20:26:50 +0000
baa3efacc3Fixed the Data directory getting removed in the editor, if a scene was first loaded from there, and then from elsewhere. Added scene node visualization to DebugRenderer.
Lasse Öörni
2011-09-28 20:14:48 +0000
fd06d3cf4aFixed component ID overwrite when copy-pasting scene nodes in the editor. Fixed light's bounding box not updating on light type, range, fov or aspect ratio change. Fixed possible light stencil volume clipping bug when approaching a point light. Fall back to non-specular or non-shadowed shaders if the desired light shader variation does not exist. Unified order of light vertex & pixel shader variations. Added support for enum accessor attributes. Added light stencil mask toggle in the editor.
Lasse Öörni
2011-09-28 19:19:28 +0000
cd2de4b25bShadow map UV offsets optimization.
Lasse Öörni
2011-09-28 06:49:33 +0000
5139e5322eUse alpha test instead of discard in shadow shaders for very slight speed gain.
Lasse Öörni
2011-09-27 21:21:27 +0000
9ba1e748a5Fixed unclamped specular calculations.
Lasse Öörni
2011-09-27 19:31:18 +0000