Commit graph

782 commits

Author SHA1 Message Date
Mario Liebisch
9ba5d31141
Avoid importing MSVC obj files
Currently Godot tries to import any file with the extension "obj" as a
Wavefront OBJ model in text format.

This will fail and potentially crash the editor, if the obj file is
actually binary, like a MSVC build artifact/object file.

While the COFF header at the start of the obj file is subject to change,
this change should cover all potential/typical target machines possible
right now.

This fixes #71656.
2023-01-19 09:49:28 +01:00
Hugo Locurcio
ebb6894652
Improve visibility of Actions button in Advanced import settings dialog 2023-01-17 22:27:06 +01:00
Rémi Verschelde
ee7beff3c4
Merge pull request #70630 from asmaloney/importer-crash-null-mesh-node
Fix crash in SceneImportSettings::_select when a mesh has a null mesh node
2023-01-17 15:00:01 +01:00
rsjtdrjgfuzkfg
0442a65656 obj: Avoid empty names and meshes
This commit updates the obj importer to properly name imported meshes and
permits it to skip meshes that do not contain geometry. This fixes at
least one crash and several warnings and avoids unnecessary meshes being
generated when importing obj files that do not contain geometry that is
not assigned to a named object (such as when exporting from Blender).
2023-01-16 20:55:59 +01:00
clayjohn
ccaebcd5e0 Avoid crashing when custom GLSL shaders are imported when using the gl_compatibility renderer 2023-01-13 12:53:19 -08:00
Rémi Verschelde
14cca21256
Merge pull request #71033 from scurest/obj-vertex-color
Add vertex color support to OBJ importer
2023-01-13 00:37:14 +01:00
Juan Linietsky
2b815df3c1 Use BitField<> in core type masks
* All core types masks are now correctly marked as bitfields.
* The enum hacks in MouseButtonMask and many other types are gone. This ensures that binders to other languages non C++ can actually implement type safe bitmasks.
* Most bitmask operations replaced by functions in BitField<>
* Key is still a problem because its enum and mask at the same time. While it kind of works in C++, this most likely can't be implemented safely in other languages and will have to be changed at some point. Mostly left as-is.
* Documentation and API dump updated to reflect bitfields in core types.
2023-01-08 22:17:40 +01:00
scurest
649857416d Mark OBJ vertex colors sRGB in materials (only if has vertex colors) 2023-01-07 17:07:31 -06:00
scurest
091fa5fb7f Add vertex color support to OBJ importer
Fixes #70982
2023-01-07 13:26:55 -06:00
Rémi Verschelde
d95794ec8a
One Copyright Update to rule them all
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.

It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).

We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).

Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
Andy Maloney
c3d84ce57f Fix crash in SceneImportSettings::_select when a mesh has a null mesh_node 2022-12-27 09:03:18 -05:00
Rémi Verschelde
0566afa041
Merge pull request #70360 from dustinsth/fix_import_dialog_text
Fix overlapping text in Advanced Import Settings action dialogs.
2022-12-21 18:29:17 +01:00
dustinsth
c734ae469e Fix overlapping text in Advanced Import Settings action dialogs. 2022-12-20 09:57:57 -08:00
Marcus Elg
52061691b5 Disable properties that don't have an effect in the advanced audio importer 2022-12-20 18:57:27 +01:00
Marcus Elg
7f88943483 Fix inconsistent audio import menu naming 2022-12-19 17:42:54 +01:00
bmolyneaux
7c1cb65978
Clear animation map when import settings is opened 2022-12-14 19:54:48 -08:00
bruvzg
ebc85eff98
Fix advanced font import dialog not saving outline sizes of pre-render configs correctly. 2022-12-12 22:29:14 +02:00
bruvzg
ecec415988
Use system fonts as fallback and improve system font handling.
Add support for font weight and stretch selection when using system fonts.
Add function to get system fallback font from a font name, style, text, and language code.
Implement system font support for Android.
Use system fonts as a last resort fallback.
2022-12-04 18:44:20 +02:00
Rémi Verschelde
09e1db2148
Merge pull request #68665 from TokageItLab/cut-unkeyed-gltf-anim
Add "Trimming" option to cut un-keyed timeline before first key in glTF animation
2022-11-29 16:51:56 +01:00
Silc Renew
db7473672f Add trimming option to cut un-keyed timeline before first key in gltf 2022-11-29 13:53:33 +09:00
Rémi Verschelde
794adbe996
Merge pull request #69178 from aaronfranke/mesh-shape
Use a more specific type for Mesh create_(convex|trimesh)_shape
2022-11-28 08:05:50 +01:00
Aaron Franke
93ab82536d
Use a more specific type for Mesh create_(convex|trimesh)_shape 2022-11-25 11:43:11 -06:00
Rémi Verschelde
5d20dccade
Add MAKE_RESOURCE_TYPE_HINT macro to simplify binding arrays of resources 2022-11-24 14:06:00 +01:00
Markus Sauermann
28af870750 Code simplifications found by cppcheck
They are based on:
- Boolean arithmetic simplifications
- setting variables that are not accessed
- constant variables
2022-11-21 08:43:36 +01:00
Silc Renew
ac1db40614 Improve BoneRenamer to avoid conflicting with original bone name 2022-11-16 16:36:33 +09:00
Markus Sauermann
3b14f0334c Remove redundant Variant-types initializations 2022-11-14 19:35:19 +01:00
alex-pahdo
f5d256b118
Add more info to WAV import errors
Print mismatched header contents and file size, which can provide more clues to users when debugging.
2022-11-14 15:09:48 +01:00
Rémi Verschelde
19f21e2434
Merge pull request #68470 from bruvzg/img_fnt_imp
[Image Font Importer] Hide unused font size, add image and character margins.
2022-11-14 11:12:10 +01:00
Rémi Verschelde
5b3a03bf5c
Merge pull request #68448 from bruvzg/font_imp_tr
[Font] Add an import option to pre-render all glyphs required for the translation.
2022-11-14 11:12:01 +01:00
trollodel
ba9e619b51 Use forward-declarations in EditorPlugin where possible 2022-11-11 20:25:51 +01:00
bruvzg
35528b800c
[Font] Add an import option to pre-render all glyphs required for the translation. 2022-11-10 10:43:15 +02:00
bruvzg
a8189a6831
[Image Font Importer] Hide unused font size, add image and character margins. 2022-11-10 08:42:14 +02:00
Rémi Verschelde
f475c91081
Fix -Wunused-but-set-variable warnings from Emscripten 3.1.20 2022-11-04 11:36:13 +01:00
Rémi Verschelde
af957bf58e
Merge pull request #68223 from Calinou/editor-font-prerendering-fix-add-icon
Fix missing Add icon in the editor font prerendering dialog
2022-11-04 10:48:55 +01:00
Hugo Locurcio
94ca971114
Fix missing Add icon in the editor font prerendering dialog
This also tweaks button writing style to match the rest of the editor.
2022-11-03 19:18:43 +01:00
Hugo Locurcio
a19e389f4f
Hide Antialiasing import option on DynamicFonts with MSDF enabled
Antialiasing cannot be adjusted on fonts rendered with MSDF.
Internally, Godot always uses grayscale antialiasing for those fonts.

