Age | Commit message (Collapse) | Author |
|
This commit makes operator[] on Vector const and adds a write proxy to it. From
now on writes to Vectors need to happen through the .write proxy. So for
instance:
Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;
Failing to use the .write proxy will cause a compilation error.
In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.
_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
|
|
Remove duplicated codes
|
|
sync rasterizers with engine
|
|
|
|
- Soft Body Physics node
- Soft Body Rendering
- Soft body Editor
- Soft body importer
|
|
|
|
|
|
|
|
Note that gl_InstanceID is not supported in OpenGL ES 2.0,
so in the gles2 backend we assign it to 0.
Also clean up some duplicates/commented out code.
Fixes #20088.
|
|
-Project/Editor settings now show tooltips properly
-Settings thar require restart now will show a restart warning
-Video driver is now visible all the time, can be changed easily
-Added function to request current video driver
|
|
|
|
|
|
Fix #19507 Not emitted particles affects performance
|
|
|
|
Fix missing whitepoint for ACES tonemapping
|
|
|
|
fix clipping with v_flip fixes: #18600
|
|
|
|
|
|
|
|
|
|
|
|
Fix rotation of 2D lights
|
|
Add render mode to ensure correct normals when using non-uniform scaling
|
|
Prevent redraws when an inactive Particles2D node is present
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The rasterisers (both GLES3 and GLES2) were calculating their own frame delta time
This fix lets the rasterizers get the frame delta through the draw call
That way any regulations to the frame step from the main script will not cause particle systems to process at a different step than the rest of the Engine.
Remove unused rasterizer storage variable
frame.prev_tick variable were not used anywhere and has been removed
|
|
Fixed generating radiance texture when using viewport texture for sky
|
|
Fix a corner-case bug in _copy_texscreen in the gles3 renderer
|
|
|
|
|
|
|
|
Fixes #17698
|
|
Experimental support for windows with per-pixel transparency.
|
|
Added flag on SpatialMaterial to disable shadows
|
|
Fix binding of ViewportTexture to Sky
|
|
Added partial texture update to VisualServer
|
|
Add no-blend canvas item render_mode
|
|
|
|
|
|
|
|
|
|
Particles: fix corrupted scene when saved after convert
|
|
|
|
Fixes reported logically dead codes by Coverity
* image.cpp: Doesn't really need any modification. But to remove the bug
report then we have to move the MAX call away from the for loop
statement.
* rasterizer_gles3.cpp: Removes unnecessary elif condition since it is
checked earlier in the function
* collada.cpp: If stamement never reached due to macro ERR_CONTINUE does
the same.
* navigation_mesh.cpp: Variables should always be null - however, also
checked for the very same condition in their function call. Leaving this
for review (whether the function call is necessary or not)
* path_editor_plugin.cpp: If cancel is true, then it should restore the
edited value to the original provided.
http://docs.godotengine.org/en/3.0/classes/class_editorspatialgizmo.html#class-editorspatialgizmo-commit-handle
* spatial_editor_gizmos.cpp: the very condition of i >= 3 is
predetermined in the if case right before it. Thus case 1 is always '1'
and case 2 is always '-1'
* grid_map_editor.cpp: Same as above in spatial_editor_gizmos.cpp
* voxel_light_baker.cpp: Same as above in spatial_editor_gizmos.cpp
* visual_server.cpp: Same as above in spatial_editor_gizmos.cpp
* visual_script_expression.cpp: char '-' is already true in the switch
case mechanism. Thus it can never reach to default case.
* particles.cpp: Case 'PARAM_MAX' is unreachable due to index checking
right before the switch execution.
* shader_language.cpp: Invalid index is handled in switch default case.
`type < TYPE_FLOAT && type > TYPE_VEC4` -> `(type < TYPE_FLOAT || type > TYPE_VEC4`)
Fixes the "always false problem" in TODO comment.
|