Commit Graph

2197 Commits

Author SHA1 Message Date
Lasse Öörni
d6a3f89393 Added low-quality (1-sample) shadow filtering option.
Refactored fallback shaders so that they are compiled as variations into the SM2 directory.
2011-09-09 20:41:56 +00:00
Lasse Öörni
514ef8966d Fixed OpenGL path.
Documentation update.
2011-09-09 07:51:13 +00:00
Lasse Öörni
292ebed51f Added initial fallback mode (no MRT, no hardware shadows.) 2011-09-08 23:12:48 +00:00
Lasse Öörni
ad6243870b Updated to newest kNet & AngelScript.
Fixed spot light shadow map focusing.
Code cleanup.
2011-09-05 19:17:44 +00:00
Lasse Öörni
a5089929b6 Documentation update. 2011-09-05 07:02:03 +00:00
Lasse Öörni
fc3896fe02 Added configurable instancing group minimum size and maximum triangles per instanced object. 2011-09-05 06:39:28 +00:00
Lasse Öörni
a4508509ee Documentation edits. 2011-09-01 10:42:31 +00:00
Lasse Öörni
a89cb22161 Replaced edge filtering with temporal antialiasing with ghosting prevention. 2011-09-01 07:19:32 +00:00
Lasse Öörni
3c0298dcf8 Updated documentation on G-buffer setup. 2011-08-29 20:00:26 +00:00
Lasse Öörni
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.
2011-08-29 17:45:48 +00:00
Lasse Öörni
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.
2011-08-24 03:52:41 +00:00
Lasse Öörni
b6e09d2655 Renamed FinishUpdate() to ApplyAttributes() to be more descriptive, and to not confuse with frame updates. 2011-08-23 06:43:18 +00:00
Lasse Öörni
47eae408b5 Updated script API reference. 2011-08-22 22:25:32 +00:00
Lasse Öörni
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.
2011-08-22 21:35:23 +00:00
Lasse Öörni
3f7fffbf49 Some renames. CollisionGroup -> CollisionLayer, Scene::GetNodeByID() -> GetNode(), Ray::Distance() -> HitDistance().
Moved all hit distance tests to Ray.
Tundra scene physics import.
2011-08-22 20:06:27 +00:00
Lasse Öörni
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.
2011-08-22 07:05:19 +00:00
Lasse Öörni
d39446c592 Fixed menu item name.
Added editor instructions.
2011-08-21 23:59:49 +00:00
Lasse Öörni
906b528cc5 Adding and removing of node user variables in the editor. 2011-08-21 18:57:59 +00:00
Lasse Öörni
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.
2011-08-21 12:39:28 +00:00
Lasse Öörni
23d51b853e Pick resource functionality in editor.
Editor script code cleanup.
Added missing functions to the script API.
2011-08-21 10:06:52 +00:00
Lasse Öörni
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.
2011-08-21 08:15:21 +00:00
Lasse Öörni
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.
2011-08-20 14:12:16 +00:00
Lasse Öörni
84fb81684b Documentation update. 2011-08-19 10:53:36 +00:00
Lasse Öörni
5e2682d3e5 Cut/copy/paste in editor.
Exposed Serializable::FinishUpdate() to script.
2011-08-18 21:52:59 +00:00
Lasse Öörni
16911eab63 Added delete support to the editor.
Fixed erroneous script API bindings.
2011-08-18 18:46:12 +00:00
Lasse Öörni
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.
2011-08-18 15:25:51 +00:00
Lasse Öörni
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.
2011-08-15 20:56:53 +00:00
Lasse Öörni
700520f320 Further comments and code cleanup. 2011-08-14 09:28:40 +00:00
Lasse Öörni
de67af8825 CoreData / Data reorganization.
Comments cleanup.
Removed the fallback-data mechanism from IndexBuffer and VertexBuffer as unnecessary.
2011-08-13 15:43:52 +00:00
Lasse Öörni
bf2b9ded9a Switched to Open Asset Import Library svn revision 1062. 2011-08-11 21:54:28 +00:00
Lasse Öörni
e22483e482 Added viewmask parameter to octree queries to avoid manual viewmask checking in View and to allow partial scene queries for logic.
Reordered ray query parameters; added default query parameters to script.
Renamed BeginRender & EndRender events to BeginRendering & EndRendering.
2011-08-09 15:48:32 +00:00
Lasse Öörni
dca6687166 In absence of packet loss, use dynamic send rate increase/decrease based on utilization.
Removed unused UDPMessageConnection code.
2011-08-01 00:03:06 +00:00
Lasse Öörni
57e8e910af Fixed missing alwaysUpdateOwner script property in NetworkPriority. 2011-07-31 17:22:27 +00:00
Lasse Öörni
b694ad047e Refactored interest management into the NetworkPriority component.
Fixed setter functions referring to the Set class in Doxygen comments.
2011-07-31 17:19:00 +00:00
Lasse Öörni
6d552a8193 Use fixed size 24 bit network object IDs for more deterministic bandwidth use.
ReadID() / WriteID() renamed to ReadFileID() / WriteFileID().
2011-07-30 20:57:28 +00:00
Lasse Öörni
bd76a14249 Fixed Unix build. Fixed counting of enemies in multiplayer NinjaSnowWar. Disabled snowball CollisionShape replication due to divergent simulation on the client. Removed previousControls from Connection as it is potentially unreliable if multiple controls packets arrive between updates. 2011-07-29 22:57:14 +00:00
Lasse Öörni
abe05c6a53 MinGW is no longer officially supported.
Documentation update.
2011-07-29 15:46:47 +00:00
Lasse Öörni
7f88b9977e Documentation update. 2011-07-29 12:44:45 +00:00
Lasse Öörni
7b254df85d Added simple distance-based interest management for networking. 2011-07-29 12:24:22 +00:00
Lasse Öörni
38fe1554ba Initial multiplayer NinjaSnowWar.
Various networking and script API bugfixes.
Fixed kNet profiling compile errors due to STL -> Container library conversion.
Fixed loading of textures failing in headless mode (just return success without doing anything.)
The E_CLIENTCONNECTED and E_CLIENTDISCONNECTED events now also come from the Connection in question, to allow using GetSender() for convenience, instead of looking up the connection from event data.
Added simple network traffic statistics logging to Connection.
2011-07-29 00:04:52 +00:00
Lasse Öörni
1c154ef17e Uncommented the package file download test from TestScene.as.
Fixed missing default arguments in the script API.
Fixed crash if a script file is unloaded while executing a script function.
Fixed Urho3D.exe not correcting the script file name to internal format (slashes instead of backslashes.)
Use black default background for the Direct3D9 window.
2011-07-28 11:41:56 +00:00
Lasse Öörni
43671aa66f Fixed up to one second delay in starting UDP datagram sends.
Refactored SendMessage API in Connection & Network, allowing the user to specify message priority.
Split Network library internal messages into 3 priority categories.
2011-07-28 09:01:33 +00:00
Lasse Öörni
1d3f797643 Removed unnecessary code from Connection. 2011-07-27 23:06:12 +00:00
Lasse Öörni
f70cc35815 Added package file download support to the network protocol.
Added commented out package download test code to TestScene.as.
Increased kNet's UDP send rate upper limit and aggressiveness in increasing the send rate.
Fixed being unable to do sparse seeks in files when writing.
Container library bugfixes.
2011-07-27 22:41:12 +00:00
Lasse Öörni
bad8e776de Added networking documentation. 2011-07-27 08:41:16 +00:00
Lasse Öörni
4d0e922e3f Added common script code for parsing network-related command line arguments. 2011-07-26 15:29:33 +00:00
Lasse Öörni
40d04b377b Added Compare function to String, which is optionally case-insensitive.
Added registration of allowed remote events.
2011-07-25 23:15:04 +00:00
Lasse Öörni
ffad4ba005 Fixed UI related crashes in headless mode.
Fixed loading of materials in headless mode (just return success while doing nothing.)
Fixed EventType parameter of SendRemoteEvent() / BroadcastRemoteEvent() in the script API, should be a string.
Added smoothed motion for nodes in network client scene.
Added enum CreateMode to CreateChild() & CreateComponent() which replaces the "local" bool parameter.
Added possibility for client to spawn physics boxes in networked TestScene.
2011-07-23 23:33:57 +00:00
Lasse Öörni
ee9b6cc0f8 Renamed the script PostLoad() to FinishUpdate().
Optimized the finalization of CollisionShape & Joint attributes: the ODE object is not needlessly recreated.
2011-07-21 23:16:28 +00:00
Lasse Öörni
4c3dd57980 Added more networking functionality, including remote events and client's controls update.
Added Append functions to String.
Removed networking mode from Scene, as it seems to be unnecessary.
2011-07-15 14:52:43 +00:00
Lasse Öörni
f28728b3e2 Send identity VariantMap on connecting to server.
Fixed possible bug in WriteString/ReadString if the string contains zeroes in the middle.
2011-07-14 13:11:39 +00:00
Lasse Öörni
71603ae52e Initial kNet-based networking implementation.
Renamed SharedPtr::Ptr() to RawPtr() to avoid conflicts with kNet's Ptr macro.
Added chat test program.
2011-07-13 23:32:57 +00:00
Lasse Öörni
af2b4311dc Function name unification and cleanup. ChildElement -> Child. RootElement -> Root. ScriptedChildren -> ChildrenWithScript. 2011-07-12 09:08:17 +00:00
Lasse Öörni
4d5b7fa05a Fixed newline character being returned from GetConsoleInput() on Unix.
Comments & documentation fixes.
2011-07-10 22:18:50 +00:00
Lasse Öörni
5a6c8f6d27 Removed global properties related to the script object's ScriptInstance. The ScriptInstance is available as the global property "self" instead.
Documentation update.
2011-07-05 08:46:45 +00:00
Lasse Öörni
180da947fa Added generated scripting API reference.
Modified Script::DumpAPI() to output in Doxygen format.
2011-07-05 08:25:04 +00:00
Lasse Öörni
40caea422e Migrated to AngelScript 2.21.0.
Removed manual invocation of AngelScript garbage collection.
2011-07-04 21:33:42 +00:00
Lasse Öörni
a7a94a7af2 Unified the texture get/set data API between Direct3D9 & OpenGL.
Refactored OpenGL texture data restore on context recreation: now data is explicitly stored then restored, instead of relying on resource reload.
2011-07-04 18:55:46 +00:00
Lasse Öörni
69a78da8df Switched to GLFW 3.0. 2011-06-30 21:03:59 +00:00
Lasse Öörni
16aeec5c32 Re-enabled sound latency adjustment.
Removed support for 8-bit sound output.
2011-06-25 10:50:58 +00:00
Lasse Öörni
0d29d818ad Moved from SDL to GLFW & PortAudio. 2011-06-24 23:20:09 +00:00
Lasse Öörni
270ba840b3 Documentation update. 2011-06-21 21:37:46 +00:00
Lasse Öörni
af01853960 Fixed erroneous char input suppression in the example scripts.
If only vsync changes on OpenGL, do not recreate the context.
Documentation update.
2011-06-20 22:17:29 +00:00
Lasse Öörni
d55d29612c Documentation update. 2011-06-19 23:13:11 +00:00
Lasse Öörni
6cdddcb0f6 Documentation updates. 2011-06-19 11:45:11 +00:00
Lasse Öörni
432f57b4b0 Use SDL 1.3 in OpenGL mode.
Removed system fonts directory feature because of being platform-specific.
Added the Anonymous Pro fixed width font.
2011-06-18 18:33:29 +00:00
Lasse Öörni
83bf3d1464 Switched to NVIDIA FXAA II based edge filter. 2011-06-15 13:33:16 +00:00
Lasse Öörni
87f9bbd846 Switched back to a edge filter for deferred antialiasing, as temporal antialiasing causes problems when both the camera and objects move.
Fixed infinite loop in HashMap copy.
2011-06-14 21:10:27 +00:00
Lasse Öörni
9c9643508c Use GL_DEPTH_COMPONENT24 instead of the packed depth stencil for OpenGL deferred rendering depth buffer, because the packed format seems to be slower.
Removed light prepass rendering support, as it has implementation difficulties under OpenGL and is often unsatisfactory in performance and specular lighting quality.
Removed the shader subdirectories.
Added option to specify whether single-channel images are to be interpreted as luminance or alpha, when loading into a texture.
2011-06-12 23:38:54 +00:00
Lasse Öörni
2669231c19 Added OpenGL related documentation. 2011-06-12 15:47:21 +00:00
Lasse Öörni
483413e472 Fixed the UI not rendering on OpenGL. 2011-06-10 23:04:36 +00:00
Lasse Öörni
c9c0610709 Added alternative OpenGL rendering path, not fully complete yet.
Fixed bugs in HashMap / HashSet.
2011-06-10 22:35:43 +00:00
Lasse Öörni
3ca3f84df9 Refactored shader loading. A binary format is now used instead of XML data.
PixelShader and VertexShader classes replaced with Shader and ShaderProgram.
2011-05-22 21:34:35 +00:00
Lasse Öörni
5f4b56103f Refactored ShaderCompiler to use D3DXCompileShader() instead of invoking fxc.exe. 2011-05-21 21:04:24 +00:00
Lasse Öörni
f60321b20f Use PODVector more extensively.
Moved Color class to Core library.
2011-05-21 12:15:04 +00:00
Lasse Öörni
27661073e7 Migrated to AngelScript 2.21.0 WIP. 2011-05-21 11:02:49 +00:00
Lasse Öörni
f3859c1ed7 Added documentation about containers.
Removed unnecessary StringUtils.h includes.
Changed GetStringListIndex() to use an empty string as a terminator, similarly to enum attributes.
2011-05-21 10:01:31 +00:00
Lasse Öörni
3abd7eee88 Reverted previous commit due to bugs and performance loss.
Removed the deprecated Physics subdirectory from ResourceCache directory heuristic.
Updated documentation.
2011-05-20 23:17:10 +00:00
Lasse Öörni
516b532a8f Refactored StringUtils as member functions of String & the classes to be converted. 2011-05-19 22:22:50 +00:00
Lasse Öörni
4c94e77887 Switched skip lists to red-black trees instead. 2011-05-18 21:55:57 +00:00
Lasse Öörni
b03111146e Added custom container & string classes. So far only used by AreaAllocator. 2011-05-15 22:45:43 +00:00
Lasse Öörni
62c9aa3d9c Added local node & component ID's in preparation to networking.
Split rendering documentation on several pages.
2011-05-10 21:09:03 +00:00
Lasse Öörni
cb68328d06 Updated to AngelScript 2.20.3 WIP.
Fixed crashes with script value types and GCC.
Implemented default arguments in script API.
2011-05-09 19:32:39 +00:00
Lasse Öörni
97d698e922 Code cleanup.
Minor documentation update.
2011-05-09 16:10:45 +00:00
Lasse Öörni
a71d4d7b0e Added mention of AnimationController to the documentation. 2011-05-08 18:24:16 +00:00
Lasse Öörni
37f696be12 Added rest of the reference documentation. 2011-05-08 17:24:13 +00:00
Lasse Öörni
020232744a Even more documentation. 2011-05-08 12:20:22 +00:00
Lasse Öörni
9a5cbb6016 More documentation.
Tweaked NinjaSnowWar difficulty.
Moved CreateObject from Object to Context.
Made EventHandler & AnimationState RefCounted to simplify memory management.
2011-05-07 22:44:40 +00:00
Lasse Öörni
3979d4bbb7 Updated ODE to svn rev 1806. 2011-05-07 17:54:47 +00:00
Lasse Öörni
6098409700 Upgraded to ENet 1.3.1.
Disabled buffer security checks for smaller executable size.
Removed deprecated ODE files.
2011-05-07 16:25:25 +00:00
Lasse Öörni
dbebed33c4 Fixed bug with setting only the minimum Text width when the text changes. 2011-05-04 21:51:28 +00:00
Lasse Öörni
ee9b6232c1 Added readme for the BlueHighway font. 2011-05-04 11:17:26 +00:00
Lasse Öörni
2a986cf8e3 Quickstart wording tweaks. 2011-05-04 07:14:49 +00:00
Lasse Öörni
a7a458b3a9 Script API registration cleanup: asMETHODPR changed to asMETHOD where possible.
Added Remove() to Component & Node & UIElement; before it was script-only.
Renamed FrameUpdate back to FrameInfo.
Documentation update.
2011-05-04 07:05:26 +00:00
Lasse Öörni
2a6c10874c Documentation structure and Getting Started-documentation.
Fixed deletion of object, if no shared pointer to it existed previously, and it sent an event.
Fixed threading issue with objects' static type names. Now they are defined inside OBJECTTYPESTATIC macro as well.
Fixed Engine crash when running without the script system.
2011-05-03 23:17:15 +00:00
Lasse Öörni
9d4deaf853 AnimationController functions refactoring.
Documentation update.
Moved Engine scripting initialization to a separate function. This will result in significantly smaller executable if skipped.
Fixed ErrorDialog() when called from script.
2011-05-03 14:47:02 +00:00
Lasse Öörni
5d033b7f62 Moved Urho3D.dox into the Docs subdirectory. 2011-05-03 06:59:06 +00:00