This also tweaks property hints for consistency, and renames
uses of "sub-pixel" to the more commonly used "subpixel".
2022-11-03 18:40:44 +01:00
Micky
ebf86c96e9 Rename Image's get_rect to get_region
Also renames its parameter to from "rect" to "region".
2022-11-01 23:35:48 +01:00
Rémi Verschelde
5947f22be9
Merge pull request #67578 from KoBeWi/GEDITOR
Unify usage of GLOBAL/EDITOR_GET
2022-10-31 13:15:58 +01:00
Rémi Verschelde
93df2b0f6d
Merge pull request #67805 from TokageItLab/fix-postimport-anim-arg
Fix passed dictionary to `internal_process()` in importer plugin for animation
2022-10-31 10:49:47 +01:00
DeeJayLSP
0619bd44da ResourceImporterLayeredTexture: rename compress modes to match enum 2022-10-28 14:24:32 -03:00
Clay John
8a5e0b8caf
Merge pull request #67834 from Klowner/collada-closed-curves-16658
Handle closed splines in Collada importer
2022-10-27 09:48:21 -07:00
Mark Riedesel
8f7ab02bc6 Handle closed splines in Collada importer 2022-10-24 09:35:09 -05:00
Silc Renew
46a5b230fa Fix passed dict to internal_process() in importer plugin for animation 2022-10-24 00:23:37 +09:00
Aaron Franke
7f9a8c99c9
Clean up Basis from Euler code 2022-10-21 17:54:49 -05:00
kobewi
e48c5daddf Unify usage of GLOBAL/EDITOR_GET 2022-10-18 19:01:48 +02:00
kobewi
072f6feaba Make some Image methods static 2022-10-14 14:34:15 +02:00
Juan Velandia
8ad3f8f051 Add animation slices for individual animations
This improves the workflow for animations in a single timeline.
The users are no longer forced to slice one animation named "default".
Instead users can choose which animation(s) to break and how.

Changes:

- Remove slicing options from the animation player import menu
- Add such options to the animation import menu
- Rename clips to slices wherever was left
2022-10-10 18:39:49 -05:00
HolonProduction
e87c9fc48c Show svg import options in default settings.
Fixes: #63840

Importers can export options conditional based on the resource path.
If an empty path is passed (as by the editor settings) filtering should not be done.
2022-10-08 16:01:00 +02:00
bruvzg
0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4. 2022-10-07 11:32:33 +03:00
Rémi Verschelde
82b87d7a17 Remove unsupported NO_SAFE_CAST/-fno-rtti from Android build
Android was the last platform to still attempt to disable RTTI (for binary
size), but both the Android editor and now the ICU library used by templates
need RTTI.

There could still be the possibility to support this for non-ICU template
builds (i.e. without the TextServerAdvanced module), but since this isn't one
of the build configurations we test regularly it's pretty risky to keep this
option only for that specific use case. And our code is already littered with
`dynamic_cast`s which weren't guarded with `!defined(NO_SAFE_CAST)`.
2022-10-03 11:18:31 +02:00