Lasse Öörni
|
c0aa80ea3b
Check also for MRT rendering without deferred rendering for whether needs a substitute rendertarget with a viewport smaller than the screen.
|
11 år sedan |
Lasse Öörni
|
981b5bcac4
Use viewport sized intermediate rendertargets so that pixels outside the viewport never leak into post-processing. Added viewport multiplier mode to renderpath definition. Closes #265.
|
11 år sedan |
Lasse Öörni
|
56e0aad21d
Minor rendering code cleanup. Added Plane::Project().
|
11 år sedan |
Lasse Öörni
|
76d5ffdcf8
On OS X + Intel, use dummy color textures for shadow maps to work around a driver bug. Fixes #225.
|
11 år sedan |
Lasse Öörni
|
9066f6873d
Merge remote-tracking branch 'remotes/origin/transformspace'
|
11 år sedan |
Yao Wei Tjong 姚伟忠
|
a5e6ef597a
Fix wrong compiler definition prefix.
|
11 år sedan |
Lasse Öörni
|
c8fe21f06a
Revert "Fixes to sceneless renderpath on OpenGL." to fix crash on minimize on Android.
|
11 år sedan |
Yao Wei Tjong 姚伟忠
|
46285baf97
Refactor build scripts to group Urho3D specific build option.
|
11 år sedan |
Lasse Öörni
|
67d603d8e5
Node transform space refactoring. Translate(), Rotate() and LookAt() functions take a transform space (local, parent or world). Translate() has a behavior change: default space is local, as that is most often used in eg. camera movement, and is consistent with the default for rotations (the earlier fixedAxis = false was same as local space). The redundant TranslateRelative() function is removed. Add RotateAround() function, which allows rotating around a pivot in either local, parent or world space. Closes #295.
|
11 år sedan |
Lasse Öörni
|
42265071a3
Added a multiplier+addition for depth bias on OpenGL ES platforms. Increased default constant depth bias of lights.
|
11 år sedan |
Lasse Öörni
|
6be531d66f
Set frustum size shader parameter as Vector3.
|
11 år sedan |
Lasse Öörni
|
0d2879bbf0
Fix OpenGL build.
|
11 år sedan |
Lasse Öörni
|
ee9868e29e
Refactor setting global & camera shader parameters to functions. Used both by Batch & View. Ensure that same parameters are set in both scene and quad (postprocess) rendering. Note that quad rendering still does not use the camera's real projection matrix to ensure stability.
|
11 år sedan |
Lasse Öörni
|
2bedd953ce
Fixes to sceneless renderpath on OpenGL.
|
11 år sedan |
Lasse Öörni
|
6bfcc28010
Allow a pass to be marked as SM3-only, so that rendering limitations can be defined as data-driven instead of hardcoding in the engine. Moved specular disable for SM2 shadowed pointlight from code to shaders. Mention in the documentation that some materials may be too complex for SM2 and dynamic shadows.
|
11 år sedan |
Lasse Öörni
|
1418fb7e83
Changed the SM2.0 tradeoffs to allow 4-sample shadow mapping and to verify that shaders again work on GPU's without hardware shadow compare (eg. Radeon 9800.) Removed unnecessary shader code & simplified the LitSolid & light volume shaders.
|
11 år sedan |
Lasse Öörni
|
c3425334a3
Switch forward light calculations back to world space instead of tangent space to avoid light attenuation bugs when TBN matrix is not orthogonal. Shader code becomes simpler and more similar between forward and deferred, and number of vertex shader variations is reduced, but disadvantage is a more complex pixel shader which requires disabling expensive features on SM2.0 to avoid exceeding the arithmetic instruction limit. Fix cube mapped point light displaying the cube map upside down. Closes #276.
|
11 år sedan |
Lasse Öörni
|
6833f858dc
If a view's renderpath has no scene passes, allow rendering it also when no scene, camera & octree are provided. Closes #267.
|
11 år sedan |
Lasse Öörni
|
0246ae607f
Improve Camera documentation. To avoid potential confusion, disable auto aspect ratio mode from Camera if aspect ratio is set explicitly, or if the Vector2 form of Camera::SetOrthoSize() is used.
|
11 år sedan |
Lasse Öörni
|
882f4da62e
Added quad rendering missing elapsed time parameter fix from szamq. Also add delta time parameter to batch rendering. Closes #272.
|
11 år sedan |
Lasse Öörni
|
094006ef91
Added brightness attribute to Light. Added separate equality test with and without epsilon to Color, similar to Vector2/3/4.
|
11 år sedan |
Lasse Öörni
|
02e543ba5c
Support for per-pixel negative lights. Added BLEND_SUBTRACT & BLEND_SUBTRACTALPHA blend modes. Light code cleanup.
|
11 år sedan |
Lasse Öörni
|
0eb0a5d7a5
When a Zone moves or is removed from octree, clear zone from all drawables within the bounding box, not just from those that belong to the zone. This allows zone search in View to perform more optimally.
|
11 år sedan |
Lasse Öörni
|
2082c026c2
Handle zone search better to avoid erroneous lower-priority zone assignment. Added OnRemoveFromOctree() virtual function to Drawable. Zone code simplified. Remove zone reference from drawables within its bounding box when the zone is being destroyed.
|
11 år sedan |
Lasse Öörni
|
6fbda65a4f
Initial negative light support. Right now works only with per-vertex lights. Set negative light color to use. Per-pixel negative lights may be problematic, as they require different blend mode, will also darken any emissive materials, and will not work in light pre-pass mode (there is nothing to subtract from, as light buffer is initialized with black)
|
11 år sedan |
Lasse Öörni
|
1941c508b4
Removed erroneous comment from View. Do not treat it a fatal error in OgreImporter if index optimization can't be done.
|
11 år sedan |
Lasse Öörni
|
03043038a0
Visualize camera as a frustum. Do not draw debug geometry in the editor's camera preview.
|
11 år sedan |
Lasse Öörni
|
4bd2eb0356
Refactoring of Drawable::IsInView() functions and drawable view tracking.
|
11 år sedan |
Lasse Öörni
|
bfd968f9d7
Removed the base batch / non-base batch separation from BatchGroup. This is only needed for light queues, so rather have LightBatchQueue have separate queues for base & non-base.
|
11 år sedan |
Lasse Öörni
|
abc6fcd8b8
Shader precaching mechanism. Call Graphics::BeginDumpShaders() or use the engine command line parameter -ds <file> to create a shader dump file of the variations that are loaded during program run, and Graphics::PrecacheShaders() to load the dump file.
|
12 år sedan |