Commit Graph

540 Commits

Author SHA1 Message Date
Lasse Öörni
26fa24ed01 Re-added support for varying shadow intensity on OpenGL ES, as the calculation is not very complex. 2012-08-21 12:41:41 +00:00
Lasse Öörni
f0b6d55b28 Enclosed Urho3D classes inside Urho3D namespace to avoid clashes with external libraries. 2012-08-15 22:57:52 +00:00
Lasse Öörni
c64dfb114e Added back polygon fill mode. 2012-08-08 17:15:13 +00:00
Lasse Öörni
312ddc0242 Added repeat flag to delayed method calls.
Added possibility to remove delayed method calls selectively.
Documented delayed method calls.
2012-08-06 10:51:43 +00:00
Lasse Öörni
ea2f6e967a Added DelayedStart() script object method to work around missing child scene nodes during Start(). 2012-08-03 21:06:40 +00:00
Lasse Öörni
3d4eb6bdc8 Event refactoring. Removed the concept of targeted events and a Node forwarding a targeted event to all components, which was used only for physics node collision events. Now the node will instead send the collision event, and it can be explicitly subscribed to.
Remote node events specify a sender node instead of a receiver node. The sender connection is always available as an event parameter.
2012-08-03 09:03:02 +00:00
Lasse Öörni
3b67320a49 Added animation trigger event system.
Added ReplaceExtension() utility function to simplify filename manipulation code.
Cleaned up NinjaSnowWar script code. Added particle effect on ninja's footsteps and landing from jump.
2012-08-02 21:19:57 +00:00
Lasse Öörni
e7935ffaf6 Documented the new attribute flags. 2012-07-30 13:37:51 +00:00
Lasse Öörni
9557eb64b4 Added note about moving triangle mesh collision shapes. 2012-07-30 12:59:21 +00:00
Lasse Öörni
481fbfa220 Added visible OS mouse cursor mode. When used with an external window, this is the only supported mode, as SDL does not control the cursor visibility of an external window. 2012-07-28 10:38:04 +00:00
Lasse Öörni
170ee77019 To avoid confusion when to use what, and as the performance is usually better, use only HashMap & HashSet instead of Map & Set.
Optimized memory use of HashMap/Set to 16 bytes so that it can be stored inside Variant.
2012-07-26 22:22:59 +00:00
Lasse Öörni
073347c950 AABB-test physics geometry before adding it to the debug renderer.
Never debug draw heightfields, as it hugely slows down execution.
2012-07-22 11:23:00 +00:00
Lasse Öörni
478a5af9d1 Allow defining depth bias for materials.
Center decal frustum on the decal world position.
Use material depth bias for decals instead of applying the bias to decal geometry.
2012-07-19 09:34:11 +00:00
Lasse Öörni
42b9cbc158 Cleaned up terrain code.
Updated script API documentation.
2012-07-18 23:19:52 +00:00
Lasse Öörni
83487ac88f Further ShaderParser optimization. 2012-07-14 11:58:25 +00:00
Lasse Öörni
d18baaff87 Reverted back to 4 sample shadow mapping on OpenGL ES, but limited directional light cascades to 2. 2012-07-07 13:43:40 +00:00
Lasse Öörni
bb821f2a3c Reverted the split fade optimization. 2012-07-07 10:58:13 +00:00
Lasse Öörni
e8d549ef7e Shader refactoring. Renamed the lit object ubershader as LitSolid; it now handles also deferred rendering.
Reduced max. vertex light count to 4 to prevent excessive shader permutations.
2012-07-06 18:35:13 +00:00
Lasse Öörni
38fd976aa9 Fixed potential infinite loop when setting morphs.
Added script API function to query morph names.
Unified AssetImporter & OgreImporter command line options regarding animations.
2012-07-05 10:57:51 +00:00
Lasse Öörni
c9bdf9eb35 Added function to redetect joysticks. 2012-07-02 10:26:01 +00:00
Lasse Öörni
613e3e94f9 Allocate nested script execution contexts on demand. 2012-06-25 18:01:11 +00:00
Lasse Öörni
5507b006be Shader load/compile refactoring. Removed shader source code from the SourceAssets directory and moved to Bin/CoreData/Shaders.
Changed ShaderCompiler command line options.
Changed FileSystem::SystemRun() to use CreateProcess() and to hide the window of the spawned program.
Removed GLShaderProcessor.
2012-06-24 00:11:43 +00:00
Lasse Öörni
2b5e656d79 Documentation update. 2012-06-19 20:30:11 +00:00
Lasse Öörni
d7d599be7b Added loading of ETC1 compressed textures on mobile devices. These need to be stored inside .ktx files.
Removed unneeded texture.
2012-06-16 23:59:54 +00:00
Lasse Öörni
178b6e351e Added documentation on the application activation state and mobile devices. 2012-06-16 11:02:27 +00:00
Lasse Öörni
e1a1c974e5 Initial iOS support.
Do not use glPolygonOffset() constant bias due to its inconsistency. Instead offset the projection matrix as necessary.
Do not use multiple glUniform calls to set an array of transposed matrices, as it is not guaranteed to work. Instead transpose all matrices first, then set them in one call.
2012-06-09 22:05:14 +00:00
Lasse Öörni
5d55c0959d Re-added the alpha masking hint to give priority to fully opaque materials. 2012-06-03 23:30:58 +00:00
Lasse Öörni
5ed1f86b27 Added note about the stencil buffer on OpenGL ES 2. 2012-06-03 11:38:34 +00:00
Lasse Öörni
02738d055e Renamed Android package and added instructions on how to replace it with application-specific package name.
Updated documentation.
2012-06-03 11:35:26 +00:00
Lasse Öörni
3e7882093a Disabled all stencil operations on OpenGL ES for now, as the OES packed depth stencil isn't tested for or used yet.
Use fixed vertex attribute locations on OpenGL.
Always transpose OpenGL matrix uniforms manually.
Workaround failed draw call after drawing billboards on OpenGL ES by transforming billboards with an identity model matrix.
Ensure finger touch ID's are positive.
Improved touch controls in NinjaSnowWar.
2012-05-27 16:39:21 +00:00
Lasse Öörni
f3f724920c Removed unnecessary include from WorkQueue.
Documentation fixes.
2012-05-16 19:26:07 +00:00
Lasse Öörni
5001c19663 Documentation fixes & additions. 2012-05-09 22:29:25 +00:00
Lasse Öörni
d9f9505ae4 Fixed possibility of mistaken procedural event handling if attempted from a script object that does not belong to a ScriptInstance. 2012-05-09 07:21:04 +00:00
Lasse Öörni
0ca75a4d2d Updated documentation. 2012-05-07 19:46:00 +00:00
Lasse Öörni
4666520d0b Improved ragdoll stability in TestScene.
Create ragdolls when hit by the boxes (both TestScene & TestSceneOld.)
Fixed component ID clash when creating ragdolls in networked TestScene.
Constraints can specify rotation frame directly. Specifying the axis is still provided for convenience, but does not give exact control over the orientation.
Constraint adjusts static world position automatically when the own body position is edited.
Optimized away redundant Constraint recreation when deserializing attributes.
Added RemoveComponent by component type to Node.
Show also write-only properties in the generated scripting API documentation.
2012-05-07 19:44:43 +00:00
Lasse Öörni
9f331e56db Changed Constraint API to specify the other body position / axis explicitly, and to specify limits as Vector2.
Fixed bugs in assigning parented RigidBody transforms after simulation step.
Optimized Constraint SetPosition() / SetAxis() to not recreate the constraint.
2012-05-07 00:15:20 +00:00
Lasse Öörni
8cdc6f69d2 Properly clean up event handlers referring to a deleted object.
Added cone twist constraint.
Added angular motion limits to the slider constraint.
Improved batch group hashing.
2012-05-06 11:59:47 +00:00
Lasse Öörni
4335295b87 Added slider constraint. 2012-05-05 23:10:45 +00:00
Lasse Öörni
ef421ef32d Initial Bullet constraint implementation.
Changed DrawDebugGeometry() to be a virtual function in Component.
2012-05-01 19:26:29 +00:00
Lasse Öörni
91f6f87472 Explicitly mark changed nodes to avoid going through the whole scene in PrepareNetworkUpdate(). 2012-04-22 18:48:09 +00:00
Lasse Öörni
08ac95dbf7 Fixed continuous collision detection to work with the compound shape.
Added CCD radius & motion threshold attributes to RigidBody. 
Use CCD for NinjaSnowWar snowballs to prevent their tunneling through the ground.
2012-04-16 21:45:40 +00:00
Lasse Öörni
51c9160eae Removed CCD Radius parameter for now as continuous collision detection is not supported for all collision shapes.
Changed the way RigidBody attributes are applied to reduce unnecessary re-adding of the body to the simulation world during deserialization.
2012-04-15 16:47:33 +00:00
Lasse Öörni
9ead094d5a Removed the physics world maximum timestep, as it is already governed by the Engine's minimum FPS. 2012-04-15 13:19:42 +00:00
Lasse Öörni
32fa940130 Handle world transform update of parented RigidBodies correctly.
Updated physics documentation.
2012-04-15 11:42:02 +00:00
Lasse Öörni
8edf0240a1 Migration to Bullet physics underway. Most of physics functionality & examples broken for now. 2012-04-09 18:10:17 +00:00
Lasse Öörni
26e2ebca26 Fixed enemy motion bugs in networked NinjaSnowWar.
Added possibility to disable physics interpolation. This is useful on a network server to ensure clients do not receive interpolated (and possibly non-physical) node transforms.
Changed default network update FPS to 30 (half of the default physics FPS.)
2012-02-28 21:03:42 +00:00
Lasse Öörni
cd00810139 Updated docs for upcoming release. 2012-02-28 18:51:31 +00:00
Lasse Öörni
f83b968576 To reduce Linux / NVIDIA performance issues, use another FBO for shadow rendering. Commit FBO changes only at SetDepthStencil(). 2012-02-28 00:24:35 +00:00
Lasse Öörni
3afbeb83ea Added a documentation page on Unicode.
Restructured the quickstart-examples, and fixed the C++ quickstart code.
2012-02-26 11:35:03 +00:00
Lasse Öörni
a5681746e1 Added brief documentation on skeletal animation.
Added missing morphs attribute to AnimatedModel.
2012-01-01 17:09:14 +00:00
Lasse Öörni
5dbf2b81f9 Added error logging for resource hash collision.
Clear both color & depth at the same time for light prepass rendering.
2012-01-01 15:22:43 +00:00
Lasse Öörni
9e871c1987 Removed automatic viewport reset on setting rendertarget to eliminate redundant API calls. However Graphics::ResetRenderTargets() resets the viewport. 2011-12-31 15:05:08 +00:00
Lasse Öörni
d34a73bfb9 Added full deferred rendering in addition to light pre-pass.
Added missing vertex colored light pre-pass material shader permutation.
2011-12-31 14:20:29 +00:00
Lasse Öörni
ccbfe5babc Further documentation fixes. 2011-12-28 15:10:46 +00:00
Lasse Öörni
700b9c6a02 Post-process documentation fix. 2011-12-28 14:38:23 +00:00
Lasse Öörni
408d063cf5 Documentation edits. 2011-12-28 14:36:55 +00:00
Lasse Öörni
7075513957 Cleaned up bloom shader code.
Split SampleOffsets shader parameter to GBufferInvSize and ShadowMapInvSize parameters.
Set Offsets & InvSize parameters for user-defined rendertargets during postprocessing.
Fixed bug on some NVIDIA drivers caused by using tex2Dlod on the hardware depth buffer.
2011-12-28 13:17:21 +00:00
Lasse Öörni
a1c70a3476 Added bloom post-process effect.
Added global shader parameters to PostProcess.
Added possibility to specify texture units by number instead of name in materials and postprocesses.
2011-12-28 01:43:48 +00:00
Lasse Öörni
5aa1a38a98 Added documentation for post-processing. 2011-12-26 23:48:56 +00:00
Lasse Öörni
3a319a2231 Optimized parsing of numbers from strings. 2011-12-24 03:04:35 +00:00
Lasse Öörni
97f1fbd7e1 Added relative scale flag to ParticleEmitter XML description file format.
Fixed ParticleEmitter documentation.
2011-12-20 23:42:47 +00:00
Lasse Öörni
75096fe6f9 Refactored screen-size rendertarget allocation in preparation for postprocessing.
Removed the "size 0,0 follows window size" mechanism from Texture2D.
2011-12-20 22:24:09 +00:00
Lasse Öörni
35c21f06d7 Removed the fallback shadow code, as GPUs that actually need it are also too low-performance to render shadows acceptably. 2011-12-13 22:22:46 +00:00
Lasse Öörni
d892a120e7 Reverted the OpenGL viewport reset logic. 2011-12-10 15:57:48 +00:00
Lasse Öörni
8c14956ebe Documentation update. 2011-12-10 15:35:45 +00:00
Lasse Öörni
f564e2bc83 Documentation update. 2011-12-09 21:19:39 +00:00
Lasse Öörni
b9ffb1fc2d Documentation tweaks. 2011-12-06 22:07:32 +00:00
Lasse Öörni
c4e569879d Restored the optional lit base pass optimization, but with the limitation of no ambient gradient.
Removed unneeded GLSL shader permutations.
2011-12-06 21:36:03 +00:00
Lasse Öörni
31b2a692d5 Fixed multithreading documentation. 2011-12-06 14:57:07 +00:00
Lasse Öörni
8f882f8225 Rewrote the zone ambient color gradient system. Now zones only define one ambient color, but look for neighbor zones' ambient colors when gradient mode is enabled.
Fixed missing script bindings to the zone ambient gradient & camera override flags.
Added a default bounding box size for newly created zones.
Added documentation on zones.
2011-12-06 14:48:53 +00:00
Lasse Öörni
738a159c59 Small documentation tweaks. 2011-12-05 22:41:26 +00:00
Lasse Öörni
23f4ba9710 Added more detailed documentation on light pre-pass rendering. 2011-12-05 22:10:05 +00:00
Lasse Öörni
644c37a099 Mark light masks to G-buffer stencil for light culling.
Fixed OpenGL forward rendering.
Documentation fixes.
2011-12-03 17:51:18 +00:00
Lasse Öörni
f9bfd4948f Shader refactoring.
Removed ambient + lit pass combining for less shader permutations, and to prime the Z-buffer with a lightweight pass in case there is a large amount of overdraw.
Moved ambient light calculation to the ambient pass vertex shader.
Added render mode toggle to the editor settings.
Note: OpenGL rendering is currently broken.
2011-12-03 14:06:35 +00:00
Lasse Öörni
abf00cafa9 Merged pixel shader uniforms.
Script code cleanup.
Added LightTest script.
2011-11-29 23:15:34 +00:00
Lasse Öörni
b1ba025970 Fixed hyperthreading detection again.
Send frame update events in Engine::Update(), not in Timer::BeginFrame().
2011-11-27 13:40:40 +00:00
Lasse Öörni
1fbbf5f2cd Limit the amount of worker threads to half the available CPU cores. 2011-11-26 20:00:29 +00:00
Lasse Öörni
2f0d3caecd Migrated to AngelScript 2.22.0. 2011-11-10 00:05:05 +00:00
Lasse Öörni
8a52455faa Added shadow mask feature, which allows selective shadow casting by different lights.
Documented multithreading.
2011-11-07 20:11:20 +00:00
Lasse Öörni
6e51dffdeb Updated readme.
Allow to switch force SM2 / force fallback modes at runtime.
2011-10-23 18:18:47 +00:00
Lasse Öörni
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.
2011-10-22 18:49:15 +00:00
Lasse Öörni
63f23313d6 Sort also the postalpha pass back to front. 2011-10-18 06:36:07 +00:00
Lasse Öörni
7f7e8b970d Added subgeometry centers to the model format for proper sorting of transparent geometries. 2011-10-17 21:59:47 +00:00
Lasse Öörni
7be9585861 Fixed erroneous use of local axis movement when more than one node selected.
Split the extra (custom) rendering pass into prealpha and postalpha.
2011-10-17 20:59:13 +00:00
Lasse Öörni
a436badf8f More documentation updates. 2011-10-14 18:43:17 +00:00
Lasse Öörni
2e32aace3c Documentation update. 2011-10-14 18:20:32 +00:00
Lasse Öörni
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.
2011-10-07 21:30:02 +00:00
Lasse Öörni
2f74622427 Converted DebugGeometry to use a vertex buffer instead of using immediate rendering.
Removed immediate rendering.
2011-10-05 07:05:33 +00:00
Lasse Öörni
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. 2011-10-04 21:49:22 +00:00
Lasse Öörni
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.
2011-10-04 16:26:19 +00:00
Lasse Öörni
4e18121be0 Updated documentation. 2011-10-04 06:50:01 +00:00
Lasse Öörni
7f09ddcb14 Simplified shader register mapping code. 2011-10-02 14:12:30 +00:00
Lasse Öörni
7d96303e39 Finalized support for overlapping Direct3D9 shader parameters, or the same shader parameters using different registers in different shaders. 2011-10-02 11:17:45 +00:00
Lasse Öörni
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.
2011-10-01 09:28:27 +00:00
Lasse Öörni
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.
2011-09-29 22:53:16 +00:00
Lasse Öörni
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.
2011-09-26 21:56:31 +00:00
Lasse Öörni
f67165bcf3 Documentation fixes. 2011-09-10 20:06:37 +00:00
Lasse Öörni
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.
2011-09-10 19:28:59 +00:00
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
292ebed51f Added initial fallback mode (no MRT, no hardware shadows.) 2011-09-08 23:12:48 +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
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
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
84fb81684b Documentation update. 2011-08-19 10:53:36 +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
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
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
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
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
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
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
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
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
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
0d29d818ad Moved from SDL to GLFW & PortAudio. 2011-06-24 23:20:09 +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
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
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
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
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
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
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