Commit Graph

  • 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
  • 8f921642cd Returned to Blinn-Phong equation for more pleasing specular highlights. Lasse Öörni 2011-09-27 06:59:55 +0000
  • 80a6948b22 Large rendering architecture refactoring. Optimized shaders to do more work in the vertex shader. Deferred rendering removed, at least for now. Switched to RGB normal maps, with specular intensity in the alpha channel. Removed NormalMapTool. Optimization of light influence on objects by stencil masking. Split shadowed lights are now rendered in one pass. A virtual shadow depth cube texture is used for point lights. Refactored shadow map allocation. Allow to use lower resolution shadow maps than quarter size. Added the Polyhedron math object, used for improved shadow map focusing. Reversed the convention for the plane intercept parameter. Math-related code cleanup. Lasse Öörni 2011-09-26 21:56:31 +0000
  • 7e00d6aa1d Removed PortAudio from Direct3D9 build, as it is not used. Fixed check in setting the scissor rectangle. Lasse Öörni 2011-09-22 17:02:25 +0000
  • babd8050a1 Eliminated temporary vector allocation during instanced rendering. Lasse Öörni 2011-09-16 20:27:06 +0000
  • 18edecbb70 Added release history. Lasse Öörni 2011-09-11 08:02:10 +0000
  • 9160dbb0c9 Fixed shadow quality settings in the editor. Lasse Öörni 2011-09-11 07:30:08 +0000
  • f67165bcf3 Documentation fixes. Lasse Öörni 2011-09-10 20:06:37 +0000
  • fe495f6bcc Added deferred fallback mode, which renders the G-buffer in 2 passes. Made the OpenGL extensions mandatory to unify expected functionality with Direct3D9 mode. Lasse Öörni 2011-09-10 19:28:59 +0000
  • 1e086c84f6 For less confusing code, do not allocate a depth stencil into colorShadowMaps_ in fallback mode. Instead define a separate variable shadowDepthStencil_. Lasse Öörni 2011-09-09 21:10:39 +0000
  • cbad673d09 Show profiler by default in TestSceneOld. Lasse Öörni 2011-09-09 20:49:21 +0000
  • d6a3f89393 Added low-quality (1-sample) shadow filtering option. Refactored fallback shaders so that they are compiled as variations into the SM2 directory. Lasse Öörni 2011-09-09 20:41:56 +0000
  • 514ef8966d Fixed OpenGL path. Documentation update. Lasse Öörni 2011-09-09 07:51:13 +0000
  • a25592dfe9 Fixed uninitialized variable. Lasse Öörni 2011-09-08 23:24:13 +0000
  • 292ebed51f Added initial fallback mode (no MRT, no hardware shadows.) Lasse Öörni 2011-09-08 23:12:48 +0000
  • c65998f0e3 For a slight speed gain, do not draw a GBufferFill fullscreen quad when hardware depth is available, instead just clear the diffuse buffer. Lasse Öörni 2011-09-08 07:03:47 +0000
  • 1fd39c6922 Fixed TestSceneOld to randomize the scene similarly as in Urho3D 1.0. Comments cleanup. Lasse Öörni 2011-09-08 06:40:58 +0000
  • 91500591c3 Reverted the previous shader parameter query optimization. Instead, added possibility to rehash a hashmap/hashset manually to a specified bucket count. Lasse Öörni 2011-09-07 06:48:03 +0000
  • 1c06a3b463 Use HashMap instead of Map for the shader variations. Lasse Öörni 2011-09-06 21:28:32 +0000
  • 0e337f493d Optimized checking whether shader parameters need updating. Lasse Öörni 2011-09-06 20:44:06 +0000
  • e2e29ff790 Re-enabled AngelScript type caching. Eliminated constant reallocation of lighting related helper hashsets/hashmaps in View. Lasse Öörni 2011-09-06 19:11:29 +0000
  • b9d7839d94 OctreeQuery micro-optimizations. Lasse Öörni 2011-09-06 06:50:42 +0000
  • ad6243870b Updated to newest kNet & AngelScript. Fixed spot light shadow map focusing. Code cleanup. Lasse Öörni 2011-09-05 19:17:44 +0000
  • a5089929b6 Documentation update. Lasse Öörni 2011-09-05 07:02:03 +0000
  • fc3896fe02 Added configurable instancing group minimum size and maximum triangles per instanced object. Lasse Öörni 2011-09-05 06:39:28 +0000
  • 80aee649df Re-enabled lit base pass optimization, with more careful checks to ensure proper rendering order. Fixed temporal AA shader GLSL syntax for ATI GPUs. Code cleanup. Lasse Öörni 2011-09-04 14:30:42 +0000
  • 8f2005f7b8 Fixed temporal antialiasing shader when INTZ depth is not used. Lasse Öörni 2011-09-02 18:44:31 +0000
  • a4508509ee Documentation edits. Lasse Öörni 2011-09-01 10:42:31 +0000
  • 56be63eca6 Fixed shader code. Lasse Öörni 2011-09-01 07:21:40 +0000
  • a89cb22161 Replaced edge filtering with temporal antialiasing with ghosting prevention. Lasse Öörni 2011-09-01 07:19:32 +0000
  • 6b86e66f93 More pleasant formatting of shader variation not found -error. Lasse Öörni 2011-08-30 11:52:51 +0000
  • c590973745 Print one-time error if shader variation is not found. Lasse Öörni 2011-08-30 06:55:24 +0000
  • 275391a561 Fixed SplitPath() getting confused by ./ character sequence. Lasse Öörni 2011-08-29 22:20:56 +0000
  • fc3651ab51 Fixed CMakeLists.txt Lasse Öörni 2011-08-29 20:16:54 +0000
  • 3c0298dcf8 Updated documentation on G-buffer setup. Lasse Öörni 2011-08-29 20:00:26 +0000
  • 630edabb4b Fixed directional lights and fog in OpenGL orthographic mode. Lasse Öörni 2011-08-29 18:22:11 +0000
  • 40c8306691 Added triple buffering option. On OpenGL it is a no-op. Removed the pass HashMap from Technique. Now it is just a static array. Lasse Öörni 2011-08-29 17:45:48 +0000
  • e5ad79494b Re-enabled INTZ depth support in deferred mode. Lasse Öörni 2011-08-29 07:06:41 +0000
  • 5a64681f0b Optimize forward lighting when material has zero specular strength. Lasse Öörni 2011-08-29 01:17:14 +0000
  • da685e99de Ported optimizations and code cleanup from the prepass-branch. Lasse Öörni 2011-08-29 00:53:05 +0000
  • 9859b10b35 Fixed deferred orthographic mode OpenGL shaders. Lasse Öörni 2011-08-28 14:40:16 +0000
  • 7fe5961cde Fixed occlusion buffer precision issues close to the near clip plane. Lasse Öörni 2011-08-27 12:17:14 +0000
  • bd75b09b65 Optimized depth tests used in light volume rendering and stencil masking. Lasse Öörni 2011-08-26 06:25:55 +0000
  • 836ff51412 Fixed physics and script errors in TestSceneOld. Enabled maximum shader optimization. Lasse Öörni 2011-08-25 21:04:40 +0000
  • f0ecda9785 Fixed numerical stability in Quaternion matrix constructor. Fixed spotlight wrong size in deferred rendering. Removed "first light" optimization pass due to buggy interactions with alpha blending. Fixed morphWeights property naming on AnimatedModel. Fixed missing shader combinations. Ported the GraphicsTest example from Urho3D 1.0. Lasse Öörni 2011-08-24 03:52:41 +0000
  • b6e09d2655 Renamed FinishUpdate() to ApplyAttributes() to be more descriptive, and to not confuse with frame updates. Lasse Öörni 2011-08-23 06:43:18 +0000
  • 47eae408b5 Updated script API reference. Lasse Öörni 2011-08-22 22:25:32 +0000
  • 945375d0ee Added mass axis parameter to RigidBody so that the axis of cylinder and capsule shapes is not hardcoded. Fixed RigidBody mass not being properly set on the client. Re-enabled replication of snowball collisionshapes in NinjaSnowWar as the erroneous physics interactions caused by missing masses are no longer a problem. Lasse Öörni 2011-08-22 22:24:26 +0000
  • 3dc01e1a20 Fixed TestScene.as not saving the scene correctly if working directory was not Bin. Lasse Öörni 2011-08-22 21:52:38 +0000
  • 6f5f3c252b Specify diameter instead of radius for sphere, capsule and cylinder CollisionShapes so that switching between shape types is more intuitive. Capsule and cylinder shapes are now upright by default. Fixed geometry offset staying if it was first set, but then zeroed after assigning the rigid body. Fixed geometry offset not updating after the rigid body is assigned. Lasse Öörni 2011-08-22 21:35:23 +0000
  • 3f7fffbf49 Some renames. CollisionGroup -> CollisionLayer, Scene::GetNodeByID() -> GetNode(), Ray::Distance() -> HitDistance(). Moved all hit distance tests to Ray. Tundra scene physics import. Lasse Öörni 2011-08-22 20:06:27 +0000
  • 7b89315876 Case-insensitive filename sort in FileSelector. Lasse Öörni 2011-08-22 12:01:09 +0000
  • 534da86f8f Added node parenting support to Tundra scene import. Lasse Öörni 2011-08-22 11:52:15 +0000
  • 62fac23f11 Perform conversion to left-handed coordinate system when importing Tundra scenes. Lasse Öörni 2011-08-22 11:13:39 +0000
  • f0362f1758 Fixed endless loop in Tundra scene import. Lasse Öörni 2011-08-22 10:14:12 +0000
  • ba7e79e82d If no element is focused, send mouse wheel to the element under cursor. Lasse Öörni 2011-08-22 08:37:10 +0000
  • 57bcdb2479 For optimization, assume that the scene root node does not have a moving rigid body. Lasse Öörni 2011-08-22 07:13:42 +0000
  • ad57102acb Fixed root node identity assumption in GetWorldTargetTransform(). Lasse Öörni 2011-08-22 07:09:37 +0000
  • 0298cd3e00 Removed assumptions of root node's identity transform. Re-added the root node transform attributes so they can be edited, though this is not recommended. Fixed needless creation of almost similar collision meshes caused by floating point inaccuracy. Fixed bug where parenting a node back to the root node would not be replicated correctly on the network. Lasse Öörni 2011-08-22 07:05:19 +0000
  • d39446c592 Fixed menu item name. Added editor instructions. Lasse Öörni 2011-08-21 23:59:49 +0000
  • a133d549ac Fixed file selector button text. Lasse Öörni 2011-08-21 23:28:20 +0000
  • 61f7feb268 Added "run script" function to the editor. Update the scene hierarchy when a model resource is loaded, in case bone nodes are destroyed/recreated. Lasse Öörni 2011-08-21 23:16:27 +0000
  • 4fbd837058 Refactored user variables & other subindexed attributes handling in the editor. Now the proper editors are used. Added VariantVector struct support, used for editing billboards. Fixed billboard bounding box calculation. Removed the transform attributes from Scene, as currently moving the root node is not supported in rendering & physics. Lasse Öörni 2011-08-21 22:46:10 +0000
  • 906b528cc5 Adding and removing of node user variables in the editor. Lasse Öörni 2011-08-21 18:57:59 +0000
  • 6a22f5d7d7 Fixed crash if a RigidBody is parented to a node without a RigidBody. Fixed garbage being sent to the client if node variables change, but attributes do not. Optimized the network parent node attribute. Added warning prints if the parent is not found on the client. Lasse Öörni 2011-08-21 17:25:31 +0000
  • f23a78eec4 Fixed crash if physics world was destroyed before other physics components. Disallow to delete or create duplicates of scene-global components (Octree, PhysicsWorld, DebugRenderer) into the root node in the editor. Lasse Öörni 2011-08-21 16:09:40 +0000
  • 96855411c0 Fixed unnecessarily complicated UI element focusing/defocusing logic. Fixed slider bar size and positioning logic. Ensure ListView item visibility also when pressing TAB to cycle focus. Hide console if ESC pressed in the editor. Lasse Öörni 2011-08-21 15:23:25 +0000
  • cea5282fd4 Fixed draw distance attribute not working correctly. Always use set/get functions for animation LOD bias attribute. Lasse Öörni 2011-08-21 12:46:46 +0000
  • 10ad7a3dd2 Added phantom attribute to CollisionShape. Phantom shapes create collision events, but do not generate contact joints to the physics simulation. Fixed opening resources externally in the editor. Lasse Öörni 2011-08-21 12:39:28 +0000
  • 6dd8679214 Further attribute reorganization. Refactored CollisionShape shape setting functions, which now take default parameters. CollisionShape triangle meshes can now use the size attribute as well. Fixed CollisionShape model not changing when picked with the file selector. Added occluder triangles & instancing parameters to the editor settings dialog. Lasse Öörni 2011-08-21 11:42:11 +0000
  • 23d51b853e Pick resource functionality in editor. Editor script code cleanup. Added missing functions to the script API. Lasse Öörni 2011-08-21 10:06:52 +0000
  • bbad36cc63 Do not destroy old animation states if skeleton has stayed compatible. Reload also animations in editor (get them from inside the AnimationState variant vector attribute.) Adjust shadow map constant bias according to global shadow map resolution. Reduced shadow cascade fade range in TestScene & NinjaSnowWar. Lasse Öörni 2011-08-21 09:02:07 +0000
  • 3576a81993 Initial node/component attribute editing. Attributes reorganized for editing. Accessor attributes used more for verifying correct value ranges. More editor settings, including rendering quality. PhysicsWorld raycast returns CollisionShapes instead of Nodes. Fixed LineEdit cursor not showing when at text start. Script API fixes. Lasse Öörni 2011-08-21 08:15:21 +0000
  • 215fb04f72 Converted VAR_BUFFER file serialization attributes to VAR_VARIANTVECTOR to make them more readable and/or editable. Moved ResourceRef hash registration from Serializable to XMLElement. Clear delayed method calls when recreating the script object. Lasse Öörni 2011-08-20 18:42:03 +0000
  • d0ab5fb7d6 Disabled shader branching from lighting calculations as on some GPUs it has a dramatic negative performance impact. Added -noflush command line option to disable GPU command queue flushing before rendering. Lasse Öörni 2011-08-20 14:12:16 +0000
  • df6a86b573 Use placement new in Variant to avoid heap allocation for non-POD types. VariantMap changed back to Map<ShortStringHash, Variant> to allow fitting inside the VariantValue structure. Lasse Öörni 2011-08-20 11:27:57 +0000
  • 360ab16f9f Do not replicate the scene ID generator state through the network unnecessarily. Lasse Öörni 2011-08-20 09:46:08 +0000
  • 861091d375 Fixed performance problems caused by offscreen UI elements being queued for rendering unnecessarily. Fixed missing file extension filtering on Unix. Added String::StartsWith() & String::EndsWith() functions. Lasse Öörni 2011-08-19 22:08:53 +0000
  • 7083ed9c69 Removed debug print. Lasse Öörni 2011-08-19 18:21:02 +0000
  • d1125f7d35 Fixed wrong material assignment in AssetImporter when more than one submesh. Lasse Öörni 2011-08-19 18:11:21 +0000
  • 84fb81684b Documentation update. Lasse Öörni 2011-08-19 10:53:36 +0000
  • 942bf00ca4 Fixed animations not continuing after scene load. Removed redundant @'s from editor script code. Added scene update pause/unpause to editor. Lasse Öörni 2011-08-19 06:32:21 +0000
  • b7e5971bc1 Revert to AABB testing if AnimatedModel's bones have been destroyed. Lasse Öörni 2011-08-18 22:04:17 +0000
  • 5e2682d3e5 Cut/copy/paste in editor. Exposed Serializable::FinishUpdate() to script. Lasse Öörni 2011-08-18 21:52:59 +0000
  • 16911eab63 Added delete support to the editor. Fixed erroneous script API bindings. Lasse Öörni 2011-08-18 18:46:12 +0000
  • d94b865fce Reverted the change to not support fallback data mode in index & vertex buffers, as it broke AssetImporter. Add resource hashes from ResourceRef or ResourceRefList attributes to ResourceCache in Serializable::LoadXML(), so that resources created during runtime will load properly. Do not automatically assign the scene root node name when saving a scene in the editor. Add the DebugRenderer component to the saved scene in AssetImporter, as it is needed in editing. Lasse Öörni 2011-08-18 17:58:29 +0000
  • 9bebc4898e Switched to AngelScript 2.21.1 WIP. Fixed node reparenting removing extra items from the scene hierarchy window in the editor. Guard against cyclic parent-child assignments in Node & UIElement. Lasse Öörni 2011-08-18 15:25:51 +0000
  • f8761918a8 Initial node reparenting (drag and drop) in the editor. Let user code handle ListView item visibility toggling on doubleclick; do not handle it automatically. Lasse Öörni 2011-08-18 06:40:17 +0000
  • 5296a4e569 Fixed ItemSelected event. Script API fixes. Sorting of the available component types. Working component selection, and new node/new component creation in the editor. Lasse Öörni 2011-08-17 21:11:26 +0000
  • fc2567980e Added the same speed-optimization to ListView::ToggleChildItemsVisible(). Lasse Öörni 2011-08-17 08:47:05 +0000
  • 97eff87a74 Fixed scene hierarchy window update. Speed-optimized ListView::SetChildItemsVisible() & ListView::RemoveAllItems() by disabling layout update during processing. Lasse Öörni 2011-08-17 08:40:23 +0000
  • d6f774fc54 Fixed scene window update partially. Lasse Öörni 2011-08-17 07:05:21 +0000
  • b7797e95f2 Fixed odd crash in editor script after scene load. Fixed nearclip & farclip related rendering issues. Lasse Öörni 2011-08-16 22:03:07 +0000
  • 2863a640a8 Fixed inconsistent lineedit scrolling behaviour. Lineedit cursor is created as the text element's child for more straightforward code. Lasse Öörni 2011-08-16 08:32:39 +0000
  • f1bb8bd2ba Updated to latest kNet. Editor script fixes. Fixed loading resources from script. Fixed crashes when handling events from objects that subsequently get destroyed. Fixed not being able to load elements of type UIElement from xml layouts. Lasse Öörni 2011-08-15 20:56:53 +0000
  • 30660c705c Initial non-working editor code ported from Urho3D 1.0. Script API fixes. Lasse Öörni 2011-08-15 15:16:08 +0000
  • 387ac00631 Use the variable name uintColor throughout. Lasse Öörni 2011-08-14 17:44:05 +0000
  • 424f7a957f Enabled warnings in ShaderCompiler. Optimized physics debug geometry drawing. Branch only in expensive pixel shaders (shadowing or specular lighting.) Added more default colors to Color class. Lasse Öörni 2011-08-14 17:38:03 +0000
  • 409e463bd2 Fixed Linux build. Lasse Öörni 2011-08-14 14:41:18 +0000
  • 110c908ef5 Fixed OSX build. Lasse Öörni 2011-08-14 12:52:44 +0000