Commit Graph

  • bdc29caebd Reverted 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
  • 2ae33cd4fc Fixed missing Precompiled.h include. Lasse Öörni 2011-10-22 13:17:44 +0000
  • 5d8ba5e295 Added missing notification of modified code. Lasse Öörni 2011-10-21 23:20:18 +0000
  • 1c47bc6f20 Migrated to AngelScript 2.22.0 WIP. Lasse Öörni 2011-10-21 23:01:30 +0000
  • 4f9f83eaab Made 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
  • 4ca9035ba5 Reimplemented the MSVC random number generator to produce same random number output on all platforms. Lasse Öörni 2011-10-21 19:12:20 +0000
  • 2b57762508 Added 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
  • 2fc9d75b9a Rewritten zone query handling. Lasse Öörni 2011-10-20 22:24:39 +0000
  • 00cca6b83c Zone 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
  • 15e8c14623 Separated 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
  • 563ad416e9 Further optimization and improvement of light intensity sorting. Lasse Öörni 2011-10-19 16:35:06 +0000
  • 6d5aa888aa Tweaks to light intensity sorting. Lasse Öörni 2011-10-19 08:17:03 +0000
  • eba23029c0 Fixed 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
  • 00dbad68cb Added different axis models for the rotation & scaling modes. Lasse Öörni 2011-10-18 19:55:05 +0000
  • d82608a889 Use 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
  • 63f23313d6 Sort also the postalpha pass back to front. Lasse Öörni 2011-10-18 06:36:07 +0000
  • e7a4fdba41 Removed unnecessary paranoia from writing the model's geometry centers. Lasse Öörni 2011-10-17 22:13:21 +0000
  • 7f7e8b970d Added subgeometry centers to the model format for proper sorting of transparent geometries. Lasse Öörni 2011-10-17 21:59:47 +0000
  • 7be9585861 Fixed 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
  • 081fce3519 Removed node rotation post-snapping, as it has potential to produce erratic behavior. Lasse Öörni 2011-10-17 19:16:07 +0000
  • 0e6b9508b9 Gizmo 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
  • c4e3833b55 Fixed scaling mode. Lasse Öörni 2011-10-17 08:24:00 +0000
  • fd6a2ece9e Renamed AddUnculledDrawable() to AddManualDrawable(). Made it easier to select all gizmo axes. Lasse Öörni 2011-10-17 07:03:36 +0000
  • d38742b198 Added multiple node rotation around the gizmo and scaling. Lasse Öörni 2011-10-17 06:52:44 +0000
  • 4fe4cd6df0 Update node attributes when editing with gizmo. Lasse Öörni 2011-10-17 00:04:46 +0000
  • b11b0f8de1 Initial 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
  • 4a34382798 Fixed clicking on UI elements clearing the scene node selection in the editor. Lasse Öörni 2011-10-16 17:52:27 +0000
  • a32f0f1c26 Fixed 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
  • fc0c9aff06 Added manipulator axes model. Lasse Öörni 2011-10-15 21:48:21 +0000
  • bad42bcc5f Take 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
  • 83dbac20fc Fixed Camera's view override flags not exposed to script. Lasse Öörni 2011-10-15 13:28:28 +0000
  • 1d45da9789 Fixed 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
  • 510125fe32 Removed unused Component::HasComponent() function. Lasse Öörni 2011-10-14 18:52:26 +0000
  • a436badf8f More documentation updates. Lasse Öörni 2011-10-14 18:43:17 +0000
  • 2e32aace3c Documentation update. Lasse Öörni 2011-10-14 18:20:32 +0000
  • dd131fbd66 Added missing file. Updated script API. Lasse Öörni 2011-10-14 17:43:54 +0000
  • 061e68d0d1 Multi-copy & paste in the editor. Lasse Öörni 2011-10-13 20:01:35 +0000
  • 0bbf38fcf5 Added 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
  • 2bf69034c2 If only node(s) selected, show their first component(s) for editing if possible. Lasse Öörni 2011-10-13 06:59:01 +0000
  • fd13f46170 Renamed EditorCamera.as to EditorView.as. Split editor settings handling into a separate file. Lasse Öörni 2011-10-12 23:04:44 +0000
  • e9f6407de2 Multi-node movement by Ctrl + arrows. Lasse Öörni 2011-10-12 22:59:47 +0000
  • 4dd0c17651 Editor 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
  • 58843be1fa Initial multiselection in the editor. Lasse Öörni 2011-10-12 13:17:04 +0000
  • 2d2acbda3d Added 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
  • 7c42215d98 Fixed 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
  • 3a55958c5b Fixed camera reacquiring in TestSceneOld. Lasse Öörni 2011-10-10 06:40:57 +0000
  • 407ffc684b Do not close the scene hierarchy or node/component edit window with ESC. Lasse Öörni 2011-10-09 17:43:59 +0000
  • d9524b79ad Added light & zone picking to editor. Lasse Öörni 2011-10-09 17:17:09 +0000
  • 31efab5d65 Moved 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
  • 6c5d216c27 Added local axis movement mode to the editor. Optimized UI child element queries and sorting. Lasse Öörni 2011-10-08 22:24:21 +0000
  • 1039a2703d Register physics joints in similar manner as rigid bodies and collision shapes. Clean up PhysicsWorld destructor. Lasse Öörni 2011-10-08 11:33:24 +0000
  • 4c03639fed Explicitly 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
  • 26618f0705 Further optimization of physics trimesh debug geometry drawing. Lasse Öörni 2011-10-08 08:45:54 +0000
  • ce5a45d10f Fixed cloned geometries (for morphing) missing raw data. Removed unused member variables from Model. Lasse Öörni 2011-10-08 08:22:05 +0000
  • 16b8bddde4 Fixed SetDataRange() in OGLVertexBuffer & OGLIndexBuffer. Code cleanup. Lasse Öörni 2011-10-07 22:58:30 +0000
  • 90596a064a Use a memory pool in OGLGraphics for discard lock buffers. Include file reordering. Lasse Öörni 2011-10-07 22:36:06 +0000
  • a9c5641371 Return 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
  • 1ec66fff16 Fixed setting data on default pool textures. Lasse Öörni 2011-10-06 20:12:15 +0000
  • 5134b9a778 Do 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
  • 8448502918 Added flushing to log output. Lasse Öörni 2011-10-05 22:29:13 +0000
  • aec8534665 Fixed resource dump display. Slightly more accurate memory use calculations for resources. Lasse Öörni 2011-10-05 20:33:43 +0000
  • 41b001f995 Fixed Direct3D build. Lasse Öörni 2011-10-05 19:03:34 +0000
  • 0bf24ed126 Fixed index double buffer resize. Removed unused GetHash() function from VertexBuffer. Removed unnecessary glBindBuffer() calls. Lasse Öörni 2011-10-05 18:04:55 +0000
  • 9b1efd6a8f Use double buffering to simulate LOCK_DISCARD behavior on OpenGL to avoid GPU stall. Lasse Öörni 2011-10-05 13:51:40 +0000
  • 2f74622427 Converted DebugGeometry to use a vertex buffer instead of using immediate rendering. Removed immediate rendering. Lasse Öörni 2011-10-05 07:05:33 +0000
  • 3536cbc977 Fixed setting the UI vertex buffer on OpenGL. Lasse Öörni 2011-10-05 06:33:08 +0000
  • 71d2e019e6 Use 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
  • 9add70d3be Added guard against duplicate component creation in NinjaSnowWar game objects, for possible future load/save feature. Lasse Öörni 2011-10-04 19:49:14 +0000
  • 593ce78eaf Refactored temporary shadow camera creation. Lasse Öörni 2011-10-04 19:41:46 +0000
  • 37621a0c4b Removed 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
  • 7a45a5b33a Made 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
  • 653327dd15 Added 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
  • 4e18121be0 Updated documentation. Lasse Öörni 2011-10-04 06:50:01 +0000
  • 74b995c29a Use 2 shadow map samples in fallback mode. Lasse Öörni 2011-10-04 06:48:13 +0000
  • 534546f78e Fixed node ID reassigning logic. Lasse Öörni 2011-10-03 17:27:14 +0000
  • 00a86d3a3f Fixed 4-sample shadow map offset on OpenGL. Lasse Öörni 2011-10-03 16:13:45 +0000
  • 0c22a1076b Disallow 1-sample shadow mode when hardware PCF not supported. Fixed OBB debug drawing. Lasse Öörni 2011-10-03 15:16:58 +0000
  • 1421058c9f Even 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
  • d51452b6bd Further optimization of the shadow mapping shader. Lasse Öörni 2011-10-03 06:50:36 +0000
  • 2ae6aa0b2b Restored missing comment. Lasse Öörni 2011-10-02 23:11:19 +0000
  • c880535788 Optimized shadow mapping instruction count & performance on non-NVIDIA GPUs. Lasse Öörni 2011-10-02 21:51:20 +0000
  • 41b67a245a Use more aggressive LOD on Jack.mesh. Lasse Öörni 2011-10-02 14:58:03 +0000
  • 7f09ddcb14 Simplified shader register mapping code. Lasse Öörni 2011-10-02 14:12:30 +0000
  • 7d96303e39 Finalized 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
  • 0e84c54306 Added 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
  • af890623a8 Fixed batch state sorting. Tidied up lighting shader #ifdefs. Lasse Öörni 2011-09-30 11:01:41 +0000
  • 2f28445d94 Removed 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
  • 589c0ee141 Expanded 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
  • 399137b540 Force 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
  • a827f8c1fb Fixed potential bug in handling the first light affecting a drawable. Lasse Öörni 2011-09-29 06:54:03 +0000
  • b9dd734539 Visualize also the node of the currently hovered drawable or collision shape. Lasse Öörni 2011-09-28 22:33:06 +0000
  • f26ff1c2f6 Sort 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
  • 457aa72c37 When 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
  • baa3efacc3 Fixed 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
  • fd06d3cf4a Fixed 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
  • cd2de4b25b Shadow map UV offsets optimization. Lasse Öörni 2011-09-28 06:49:33 +0000
  • 5139e5322e Use alpha test instead of discard in shadow shaders for very slight speed gain. Lasse Öörni 2011-09-27 21:21:27 +0000
  • 9ba1e748a5 Fixed unclamped specular calculations. Lasse Öörni 2011-09-27 19:31:18 +0000
  • f456812466 Fixed Light attribute names. Fixed GLFW mouse wheel input. Lasse Öörni 2011-09-27 19:18:36 +0000
  • b7c32f5887 Fixed unlit shaders possibly referring to nonexistent vertex normal, causing the D3D debug runtime to complain. Set z = w in skybox vertex shader, instead of rewriting depth in the pixel shader. Fixed GLSL shaders. Lasse Öörni 2011-09-27 18:29:06 +0000