godot/scene/resources
Omar El Sheikh d274284069 Octahedral Normal/Tangent Compression
Implement Octahedral Compression for normal/tangent vectors
*Oct32 for uncompressed vectors
*Oct16 for compressed vectors

Reduces vertex size for each attribute by
*Uncompressed: 12 bytes, vec4<float32> -> vec2<unorm16>
*Compressed: 2 bytes, vec4<unorm8> -> vec2<unorm8>

Binormal sign is encoded in the y coordinate of the encoded tangent

Added conversion functions to go from octahedral mapping to cartesian
for normal and tangent vectors

sprite_3d and soft_body meshes write to their vertex buffer memory
directly and need to convert their normals and tangents to the new oct
format before writing

Created a new mesh flag to specify whether a mesh is using octahedral
compression or not
Updated documentation to discuss new flag/defaults

Created shader flags to specify whether octahedral or cartesian vectors
are being used

Updated importers to use octahedral representation as the default format
for importing meshes

Updated ShaderGLES2 to support 64 bit version codes as we hit the limit
of the 32-bit integer that was previously used as a bitset to store
enabled/disabled flags
2021-07-30 10:29:09 -04:00
..
default_theme Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
animation.cpp Add animation reset track feature 2021-05-09 09:40:16 +02:00
animation.h Add animation reset track feature 2021-05-09 09:40:16 +02:00
audio_stream_sample.cpp Remove duplicate WARN_PRINTS macro 2021-06-18 12:57:59 +01:00
audio_stream_sample.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
bit_map.cpp BitMask::create Don't request more memory than needed when size is a multiply of 8 2021-05-18 11:58:09 +02:00
bit_map.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
box_shape.cpp Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
box_shape.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
capsule_shape_2d.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
capsule_shape_2d.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
capsule_shape.cpp Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
capsule_shape.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
circle_shape_2d.cpp Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
circle_shape_2d.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
concave_polygon_shape_2d.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
concave_polygon_shape_2d.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
concave_polygon_shape.cpp Fix crash on debug shapes update if CollisionObject is not in tree 2021-05-22 17:33:51 +02:00
concave_polygon_shape.h Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
convex_polygon_shape_2d.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
convex_polygon_shape_2d.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
convex_polygon_shape.cpp Replace QuickHull with Bullet's convex hull computer. 2021-05-22 08:16:43 +02:00
convex_polygon_shape.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
curve.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
curve.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
cylinder_shape.cpp Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
cylinder_shape.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
dynamic_font.cpp Use modules_enabled.gen.h to improve inter dependency checks 2021-07-14 23:36:38 +02:00
dynamic_font.h Use modules_enabled.gen.h to improve inter dependency checks 2021-07-14 23:36:38 +02:00
environment.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
environment.h Style: Remove redundant void argument lists 2021-05-04 16:40:33 +02:00
font.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
font.h Style: Replaces uses of 0/NULL by nullptr (C++11) 2021-05-04 16:30:23 +02:00
gradient.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
gradient.h Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
height_map_shape.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
height_map_shape.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
line_shape_2d.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
line_shape_2d.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
material.cpp Fix flipped binormal in SpatialMaterial triplanar mapping 2021-06-27 16:32:03 +02:00
material.h Force vertex shading in SpatialMaterial when used 2021-05-05 19:49:18 -07:00
mesh_data_tool.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
mesh_data_tool.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
mesh_library.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
mesh_library.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
mesh.cpp Octahedral Normal/Tangent Compression 2021-07-30 10:29:09 -04:00
mesh.h Octahedral Normal/Tangent Compression 2021-07-30 10:29:09 -04:00
multimesh.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
multimesh.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
packed_scene.cpp Remove side effects of scene save 2021-06-29 13:13:06 +02:00
packed_scene.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
particles_material.cpp Fix color properties of particle nodes/material 2021-07-15 10:25:35 +02:00
particles_material.h Added ring emitter for 3D particles 2021-05-09 13:18:05 +02:00
physics_material.cpp Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
physics_material.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
plane_shape.cpp Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
plane_shape.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
polygon_path_finder.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
polygon_path_finder.h Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
primitive_meshes.cpp Merge pull request #48763 from QbieShay/plane-offset 2021-07-12 10:32:19 +02:00
primitive_meshes.h added offset for plane mesh and quad mesh 2021-05-17 22:07:16 +02:00
ray_shape.cpp Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
ray_shape.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
rectangle_shape_2d.cpp Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
rectangle_shape_2d.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
resource_format_text.cpp Fix external resource cache regression 2021-06-16 16:07:04 -07:00
resource_format_text.h Fix external resource cache regression 2021-06-16 16:07:04 -07:00
SCsub SCons: Add explicit dependencies on thirdparty code in cloned env 2021-04-29 16:57:00 +02:00
segment_shape_2d.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
segment_shape_2d.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
shader.cpp [3.x] Allow reading shaders from .gdshader files 2021-07-19 23:34:23 -04:00
shader.h Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
shape_2d.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
shape_2d.h Added option in project settings to draw Shape2D outlines 2021-02-25 07:48:33 -07:00
shape.cpp Merge pull request #48316 from nekomatata/expose-physics-debug-shape-3.x 2021-05-05 15:17:48 +02:00
shape.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
skin.cpp Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
skin.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
sky.cpp Remove high radiance sizes from the editor due to issues on specific GPUs 2021-05-20 23:54:12 +02:00
sky.h CPU lightmapper environment energy fixes. 2021-04-22 16:26:04 +02:00
sphere_shape.cpp Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
sphere_shape.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
style_box.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
style_box.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
surface_tool.cpp Check input mesh is valid in SurfaceTool methods 2021-05-09 00:38:17 +02:00
surface_tool.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
text_file.cpp Make all file access 64-bit (uint64_t) 2021-05-16 17:52:31 +02:00
text_file.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
texture.cpp Tweak the GradientTexture property hint to follow CurveTexture 2021-07-13 10:20:02 +02:00
texture.h Implement lossless WebP encoding 2021-06-11 18:48:04 +02:00
theme.cpp Refactor Theme item management in the theme editor 2021-06-20 20:34:37 +03:00
theme.h Overhaul the theme editor and improve user experience 2021-06-21 01:37:54 +03:00
tile_set.cpp TileSet: Improve error message for invalid IDs 2021-05-09 16:56:52 +02:00
tile_set.h Style: Replaces uses of 0/NULL by nullptr (C++11) 2021-05-04 16:30:23 +02:00
video_stream.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
visual_shader_nodes.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
visual_shader_nodes.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00
visual_shader.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
visual_shader.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
world_2d.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
world_2d.h Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
world.cpp Style: Enforce braces around if blocks and loops 2021-05-05 15:02:01 +02:00
world.h Update copyright statements to 2021 2021-01-13 16:17:06 +01:00